blog.dopana

Back

模型微调(Fine-Tuning)是将预训练大语言模型(LLM)或基础模型适配至特定任务和业务场景的关键技术。

为什么需要微调?#

虽然通用基础模型具备强大的泛化能力,但在处理以下需求时,微调显得尤为必要:

  • 领域专业知识(医疗、法律、金融等)。
  • 严格的输出格式要求(JSON Schema、SQL 查询)。
  • 企业特定的语言风格与指令遵循。

[!NOTE] 微调改变的是模型的表达行为与习惯,而检索增强生成(RAG)则侧重于提供实时外部知识。

主要微调方法#

  1. Full Fine-Tuning(全参数微调): 更新模型的所有权重。需要极其庞大的算力资源(多张 A100/H100 GPU)。
  2. PEFT(参数高效微调): 仅更新一小部分参数或添加轻量级 Adapter 模块。
  3. Instruction Tuning(指令微调): 使用 Prompt-Response 对训练模型精准遵循指令。
fine_tune_example.py
from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "meta-llama/Llama-3.2-3B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
# [!code focus]
# 准备使用 Hugging Face Trainer 进行微调
python

数据准备步骤#

数据质量决定了微调 80% 的效果:

  • 文本清洗与标准化。
  • 格式化为 Instruction-Response 结构。
  • 构建合理的训练集与验证集。

参考文献#