跳转至

SFT 说明

SFT 是当前项目里另一条模型训练主线的基础概念。

SFT 是什么

SFT 全称是 Supervised Fine-Tuning,也就是监督微调。

它的基本做法是:

  1. 准备输入与理想输出的配对样本。
  2. 把这些样本送给模型训练。
  3. 让模型在已有能力基础上,更贴近目标场景的回答方式。

在这个项目里,SFT 的作用不是让模型学会“语言是什么”,而是让模型更像一个邮政客服助手。

为什么这里需要 SFT

只靠基座模型时,模型虽然已经具备通用对话能力,但它对邮政客服场景的表达、边界、术语和任务格式并不会天然对齐。

因此这里需要用 SFT 做几件事:

  1. 让模型更贴近邮政客服语气。
  2. 让模型更熟悉 EMS、中国邮政、物流异常、禁限寄、资费、赔付等场景。
  3. 让模型更稳定地输出项目里需要的结构化格式。

SFT 和 RAG 的关系

这个项目里,SFT 和 RAG 不是替代关系。

它们分别解决的是不同问题:

  1. SFT 负责让模型“更像这个场景里的助手”。
  2. RAG 负责让模型“回答时有外部知识依据”。

如果只有 SFT,没有 RAG,模型会更像邮政客服,但面对时效性、规则性很强的问题时,仍然容易脱离知识源自由发挥。

如果只有 RAG,没有 SFT,模型虽然能拿到知识片段,但回答风格、格式稳定性和场景表达未必会对齐。

当前项目里的训练口径

在当前整理版里,SFT 主线主要通过 Apple MLX 路线和 LoRA 方式组织。

也就是说:

  1. 训练形式是 SFT。
  2. 参数更新方式主要走 LoRA。

这样既保留了监督微调的效果,又控制了训练和实验成本。