Windows 10上仅用CPU微调大语言模型的完整指南:基于LLaMA-Factory 0.9.2
前言
随着大语言模型(LLM)的普及,越来越多的开发者希望根据自己的需求对模型进行定制化训练。然而,许多用户在缺乏高性能GPU的情况下,难以完成这一任务。本文将以LLaMA-Factory 0.9.2为核心工具,详细介绍如何在Windows 10系统中仅使用CPU完成LLM的微调、导出与测试。本指南适用于有一定编程基础的用户,所有步骤均经过实测验证。
环境准备
1. 安装Python 3.12.9
首先,确保系统中已安装Python 3.12.9版本。可从Python官网下载对应安装包。安装完成后,建议通过以下命令清理Python缓存(可选操作):
pip cache purge
2. 创建项目目录
在硬盘(例如D盘)中新建一个文件夹(如lafa
),用于存放后续所有文件:
D:
mkdir lafa
3. 安装LLaMA-Factory
进入目标目录,通过Git克隆LLaMA-Factory仓库并安装依赖:
cd D:\lafa
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip install -e ".[torch,metrics]"
数据集与路径配置
4. 准备数据集文件夹
在lafa
目录下创建datasets_mymodels
文件夹,并放入以下必需文件:
-
identity.json
-
dataset_info.json
-
c4_demo.jsonl
这些文件可从LLaMA-Factory的data
文件夹中复制。
5. 修改默认路径
打开LLaMA-Factory\src\llamafactory\webui\common.py
文件,修改以下路径参数:
DEFAULT_DATA_DIR = "D:/lafa/datasets_mymodels" # 数据集目录
DEFAULT_SAVE_DIR = "D:/lafa/lafa_llms_created" # 模型保存目录
6. 安装依赖库
进入LLaMA-Factory根目录,安装所有依赖:
pip install -r requirements.txt
CPU环境适配
7. 安装CPU版PyTorch
卸载默认安装的GPU版PyTorch,替换为CPU专用版本:
pip uninstall -y torch torchvision torchaudio
pip install torch==2.2.2+cpu torchvision==0.17.2 torchaudio==2.2.2 --index-url https://download.pytorch.org/whl/cpu
8. 修改训练脚本
打开LLaMA-Factory\src\train.py
文件,在def main():
前添加以下代码,强制使用CPU:
device = torch.device('cpu')
9. 调整WebUI启动参数
修改LLaMA-Factory\src\llamafactory\webui\runner.py
文件中的Popen
调用,添加shell=True
参数:
self.trainer = Popen(["llamafactory-cli", "train", save_cmd(args)], env=env, shell=True)
启动训练与监控
10. 启动WebUI
进入LLaMA-Factory\src
目录,运行以下命令启动训练界面:
webui --device cpu
若提示“CUDA环境未检测到”,可忽略此警告。训练进度将在命令行界面实时显示。
11. 处理常见错误
-
训练未启动:检查 llamafactory-cli
是否安装正确,必要时重新克隆仓库并清理缓存。 -
路径错误:确保 common.py
中的目录路径使用正斜杠(/
)且无拼写错误。
模型导出与格式转换
12. 导出模型为Safetensors
训练完成后,模型默认保存在LLaMA-Factory\src\saves\Custom\lora\
。如需自定义保存路径,可在common.py
中修改DEFAULT_SAVE_DIR
。
13. 合并适配器与基础模型
复制LLaMA-Factory\examples\train_lora
中的配置文件(如qwen2vl_lora.sft.yaml
)到模型目录,并修改以下参数:
model_name_or_path: "基础模型路径(从HuggingFace下载)"
adapter_name_or_path: "微调后的模型路径"
export_dir: "合并后的模型导出路径"
运行合并命令:
llamafactory-cli export 配置文件路径
14. 转换为GGUF格式
安装llama.cpp并执行转换:
python llama.cpp/convert_hf_to_gguf.py 输入模型路径 --outfile 输出路径.gguf --outtype q8_0
注意:若转换失败,需检查模型配置文件(如config.json
)是否包含完整的架构参数。
模型测试与部署
15. 在LM Studio中加载模型
将生成的GGUF文件复制到LM Studio的模型目录(如D:\llm_for_lmstudio\lmstudio_models
),启动软件后即可在模型列表中找到微调后的版本。
16. 验证模型效果
通过提问测试模型是否掌握了特定领域的知识。例如,若微调目标是医疗问答,可输入相关专业问题,对比基线与微调后的回答质量。
结语
通过本指南,即使仅使用CPU,用户也能高效完成大语言模型的微调与部署。关键点在于环境配置的准确性和步骤执行的顺序。实际应用中,建议从小规模数据集开始验证流程,逐步扩展到完整任务。未来,随着工具链的优化,CPU训练的效率将进一步提升。