🚀 从零开始:LLaMA-Factory 大模型微调完全指南 | 手把手教你打造专属AI助手
📝 教程摘要
本教程将带领你完成从环境配置到模型部署的全流程,让你能够:
- 在 AutoDL 平台上快速搭建训练环境
- 使用 LLaMA-Factory 进行大模型微调
- 将训练好的模型导出并部署为 API 服务
- 通过简单的 Python 代码实现与模型的对话
无需深度学习背景,跟着教程一步步操作,即可打造属于你的专属 AI 助手!
0. AutoDL 环境准备
- 登录 AutoDL 平台
- 选择镜像:
1. 准备数据集
- 进入终端,执行以下命令:
bash /root/LLaMA-Factory/chuli/转移.sh
- 打开左侧的"数据集全自动化处理"
- 进入"放置数据集.txt",将制作好的数据集放入其中
2. 启动训练流程
- 在终端执行以下命令:
bash /root/LLaMA-Factory/chuli/单多轮脚本/DD.sh
- 启动可视化界面:
bash /root/LLaMA-Factory/chuli/one.sh
- 复制当前网址,将第一个字母改为 ‘u’,并删除 8443 后面的所有内容
3. 配置训练参数
-
在 Web 界面中:
- 将数据集改为你的数据集
- 输出目录改为
001
- 点击开始训练
- 等待 loss 降至 1.0 左右时手动中断停止
-
检查点设置:
- 检查点路径改为
001
- 点击 chat
- 点击加载模型
- 检查点路径改为
4. 导出模型
-
在 Web 界面中:
- 点击卸载模型
- 点击 export
- 最大分块大小改为 2
- 导出设备改为 auto
-
创建导出目录:
- 进入
/root/autodl-tmp/xxx
- 新建文件夹
xxx
- 进入
-
开始导出:
- 点击开始导出
- 删除检查点路径
- 模型路径改为
/root/autodl-tmp/xxx
- 点击 chat 加载模型
5. 配置 API 服务
-
修改
api.sh
:- 将
model_name_or_path
改为/root/autodl-tmp/xxx
- 将
template
改为 webui 中高级设置中的提示模板 - 保存文件
- 将
-
关闭所有终端
-
新建终端并运行:
bash /root/LLaMA-Factory/api.sh
- 确认输出端口
http://0.0.0.0:6006
表示输出成功- 如果报错,检查 webui 进程是否关闭
- 如果进程仍在运行,使用 kill 命令关闭
6. 本地测试
- 创建新的 Python 文件,复制以下代码:
import openai
import sys
api_key = "EMPTY"
openai.api_base = "你的AUtodl自定义服务里面的网址/v1"
def chat_with_gpt3_5(messages):
response = openai.ChatCompletion.create(
model="xxx",
messages=messages,
api_key=api_key,
stream=True # 启用流式输出
)
full_response = ""
for chunk in response:
if 'choices' in chunk and len(chunk['choices']) > 0:
content = chunk['choices'][0].get('delta', {}).get('content', '')
if content:
print(content, end='', flush=True)
full_response += content
print()
return full_response
conversation = [
{"role": "system", "content": "你是一个聪明的AI"}
]
while True:
user_input = input("You: ")
if user_input.lower() == '退出':
print("Assistant: 再见!")
break
conversation.append({"role": "user", "content": user_input})
print("Assistant: ", end='', flush=True)
assistant_message = chat_with_gpt3_5(conversation)
conversation.append({"role": "assistant", "content": assistant_message})
- 将代码中的
你的AUtodl自定义服务里面的网址
替换为 webui 的网址
注意事项
- 确保所有进程正确关闭后再启动新的服务
- 注意检查模型路径和配置参数的正确性
- 保持网络连接的稳定性