零代码玩转大模型微调:LLaMA-Factory 全栈实战指南

0. 为什么选择 LLaMA-Factory?

维度原生脚本LLaMA-Factory
代码量500+ 行5 行
学习成本零代码
硬件门槛32 GB 显存18 GB 跑 7B QLoRA
功能覆盖单一场景SFT/RLHF/DPO/PPO 全支持
生产特性自己写断点续传 + DeepSpeed + 评估可视化

一句话:“傻瓜化”不等于“玩具”,LLaMA-Factory 是 2024 年最成熟的低代码大模型微调框架


1. 安装 & 环境一键脚本(Ubuntu 20.04+)

# 1. 创建独立环境 conda create -n llama_factory python=3.10 -y conda activate llama_factory # 2. 拉取最新源码git clone https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory # 3. 一键安装依赖(国内镜像加速) pip install -e ".[torch,metrics,deepspeed]" -i https://pypi.tuna.tsinghua.edu.cn/simple # 4. 验证 llamafactory-cli version # 输出:Welcome to LLaMA-Factory, version x.x.x
Windows 用户可直接用官方提供的一键安装包,双击 start_webui.bat 即可。

2. 数据准备:把“聊天”变“教材”

2.1 支持格式(三选一)

格式文件说明
Alpacaalpaca.json指令-输入-输出三元组
ShareGPTsharegpt.json多轮对话 messages
OpenAIchat.json原生 {"messages": [...]}
推荐使用 ShareGPT 格式,可保留多轮上下文。

2.2 微信聊天记录 → 训练集(1 分钟)

  1. MemoTrace 导出 JSON(已脱敏)
  2. 一键转换脚本(官方内置):
python scripts/convert_wechat.py \ --json_path wechat.json \ --save_path data/wechat_chat.json \ --min_turns 3
  1. 注册数据集
    打开 data/dataset_info.json 新增:
"wechat_chat":{"file_name":"wechat_chat.json","formatting":"sharegpt","columns":{"messages":"messages"}}
WebUI 可实时预览样本,拒绝盲盒训练。

3. 启动 WebUI:点两下就能训

llamafactory-cli webui # 浏览器自动打开 http://localhost:7860

界面总览:
模型选择 → ② 数据集选择 → ③ 微调方法 → ④ 超参 → ⑤ 点“开始”

区域关键选项推荐值
ModelModel nameQwen2.5-7B-Instruct
ModelQuantization4-bit(QLoRA)
MethodFinetuning methodLoRA
MethodLoRA rank64
HyperLearning rate2e-4
HyperEpochs3
DataDatasetwechat_chat
DataMax samples10000(调试先用 1k)
高级开关梯度检查点:显存再省 30%DeepSpeed:多卡自动并行打包(packing):序列利用率 +20%

4. 训练:18 GB 显存跑 7B 模型

4.1 单机单卡(RTX 4090 24 GB)

点击 Preview Command 可见完整启动命令:

llamafactory-cli train \ --model_name_or_path Qwen/Qwen2.5-7B-Instruct \ --quantization_bit 4\ --template qwen \ --dataset wechat_chat \ --finetuning_method lora \ --lora_rank 64\ --lora_alpha 128\ --output_dir saves/qwen2.5-7b-wechat \ --per_device_train_batch_size 1\ --gradient_accumulation_steps 32\ --lr_scheduler_type cosine \ --logging_steps 10\ --warmup_ratio 0.1\ --save_steps 500\ --learning_rate 2e-4 \ --num_train_epochs 3\ --plot_loss True \ --fp16 True 

耗时:1 万条样本 ≈ 1.5 小时(4090)。

4.2 多机多卡(可选)

打开 Advanced → DeepSpeed → Zero-3,自动加载 ds_config_zero3.json两张 24 GB 卡可跑 13B

4.3 断点续传

训练中断后,重新选择同一个 output_dir,WebUI 会自动检测到 checkpoint-xxx → 点击 Resume 即可续训。


5. 评估 & 对话:肉眼可见的效果

5.1 实时损失曲线

WebUI 内置 TensorBoard 面板,loss / learning_rate / grad_norm 三曲线同步刷新。

5.2 一键对话验证

切到 Chat → Checkpoint path 选择最新保存点 → Load Model
输入:“我失恋了” 对比前后回复:

基座(原版)微调后(WeChat 版)
失恋是一种常见情绪…(官腔)抱抱你!上次我分手吃了三桶冰淇淋…(口语化)
肉眼可见“人味”提升

5.3 自动化指标

勾选 Evaluate → BLEU + ROUGE-L,训练结束后自动计算并生成 CSV。


6. 导出 & 上线:三步完成部署

6.1 合并 LoRA 权重

llamafactory-cli export\ --model_name_or_path Qwen/Qwen2.5-7B-Instruct \ --adapter_dir saves/qwen2.5-7b-wechat \ --template qwen \ --export_dir models/qwen2.5-7b-wechat-merged \ --export_size 2\ --export_legacy_format False 

产出 单文件 .safetensors,可直接用 vLLM / TensorRT-LLM

6.2 vLLM 起服务

pip install vllm python -m vllm.entrypoints.openai.api_server \ --model models/qwen2.5-7b-wechat-merged \ --served-model-name qwen-wechat-7b \ --tensor-parallel-size 1

OpenAI 完全兼容,前端只改 base_url

6.3 Docker 一键封装(可选)

官方镜像:

FROM hiyouga/llama-factory:latest COPY models/qwen2.5-7b-wechat-merged /app/model CMD ["llamafactory-cli", "api", "--model_path", "/app/model"] 

7. 高级玩法:DPO / RLHF 继续优化

