大模型微调快速入门

目录

一、框架调研

二、搭建环境

三、准备数据集

四、开始训练


一、框架调研

|-------------------|--------------------------------------|------------|
| 工具 | 优势 | 典型场景 |
| Kiln | 零代码+协作功能 | 快速原型开发 |
| Unsloth | 训练加速+低显存需求 | 低成本微调大模型 |
| LLaMA-Factory | 可视化调参界面+多模型支持+多种训练方式 | 行业专用模型快速落地 |
| PEFT | 参数高效+资源节省 | 大规模模型轻量化适配 |
| transformers | Hugging Face生态完备+社区支持 | 从实验到生产全流程 |
| Axolotl | 支持多种数据集格式以及自定义格式 | |
| Firefly | 验证了 QLoRA 训练流程的有效性 | |
| XTuner | 支持多节点跨设备微调更大尺度模型 | |
| ms-swift | 支持450+大模型与150+多模态大模型的训练、推理、评测、量化与部署。 | |

这里选用微调工具为:**LLaMA-Factory。**除此上述优势外,开发者多,文档资料足,比较容易上手。

文档可参考:https://llamafactory.readthedocs.io/zh-cn/latest/getting_started/sft.html

二、搭建环境

LLaMA-Factory 的 Github地址:https://github.com/hiyouga/LLaMA-Factory

  • 创建 conda 虚拟环境(一定要 3.10 的 python 版本,不然和 LLaMA-Factory 不兼容)

    conda create -n llama-factory python=3.10

  • 激活虚拟环境

    conda activate llama-factory

  • 直接从源码安装

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

  • 检验是否安装成功

    llamafactory-cli version

  • 启动 LLama-Factory 的可视化微调界面 (由 Gradio 驱动)

    llamafactory-cli webui

三、准备数据集

llamafactory会去找json文件,而数据集信息则保持在json文件中

一般来说,json取名为:dataset_info.json

微调指令中的对应字段为:--dataset_dir /data/thomascai/codes/LLaMA-Factory-0.9.3/datasets 下一层就是 dataset_info.json

如果图形化训练界面,则

data下会去搜索**dataset_info.json**文件。

这里以图像文本数据集为例:

  • **dataset_info.json**的内容

    {
    "dataset_name": {
    "file_name": "dataset_name.json",
    "formatting": "sharegpt",
    "columns": {
    "messages": "messages",
    "images": "images"
    },
    "tags": {
    "role_tag": "role",
    "content_tag": "content",
    "user_tag": "user",
    "assistant_tag": "assistant"
    }
    }
    }

  • 跟**dataset_info.json** 同级目录下则有 **dataset_name.json**文件

    [
    {
    "messages": [
    { "role": "user", "content": "<image>\n看这张图片,里面是什么?" },
    { "role": "assistant", "content": "这是一个矿泉水瓶。" }
    ],
    "images": [
    "images/img_0001.jpg"
    ]
    },
    {
    "messages": [
    { "role": "user", "content": "<image>\n请帮我识别这张图片中的物体。" },
    { "role": "assistant", "content": "是一瓶可乐。" }
    ],
    "images": [
    "images/img_0002.jpg"
    ]
    }
    ]

准备好数据集后,即可以开始训练。

四、开始训练

一般入门来说,图像化界面训练即可。

然后往下会生成损失曲线:

相关推荐
小程故事多_803 小时前
OpenClaw工具引擎架构全解析,AI Agent的“双手”如何落地实操
人工智能·架构·aigc·ai编程·openclaw
qq_452396233 小时前
【AI 架构师】第十篇:Agent 工业化部署 —— 从 FastAPI 到云端全链路监控
网络·人工智能·ai·fastapi
前端摸鱼匠3 小时前
【AI大模型春招面试题11】什么是模型的“涌现能力”(Emergent Ability)?出现条件是什么?
人工智能·算法·ai·自然语言处理·面试·职场和发展
新缸中之脑3 小时前
如何合法地逆向SynthID
人工智能
剑穗挂着新流苏3124 小时前
115_PyTorch 实战:从零搭建 CIFAR-10 完整训练与测试流水线
人工智能·pytorch·深度学习·神经网络
Veggie264 小时前
【Java深度学习】PyTorch On Java 系列课程 第八章 17 :模型评估【AI Infra 3.0】[PyTorch Java 硕士研一课程]
java·人工智能·深度学习
链上杯子4 小时前
《2026 LangChain零基础入门:用AI应用框架快速搭建智能助手》第8课(完结篇):小项目实战 + 部署 —— 构建网页版个人知识库 AI 助手
人工智能·langchain
东方不败之鸭梨的测试笔记4 小时前
AI生成测试用例方案
人工智能·测试用例
笨手笨脚の5 小时前
AI 基础概念
人工智能·大模型·prompt·agent·tool
飞睿科技5 小时前
解析 ESP-AirPuff 泡芙一号的 ESP32-P4 大模型 AI 智能体方案
人工智能