这篇博客参考了一些文章,例如:教程:利用llama_factory微调llama3:8b大模型_llama3模型微调保存-csdn博客
也可以参考llama factory的readme:github - hiyouga/llama-factory: unify efficient fine-tuning of 100+ llmsunify efficient fine-tuning of 100+ llms. contribute to hiyouga/llama-factory development by creating an account on github.https://github.com/hiyouga/llama-factory?tab=readme-ov-file#installation首先将llama factory clone到本地:github - hiyouga/llama-factory: unify efficient fine-tuning of 100+ llms
其次创建一个conda环境:
conda create -n llama_factory python=3.10
激活环境后首先安装pytorch,具体参考这个页面:start locally | pytorch,例如:
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
而后进入到llama-factory文件夹,参考其readme,运行:
pip install -e .[torch,metrics]
同时,按照其readme,在windows系统上还需要运行:
pip install https://github.com/jllllll/bitsandbytes-windows-webui/releases/download/wheels/bitsandbytes-0.41.2.post2-py3-none-win_amd64.whl
具体原因我就不展开讲了。然后依次运行:
set cuda_visible_devices=0
set gradio_share=1
llamafactory-cli webui
就可以看到其webui了。不过这时候还没有模型参数文件,对于国内用户而言,可以在这里https://modelscope.cn/organization/llm-researchhttps://modelscope.cn/organization/llm-research
进行下载,例如可以下载llama3中文版本(如果没有git lfs可以用前两个命令安装):
conda install git-lfs
git-lfs install
git lfs clone https://www.modelscope.cn/llm-research/llama3-8b-chinese-chat.git
下载好之后,可以构造自己的微调数据集,具体而言,按照这里的介绍:
https://github.com/hiyouga/llama-factory/tree/main/data
llama factory支持alpaca and sharegpt的格式,前者类似于这种格式:
我们构造数据集的时候,最简单的方法就是只构造instruction和output。把生成的json文件放到llama-factory\data目录下,然后打开dataset_info.json文件,增加这个文件名记录即可,例如我这里增加:
选择自己的私有数据集,可以预览一下,然后就可以开始训练了。
训练完成后切换到export,然后在上面的“微调方法”——“检查点路径”中选择刚才存储的目录train_2024_xxxx之类,然后指定导出文件的目录,然后就可以导出了。
导出之后我们可以加载微调之后的模型并测试了。当然,如果训练数据集比较小的话,测试的效果也不会太好。如果大家只是想对微调效果和特定问题进行展示,可以训练模型到过拟合,呵呵呵。
就记录这么多。
发表评论