WebUI 切 RLHF → DPO

  • Preference Dataset:准备“好 vs 差”成对数据
  • Beta 参数:0.1(越大越对齐,越保守)
  • -steps:500 步即可见效

实测:DPO 后模型在“安全违规”指标下降 37%


8. 常见坑 & 一键诊断

现象一键修复
loss 爆炸>10学习率开关 → 调小 5×
显存不足OOM勾选 Gradient Checkpoint + 4-bit
生成乱码模板错Chat → Template 选回 qwen
续传失败找不到 ckpt输出目录留空 → 自动检测

9. 总结:LLaMA-Factory微调全流程

数据 JSON → WebUI 点选 → QLoRA 训练 → 损失可视化 → 合并导出 → vLLM 部署 

全程零代码18 GB 显存可跑 7B断点续传 + 多卡 + DeepSpeed 全内置。

现在就去 GitHub 拉取 LLaMA-Factory
学习代码仓库 AI大模型学习代码仓库

Read more

WorkBuddy 使用指南:从零开始配置 QQ 机器人,解锁桌面智能体新玩法

WorkBuddy 使用指南:从零开始配置 QQ 机器人,解锁桌面智能体新玩法

文章目录 * 前言 * 下载 WorkBuddy * 认识 WorkBuddy * 插件类型 * 配置 QQ 机器人 * 登录 QQ 开放平台并注册激活账号 * 配置超级管理员、主体及认证信息 * 创建 QQ 机器人 * 获取 AppID 和 AppSecret * 从 Claw 中获取 Webhook * 在 QQ 开发平台配置回调地址 * 开始使用 WorkBuddy Claw * 总结 前言 在大家还在沉迷于如何搭建 OpenClaw 的时候,腾讯竟然悄悄公测了 WorkBuddy。这是一款面向全角色的桌面智能体,下达指令即可自动生成文档、表格、图表及 PPT 等可视化成果,能够自主规划并交付多模态复杂任务结果,支持多 Agents 并行工作,极致提效,

OpenClaw对接飞书机器人高频踩坑实战指南:从插件安装到回调配对全解析

前言 当前企业办公场景中,将轻量级AI框架OpenClaw与飞书机器人结合,能够快速实现智能交互、流程自动化等功能。然而,在实际对接过程中,开发者常常因权限配置、环境依赖、回调设置等细节问题陷入反复试错。本文以“问题解决”为核心,梳理了10个典型踩坑点,每个问题均配套原因分析、排查步骤和实操案例。同时,补充高效调试技巧与功能扩展建议,帮助开发者系统性地定位并解决对接障碍,提升落地效率。所有案例基于Windows 11环境、OpenClaw最新稳定版及飞书开放平台最新界面验证,解决方案可直接复用。 一、前置准备(快速自查) 为避免基础环境问题浪费时间,建议在开始前确认以下三点: * OpenClaw已正确安装,终端执行 openclaw -v 可查看版本(建议使用最新版,旧版本可能存在插件兼容风险)。 * Node.js版本不低于v14,npm版本不低于v6,通过 node -v 和 npm -v 验证,防止因依赖版本过低导致插件安装失败。 * 飞书账号需具备企业开发者权限(企业账号需管理员授权,个人账号默认具备)

AI小说生成器终极指南:从零打造你的智能写作助手

AI小说生成器终极指南:从零打造你的智能写作助手 【免费下载链接】AI_NovelGenerator使用ai生成多章节的长篇小说,自动衔接上下文、伏笔 项目地址: https://gitcode.com/GitHub_Trending/ai/AI_NovelGenerator 深夜,你坐在电脑前,面对空白的文档,脑海中构思已久的故事情节却难以流畅地转化为文字。角色对话生硬,剧情推进乏力,伏笔设置混乱——这是许多创作者面临的共同困境。现在,让我们一同探索如何利用AI_NovelGenerator这个强大的工具,彻底改变你的创作体验。 开篇引语:当AI遇见文学创作 想象一下,你只需要设定一个核心主题,AI就能自动为你生成完整的小说设定、章节目录,甚至每一章的详细内容。AI_NovelGenerator正是这样一个革命性的平台,它将人工智能技术与文学创作完美结合,为写作者提供前所未有的创作支持。 创作新纪元:AI_NovelGenerator不仅仅是工具,更是你的创作伙伴。它能理解上下文关系,自动衔接剧情,设置精妙伏笔,让长篇小说的创作变得轻松而富有乐趣。 核心功能详解:智能

从单卡到多卡:Llama Factory微调扩展指南

从单卡到多卡:Llama Factory微调扩展指南 如果你已经成功在单卡GPU上完成了小规模语言模型的微调,现在想要扩展到更大的模型却不知从何下手,这篇文章正是为你准备的。LLaMA-Factory作为一个高效的大语言模型微调框架,能帮助你从单卡环境平滑过渡到多卡分布式训练。本文将详细介绍如何利用LLaMA-Factory实现模型微调的横向扩展,包括环境配置、参数调整和显存优化等关键技巧。 为什么需要从单卡扩展到多卡 当模型规模超过单卡显存容量时,多卡并行训练就成为必然选择。根据实际测试数据: * 7B参数模型全参数微调需要约80GB显存 * 13B参数模型需要约160GB显存 * 70B参数模型可能需要超过600GB显存 这些需求远超单张消费级显卡的容量,此时就需要: 1. 数据并行:将训练数据分片到不同GPU 2. 模型并行:将模型参数拆分到不同GPU 3. 混合策略:结合上述两种方法 LLaMA-Factory多卡环境准备 LLaMA-Factory支持多种分布式训练策略,以下是基础环境配置步骤: 1. 确保所有GPU型号和驱动版本一致 2