LoRA 微调实战流程(理解版 + 伪代码)
目录
LoRA 是什么
LoRA(Low-Rank Adaptation)是一种参数高效微调方法。
它不是改动所有模型参数,而是只训练一小部分“增量参数”,从而显著降低显存和训练成本。
你可以把它理解为:
“给原模型加一个可插拔的小适配层,而不是重写整个模型。”
为什么 LoRA 适合大多数团队
- 训练成本低
- 迭代速度快
- 可同时维护多个业务适配器
这对中小团队非常实用:同一个基础模型,可以挂不同 LoRA 适配器服务不同业务线。
LoRA 最小训练流程
训练伪代码示例
# 伪代码,仅用于理解流程
model = load_base_model("base-llm")
model = attach_lora(model, rank=8, alpha=16, target_modules=["q_proj", "v_proj"])
train_dataset = load_jsonl("train.jsonl")
eval_dataset = load_jsonl("eval.jsonl")
trainer = Trainer(
model=model,
train_data=train_dataset,
eval_data=eval_dataset,
lr=2e-4,
epochs=3,
batch_size=4
)
trainer.train()
save_lora_adapter(model, "lora-adapter-v1")
评测与上线检查清单
- 离线指标:准确率、格式合格率、拒答准确率
- 成本指标:单请求平均 token 与延迟
- 回滚策略:保留基础模型 + 上一版 LoRA
- 前端适配:显示当前模型版本与 traceId