LLaMA-Factory-0.9.2.dev-DeepSeek-R1-Distill
基于LLaMA-Factory框架,支持在多张 NVIDIA RTX 4090 GPU 上进行模型微调。具体支持的模型及硬件需求如下:
模型名称 | 技术特点 | 硬件建议 |
---|---|---|
DeepSeek-R1-Distill-Qwen-7B | 使用 LoRA 技术 | 1~2 张 RTX 4090 |
DeepSeek-R1-Distill-Qwen-14B | 使用 LoRA 技术,结合 DeepSpeed ZeRO-3(ds3) | 4 张 RTX 4090 |
DeepSeek-R1-Distill-Qwen-32B | 使用 LoRA 技术,结合 DeepSpeed ZeRO-3 Offload(ds3-offload) | 4 张 RTX 4090 |
cd ~/LLaMA-Factory/
7B 模型微调
llamafactory-cli train examples/train_lora/deepseek-r1-distill-qwen-7b_lora_sft.yaml
14B 模型微调
llamafactory-cli train examples/train_lora/deepseek-r1-distill-qwen-14b_lora_sft_ds3.yaml
32B 模型微调
llamafactory-cli train examples/train_lora/deepseek-r1-distill-qwen-32b_lora_sft_ds3.yaml
这里以微调 DeepSeek-R1-Distill-Qwen-7B
模型为例,具体分析一下LLaMA-Factory
的运行日志,了解使用LLaMA-Factory
微调模型的过程。
OMP_NUM_THREADS
提示这个提示是建议设置环境变量OMP_NUM_THREADS=1
避免CPU资源争用,不过这个对训练影响较小,可以忽略设置。
torch.bfloat16
混合精度训练,兼顾精度与显存效率。cuda:0
cuda:1
运行模型微调后,一开始会解析并加载DeepSeek-R1-Distill-Qwen-7B
模型的配置文件,模型类型为Qwen2ForCausalLM
,用于因果语言建模(文本生成):
hidden_size=3584 # 隐藏层维度
num_hidden_layers=28 # 总层数
num_attention_heads=28 # 注意力头数
vocab_size=152064 # 词表大小
max_position_embeddings=131072 # 支持最大上下文长度128K
加载了identity.json
和alpaca_en_demo.json
两个数据集,共191个训练样本:
model.safetensors
加载预训练权重(安全格式的模型文件):target_modules=[
"k_proj", "down_proj", "o_proj",
"q_proj", "v_proj", "gate_proj", "up_proj"
]
最终模型保存在:
cd saves/DeepSeek-R1-Distill-Qwen-7B/lora/sft/
destroy_process_group()
警告是PyTorch分布式训练的正常退出提示,不影响训练结果:
模型配置文件说明
以 DeepSeek-R1-Distill-Qwen-7B
模型为例,以下是配置文件的调整建议:
本镜像由llamafactory.cn 提供支持。