最近在做一个智能采购的项目,需要微调大语言模型,让它能更好地理解业务场景。试了几套方案,最后选了 LLaMA-Factory 加 LoRA 的组合,在 AutoDL 的 H20 上跑。LLaMA-Factory 的开箱即用体验确实不错,LoRA 对显存的要求也低得多,而采购对话场景下效果完全够用。
下面把从环境配置到模型部署的整个过程整理一下,供后续参考。
整体方案
| 环节 | 选型 | 备注 |
|---|---|---|
| 微调框架 | LLaMA-Factory 0.9.4 | 支持多种微调方式,文档齐全 |
| 基础模型 | GPT-OSS-20B | 200B 参数的 MoE 模型 |
| 微调方式 | LoRA | 低秩适配,显存友好 |
| 推理引擎 | vLLM | 高性能推理,支持 LoRA 动态加载 |
| 实验监控 | SwanLab | 可视化训练曲线,使用简单 |
| GPU 资源 | AutoDL H20 | 按量租用,性价比高 |
| 远程传文件 | WinSCP | Windows 下免费的图形化 SFTP 工具 |
环境配置
在 AutoDL 上租用实例时,镜像的选择比较关键。我的配置是这样:
- 基础镜像:PyTorch
- Ubuntu 22.04
- Python 3.12(LLaMA-Factory 要求 3.11 以上)
- CUDA 12.8
- PyTorch 2.8.0
注意,GPT-OSS 模型默认会尝试启用 Flash Attention 3,但该特性目前仅支持 Hopper 架构的 GPU(H100/H800 等)。H20 是 Ada 架构,需要强制降级到 Flash Attention 2,后面会提到怎么处理。
项目初始化
1. 克隆 LLaMA-Factory
cd /root/autodl-tmp
# 如果目录不存在,先创建
mkdir -p /root/autodl-tmp
# 下载 0.9.4 版本并解压
wget https://github.com/hiyouga/LLaMA-Factory/archive/refs/tags/v0.9.4.zip
unzip v0.9.4.zip
mv LlamaFactory-0.9.4 LLaMA-Factory
2. 安装依赖
cd /root/autodl-tmp/LLaMA-Factory
pip install -e '.[torch,metrics]' -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install evaluate scikit-learn -i https://pypi.tuna.tsinghua.edu.cn/simple
python -c "import llamafactory, torch; print('LLaMA-Factory 版本:', llamafactory.__version__)"
3. 下载基础模型
模型文件有 40G 左右,下载要花点时间,可以趁不需要 GPU 的时候提前下。
pip install modelscope -i https://pypi.tuna.tsinghua.edu.cn/simple
modelscope download --model openai-mirror/gpt-oss-20b \
--local_dir /root/autodl-tmp/models/gpt-oss-20b


