大模型微调零基础入门教程:从环境搭建到跑通第一个模型

动手前的准备清单

在开始大模型微调之前,先确认你手头有没有这些“武器”。
最核心的是显卡,NVIDIA RTX 3090 或 4090 都能跑,显存最好在 12GB 以上。
如果没有这么强的显卡,也可以用云服务器,比如 AutoDL、恒源云,按小时租用就行。

操作系统推荐 Ubuntu 22.04,Windows 也能用,但 Linux 环境更省心。
你的硬盘至少留出 50GB 空闲空间,用于存放模型权重和数据集。

还需要一个 Python 3.10 环境,建议用 Miniconda 管理虚拟环境,避免和系统 Python 打架。
最后,准备一个小数据集,比如 100 条中文问答,格式可以用 JSON 文件,每条包含 "instruction" 和 "output" 字段。
如果你没有现成的,去 GitHub 搜 alpaca_chinese_dataset 下载。

搭建微调环境:一步一步来

第一件事,创建虚拟环境并激活:

conda create -n finetune python=3.10 -y
conda activate finetune

然后安装 PyTorch,建议去 PyTorch 官网根据你的 CUDA 版本复制命令。
一般用 CUDA 12.1 的版本:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

接着安装 Hugging Face 的核心库和加速库:

pip install transformers datasets accelerate peft bitsandbytes

如果你打算用 LLaMA-Factory(一个非常好用的微调工具),直接克隆项目再安装:

git clone https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip install -r requirements.txt

最后下载一个基座模型。
新手推荐用 Qwen2.5-1.5B-Instruct,只有 1.5B 参数,显存压力小。
通过 Hugging Face 镜像站下载:

huggingface-cli download Qwen/Qwen2.5-1.5B-Instruct --local-dir ./Qwen2.5-1.5B-Instruct

如果下载慢,可以用国内镜像 HF_ENDPOINT=https://hf-mirror.com 再试。

跑通第一条微调命令

用 LLaMA-Factory 做 LoRA 微调最简单。
进入项目目录,创建一个数据集文件 data/custom.json,格式如下:

[
  {
    "instruction": "写一首五言诗",
    "output": "床前明月光,疑是地上霜。"
  }
]

然后在 data/dataset_info.json 里注册这个数据集,加上:

"custom": {
  "file_name": "custom.json",
  "columns": {
    "prompt": "instruction",
    "response": "output"
  }
}

接着运行微调脚本(单卡环境):

CUDA_VISIBLE_DEVICES=0 python src/train_bash.py \
    --stage sft \
    --model_name_or_path ./Qwen2.5-1.5B-Instruct \
    --dataset custom \
    --template qwen \
    --finetuning_type lora \
    --output_dir ./output \
    --per_device_train_batch_size 2 \
    --gradient_accumulation_steps 4 \
    --num_train_epochs 3 \
    --logging_steps 10 \
    --save_steps 100

看到终端里输出 Training completed 并且没有报错,说明微调已经跑通了。
整个过程在 1.5B 模型上大概 10 分钟就完成。

新手最容易遇到的几个坑

坑一:CUDA 内存不足——解决方法:减小 per_device_train_batch_size 到 1,启用 gradient_checkpointing。
在命令中加入 --gradient_checkpointing 参数。

坑二:数据集格式不对——LLaMA-Factory 要求 instruction 和 output 都是字符串,并且不能有空值。
用 Python 检查:

import json
with open('data/custom.json', 'r') as f:
    data = json.load(f)
print(len(data), type(data[0]["instruction"]))

坑三:找不到模型文件——确认 model_name_or_path 指向的路径包含 config.json 和 pytorch_model.bin。
如果本地没有下载完整,用上面提到的 huggingface-cli download 重新下载。

坑四:TGI 或 transformers 版本冲突——建议在虚拟环境中重新安装 LLaMA-Factory 的 requirements.txt,不要混装不同版本。

如何确认微调效果

训练结束后,在 ./output 文件夹里会生成检查点。
用下面的命令加载训练好的 LoRA 权重并测试对话:

python src/cli_demo.py \
    --model_name_or_path ./Qwen2.5-1.5B-Instruct \
    --adapter_name_or_path ./output \
    --template qwen \
    --finetuning_type lora

输入你训练时用过的指令,比如“写一首五言诗”,看输出是否和训练数据中你给的答案一致。
如果模型输出了你希望的内容(或者类似),说明微调成功了。

更严谨一些,可以画损失曲线。
在训练过程中 logging_steps 设为 10,程序会在 ./output/trainer_log.jsonl 里记录每个日志步的 loss。
用 matplotlib 画个图,如果 loss 从 1.5 降到 0.1 左右,就说明模型确实学进去了。

如果你正在处理大模型微调零基础入门教程,建议先按本文步骤完整执行,再根据自己的环境和数据集做调整;
遇到异常时优先回看避坑和高频问题部分。

分享到:
上一篇
旧电脑改造低成本AI推理服务器:手把手教你用旧电脑搭建低成本
下一篇
RAG知识库搭建实现私有文档问答:RAG知识库搭建
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意