LLaMA-Factory从安装到微调再导出全流程

LLaMA-Factory是一个微调框架。

1环境配置

1.1安装CUDA

这个就比较繁琐了,可以参考其他教程,验证是否安装成功可以用以下代码

import torch
torch.cuda.is_available()
torch.cuda.current_device()

出现以下输出就说明GPU环境准备好了。

有一个小坑, 如果ubuntu执行nvcc -V时系统可能无法识别nvcc的命令。这时可以看一下 /usr/local/cuda/bin下面是否存在nvcc,如果存在就在.bashrc的最后加上

export PATH="/usr/local/cuda/bin:$PATH"
nano ~/.bashrc
source ~/.bashrc

再次执行就能正常运行了

1.2安装LLaMA-Factory

安装之前建议先用conda创建一个新的环境,这样就不会出现依赖冲突

conda create -n factory python=3.12
conda activate factory

git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip install -e ".[torch,metrics]"

然后,按理说使用 llamafactory-cli webui 这个命令启动llamafactory的操作界面了。

但是也有出现如下报错

这是因为电脑开启了代理,关闭之后就能正常启动了。

2微调准备

微调之前需要有模型,以及数据,不过LLaMA-Factory仓库里自备有一些训练数据,模型可以在huggiface上下载。

2.1下载模型

