教学视频链接6.租赁 GPU 服务器并微调 Llama-Factory 模型_哔哩哔哩_bilibili
https://www.bilibili.com/video/BV1NKNSeDEgt/
租赁服务器
从 AutoDL 站点 租用服务器:AutoDL算力云 | 弹性、好用、省钱。租GPU就上AutoDL
3090 专区选择按量计费
基础镜像选择 pytorch 2.1.2
购买成功后通过 jupyterLab进入控制台
安装 LLaMA-Factory
从 这个链接 下载LLaMA-Factory的压缩包LLaMA-Factory.tar.gz
tar -xvf LLaMA-Factory.tar.gz
# 创建虚拟环境(如果已创建,请忽略此步骤)
conda create -n llama_factory -y python=3.11 pip
# 激活虚拟环境
conda activate llama_factory
# 使用 pip 安装依赖
cd ~/LLaMA-Factory
pip install -e ".[torch,metrics]"
pip install modelscope -U
验证安装是否成功
# 查看 LLaMA-Factory 版本
llamafactory-cli version
# 如果出现下面信息,代表安装成功
———————————————————-
| Welcome to LLaMA Factory, version 0.9.1.dev0 |
| |
| Project page: https://github.com/hiyouga/LLaMA-Factory |
——————————————————–
使用 LLaMA-Factory 运行基座模型
启动 web 界面
export USE_MODELSCOPE_HUB=1 # 使用 modelscope 下载模型
export NCCL_P2P_DISABLE="1"
export NCCL_IB_DISABLE="1"
export MODELSCOPE_CACHE='/root/autodl-tmp/modelscope/'
export MODELSCOPE_MODULES_CACHE='/root/autodl-tmp/modelscope/modelscope_modules'
llamafactory-cli webui
设置隧道
ssh -CNgv -L 7860:127.0.0.1:7860 root@connect.yza1.seetacloud.com -p 49959
设置隧道后,应该可以通过本机地址:http://127.0.0.1:7860 打开 llamafactory 的 ui 界 面,通过在 Lang 选项卡中,选择 zh 即可将界面调整为中文。
语言 zh,模型 glm-4-9B-Chat
点击 chat 选项卡的加载模型(等一段时间,可以在终端看进度条加载完成),就可以基于 LlamaFactory 模型进行聊天了
我们看到,对于你是谁 这个问题,目前的回答是清华大学的某某某
使用 LLaMA-Factory 微调模型
自定义数据集使用天翼云盘 珍藏美好生活 家庭云|网盘|文件备份|资源分享 下的 my_demo.json 文件 ,打开~/LLaMA-Factory/data/dataset_info.json 文件,将 my_demo 数据块,加入到文件的开头处,保存即可。
刷新一下页面,然后选择 my_demo 数据集:
注意,学习率改为 5e-4,点击预览数据集可以看到 my_demo.json 文件内容
点击“开始”按钮进行微调,等 1 到 2 分钟,可以看到曲线呈向下趋势。
微调完成后,测试微调效果:
选择刚刚的检查点,加载模型
加载好后,重新提问 你是谁 这个问题,可以看到,回答已经变成了 信息中心了。
将微调模型仿 OpenAI 兼容接口
启动接口
llamafactory-cli api –model_name_or_path /root/autodl-tmp/modelscope/hub/ZhipuAI/glm-4-9b-chat –template glm4 –adapter_name_or_path saves/GLM-4-9B-Chat/lora/train_2024-10-02-15-23-47 –finetuning_type lora
设置隧道
ssh -CNgv -L 8000:127.0.0.1:8000 root@connect.yza1.seetacloud.com -p 49959
命令行测试
curl http://127.0.0.1:8000/v1/chat/completions \\
-H "Content-Type: application/json" \\
-H "Authorization: Bearer x" \\
-d '{
"model": "glm4-9b-chat",
"messages": [
{
"role": "user",
"content": "你是谁?"
}
],
"max_tokens": 4096
}'
可以看到,模型使用我们微调后的 信息中心 相关回答了。
评论前必须登录!
注册