Capability Injection 指在已有 base model 或 intermediate checkpoint 上,通过 targeted data、continued pretraining、SFT-like data、verifier filtering 或合成数据增强某类能力。它常发生在 mid-training 阶段,因为此时模型已有通用表示,继续训练可以更高效地塑造特定能力。

它与 Domain Adaptation 相关,但不完全相同。Domain adaptation 关注分布或领域,例如法律、医疗、金融;capability injection 关注能力维度,例如数学推理、代码生成、工具使用、长上下文、多语言、格式遵循。

常见能力

能力数据形态训练信号
Math reasoning题目、解答、证明、CoT、verifier 通过样本NTP、SFT、RLVR
Code仓库、函数、测试、issue、patch、执行结果NTP、SFT、unit-test filtering
Long context长文档、多文档 QA、代码仓库、长对话NTP、retrieval tasks
Tool usetool traces、API docs、函数调用样本SFT、schema validation、RL
Multilingual多语言高质量文档、翻译对、跨语言 QANTP、SFT
Structured outputJSON/XML/YAML/schema examplesSFT、schema validation
Scientific reasoning论文、教材、实验报告、公式推导NTP、SFT、verifier

能力注入的关键不是简单增加某类数据,而是让训练信号与目标能力匹配。例如,代码仓库 NTP 能增强代码分布建模,但不一定让模型学会根据测试修 bug;数学题解 NTP 能增强解题模式,但可验证任务可能需要 verifier 或 RLVR。

数据设计

能力注入通常需要专门数据工程:

  • 选择高质量 seed data;
  • 构造目标能力任务;
  • 用 teacher model 或程序生成候选;
  • 使用 verifier / unit test / schema validator 筛选;
  • 做 semantic dedup 和 contamination audit;
  • 与通用 replay data 混合;
  • 记录能力数据比例和阶段。

数据质量比数据量更关键。低质 CoT、错误代码、不可执行工具调用或污染题库会直接塑造错误能力。

训练方式

常见方式包括:

  1. CPT-style injection:继续语言建模,适合代码、数学文本、科学文档、长文档。
  2. SFT-style injection:用 prompt-response 或 tool trace,适合工具使用、结构化输出和任务格式。
  3. Verifier-filtered distillation:生成多个候选,只保留通过测试或验证的样本。
  4. RLVR / reward-based training:对可验证任务使用 reward 进一步优化。
  5. Curriculum injection:从简单能力样本逐步过渡到复杂样本。

不同方式可以叠加。例如,代码能力可先用仓库 CPT,再用 issue/patch SFT,最后用 unit-test reward 或 rejection sampling。

与 Post-training 的边界

能力注入如果发生在 base 或 intermediate checkpoint 上,通常更关注能力表示;post-training 更关注交互行为和用户可控性。

例如:

  • 数学 CPT 让模型更熟悉数学文本和推理轨迹;
  • 数学 SFT 让模型学会按题目输出解答;
  • RLVR 让模型优化可验证答案;
  • final alignment 让模型在用户对话中安全、简洁、可控地展示能力。

不要期待单一阶段完成所有目标。能力形成和行为对齐应分层设计。

评测

能力注入需要同时评估目标能力和副作用:

  • target benchmark;
  • held-out domain validation loss;
  • contamination 检查;
  • 通用 benchmark;
  • 相关能力迁移;
  • 无关能力退化;
  • 输出格式和安全行为;
  • 后续 SFT/RL 后能力是否保留。

尤其对数学和代码,benchmark contamination 很容易造成虚高。对工具使用,schema 合法不等于任务成功;对多语言,平均分不代表低资源语言改善。

风险

  • 能力过拟合:模型只擅长训练格式,而非真实任务。
  • 负迁移:目标能力提升,其他能力下降。
  • 风格污染:模型生成过多题解式、代码式或工具式文本。
  • Verifier bias:模型学会取悦验证器,而不是真正解决问题。
  • 合成数据偏差:teacher 错误被系统性蒸馏。
  • 阶段混淆:把 SFT 行为数据过早混入 base CPT,改变 base 分布。

相关概念