以 Qwen2.5-0.5B-Instruct (https://huggingface.co/Qwen/Qwen2.5-0.5B-Instruct/tree/main) 为例,点击下载图标,把所有文件下载到本地就算准备好模型了。

2.2准备数据

在LLaMA-Factory仓库的data文件夹里有很多数据,原始形式如下。

这个identity.json是可以微调修改模型自我认知的数据集,可以修改称自己想要的样子。

我把name和author替换成了 黑巧 和 zemelee。这样就算准备好了私有的数据集。

3微调配置

控制台执行  llamafactory-cli webui  ,就会打开web操作界面。

按照上述红字修改参数,如果选择data后无法选择数据集,则需要修改dataset_info.json文件如下。需要在文件名前加上绝对路径。

同时模型下载的文件夹名需要和模型名称完全一致,否则可能导致训练不成功

 然后就可以点击开始进行愉快的微调了。

4微调

微调开始后,控制台会输出大量日志,同时保存在save路径里。

其中我的训练记录有两次,第一次保存了6次,以防训练中断再次训练要从头开始。如果需要继续训练只需要在操作界面的检查点路径输入最后一次保存的文件夹路径就行了。

5测试

5.1载入原始模型

清空检查点,点击chat,加载模型,提问。

5.2加载微调模型

卸载,数输入检查点,加载,提问

模型认知已经改变了,说明微调生效了。

导出

主要选择一下路径就可以了。

导出完成后原始模型文件夹和输出文件夹如下。

使用ollama导入

ollama不能直接使用LLaMA-Factory导出的模型,需要用官方工具转换一下,工具如下

https://github.com/ggerganov/llama.cpp  

clone仓库,并安装相关依赖( pip install -r requirements.txt )就可以了。

接着就可以用下面的命令转换了。convert_hf_to_gguf.py是llama.cpp中的文件,先指定factory导出的模型文件夹路径,后指定需要存放的模型路径,再指定量化等级。safetensors格式就被转换为了gguf格式。转换后是一个单文件。

python convert_hf_to_gguf.py /home/zemelee/models/qwen_factory \
--outfile /home/zemelee/models/qwen_factory_ollama\qwen_f_o.gguf \
--outtype q8_0

创建一个Modelfile文件(无后缀),写下FROM 转换后的gguf模型路径,比如我的如下

FROM /home/zemelee/models/qwen_factory_ollama/qwen_f_o.gguf

通过以下命令指定Modelfile就可以创建ollama的模型了

ollama create qwen-factory -f /home/zemelee/models/Modelfile

但是转换后的模型似乎及不稳定,经常乱回答。

有了ollama,就能基于此在ragflow等工具中使用微调模型了。

也许是模型太小的原因,0.5B,总是乱回答。

<think>好的,我现在需要帮助用户在Windows系统上部署和微调Llama-Factory模型。首先,我得仔细看看用户的问题和提供的引用内容,确保我理解他们的需求。 根据用户提供的引用,特别是引用[2]和[3],里面提到了LLaMa-Factory的环境搭建步骤,但主要是在Linux环境下,比如使用conda创建环境、安装依赖、启动WebUI等。用户现在需要在Windows上操作,所以需要调整这些步骤以适应Windows系统。 首先,我应该考虑Windows和Linux在命令行工具上的差异。例如,在克隆仓库、设置环境变量、安装依赖等方面可能会有不同的命令。比如,在Windows中使用conda的方式可能类似,但路径和命令执行可能需要调整。 然后,安装依赖的部分。引用[2]中提到安装依赖使用pip install -e .[torch,metrics],这在Windows中可能需要处理Shell语法的问题,比如在PowerShell中可能需要用引号包裹,或者使用不同的方式安装带有extras的包。 启动WebUI时,引用[2]中的export CUDA_VISIBLE_DEVICES=0在Windows中可能需要用set命令,或者如果用户只有一块GPU的话,可能可以跳过这一步。另外,运行Python脚本的命令在Windows中是一样的,但需要确保Python环境正确激活。 关于微调部分,引用[2]和[4]提到了使用WebUI进行配置,用户可能需要指导如何在Windows中访问Web界面,以及如何选择数据集和模型参数。同时,需要注意Windows的文件路径和数据集存放的位置是否正确。 可能遇到的问题包括环境变量设置、依赖安装失败(尤其是与CUDA相关的部分)、路径错误,或者WebUI无法正常启动。需要提前考虑这些情况,并在指南中给出解决方案或提示。 另外,用户可能不熟悉命令行操作,所以步骤需要详细,并且指出可能遇到的常见错误。例如,在安装依赖时,如果出现权限问题,可能需要以管理员身份运行命令行工具;或者如果缺少某些库,可能需要额外安装。 最后,生成的相关问题需要围绕部署和微调过程中可能遇到的进一步疑问,比如数据集准备、参数调优、结果评估等,引用[4]中的ROUGE指标可以作为评估方法之一,但用户可能需要更多关于如何解读这些指标的指导。 总结步骤应该是:环境准备(安装Git、conda)、克隆仓库、创建conda环境、安装依赖、启动WebUI、配置微调参数、运行微调、验证结果。每个步骤需要针对Windows进行调整,并检查可能的兼容性问题。</think>以下是在Windows系统上部署和微调LLaMA-Factory的详细操作指南: ### 一、环境准备 1. 安装Git和Miniconda 从官网下载Git for Windows和Miniconda安装包,按默认配置完成安装 2. 配置CUDA环境(需NVIDIA显卡) 确认已安装对应显卡驱动的CUDA Toolkit 11.8+[^2] ### 二、项目部署 ```powershell # 克隆仓库(使用PowerShell) git clone https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory # 创建conda环境 conda create -n llama_factory python=3.10 conda activate llama_factory # 安装依赖(注意Windows的shell转义) pip install -e ".[torch,metrics]" ``` ### 三、启动WebUI ```powershell # 设置CUDA可见设备(单卡可省略) $env:CUDA_VISIBLE_DEVICES=0 # 启动Web界面 python src/webui.py ``` 启动成功后浏览器访问 `http://localhost:7860`[^3] ### 四、微调配置步骤 1. **模型选择**:在WebUI的"Model"选项卡选择基座模型(如LLaMA-3) 2. **数据准备**: - 创建`data`文件夹存放JSON格式数据集 - 示例数据结构: ```json [{ "instruction": "解释量子力学", "input": "", "output": "量子力学是研究微观粒子运动规律的理论..." }] ``` 3. **参数设置**: - 微调方法:推荐QLoRA(显存占用更低) - 学习率:建议1e-4到5e-5 - 批大小:根据显存调整(8GB显存建议batch_size=4) ### 五、启动微调 1. 在"Train"标签页加载数据集 2. 设置保存路径(建议使用英文路径) 3. 点击"Start Training"开始微调 ### 六、验证结果 使用内置评估指标查看ROUGE-L、BLEU等分数[^4],典型成功输出: ``` Epoch 1 | Loss: 2.34 | Rouge-L: 0.56 Epoch 2 | Loss: 1.78 | Rouge-L: 0.62 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值