任务知识该写进提示词还是微调进权重?KV-Skill 外挂算子把 4B 模型准确率从 23.4 拉到 77.2
密歇根大学提出 KV-Skill,把任务技能从提示词文本编译成模型可直接读取的外挂低秩算子。Qwen3.5-4B 在 LiveMath 上准确率从文本技能的 23.4 提升到 77.2,且不占用任何提示词位置;在同等参数预算的强化学习对比中 8 个设置赢下 7 个。
一、当"写得对"不等于"做得到"
在企业落地大模型时,工程团队几乎都会遇到同一个岔路口:一段业务流程知识——比如风控审核的判断链路、合同条款的抽取顺序、医保编码的匹配规则——到底应该写进系统提示词,还是通过微调固化进模型权重?
两条路各有硬伤。写进提示词,好处是可读、可审计、可随时替换,坏处是模型每次调用都要重新"读一遍并翻译成内部计算",而且一段流程写得再正确,模型也可能执行不了;微调进权重,好处是模型能直接调用这份能力,坏处是这份能力被焊死在权重里,难以单独加载、卸载或分发给别的团队。
来自密歇根大学安娜堡分校的 Zhaowei Han、Xiang Zhang(共同一作)与 Jie Liu 等人在 2026 年 8 月 5 日提交的论文 KV-Skill: Forging Expertise in the Model’s Native Language 中,给出了第三条路:把任务知识既不放进提示词、也不放进权重,而是编译成一个模型能直接读取的外挂算子,用一个轻量接口挂到冻结的骨干模型上。
这篇论文最引人注意的一组数字是:同一份数学解题流程文档,作为文本技能喂给 Qwen3.5-4B 时准确率只有 23.4(基线 22.7,几乎没有增益),但把它编译成 KV-Skill 算子后,准确率跃升到 77.2。知识没变,变的只是模型访问它的方式。
二、把文本技能"编译"成模型母语
KV-Skill 的核心设计是一个外部因子化联想算子。在选定的若干注入层上,算子被写成 M_s = W_s · U_sᵀ 的形式:U_s 作为键负责寻址,W_s 作为值负责返回响应。当前残差状态作为查询进来,算子返回一个与任务相关的响应向量,通过一条独立的残差旁路注入回主干。
这里有一个容易误解的地方需要澄清:尽管名字里带 KV,它读的不是注意力机制的 KV Cache。它既不往提示词里加 token 位置,也不往注意力缓存里加条目,因此不会随对话轮次增长。骨干模型全程冻结。
论文设计了两条互补的构造路径:
路径一:注册(Registration)。 当团队手里已有一份写好的流程文档时,只需一次预填充就能把这份文本"收割"成高分辨率算子 M_s,然后固定这个算子,只训练一个每骨干共享的轻量接口 I。注意这里训练的不是任务,而是"读取器"——同一个接口可以服务这个骨干上的所有技能。
路径二:奖励学习(Reward Learning)。 当根本没有可写的流程文档时,直接用可验证奖励从任务结果中训练出一个紧凑的隐式算子,骨干依然冻结。它既可以从零开始,也可以从已有文本技能初始化。
论文最有洞察力的分析在于:注册过程本质上是一个编译器。收割出的算子初始时在每个注入层都为文本的每个 token 保留一个槽位,看起来像是原样保存了整份文档。但作者用 SVD 对算子做秩截断后发现,每个注入层只保留一个任务对齐方向,就能保住完整算子 90–100% 的收益(在 LiveMath、SearchQA、STaRK-Prime 三个任务上验证)。而幅度匹配的随机方向最多只能保住 22%,在 SearchQA 上直接打回基线水平——这排除了"只是加了个扰动幅度"的解释。
不过压缩到秩一,并不意味着可以简单地把这个方向恒定叠加上去。论文的对照实验显示:在同样只用一个响应方向的前提下,查询相关的动态强度调制比学习到的固定常数强度高出 25.0 个百分点(LiveMath 79.8 vs 54.8),随机方向 26.6,打乱寻址 49.2。也就是说,方向携带的是"这个任务该往哪偏",而根据当前残差状态决定"这一步该偏多少、往哪个符号偏",是同等重要的第二个组件。
三、实验:跨 10 个基准、4 个骨干,同预算下赢 LoRA
论文在 10 个基准、来自 3 个模型家族的 4 个骨干上做了验证。几组关键结果值得单独拎出来看。
文本 vs 编译。 Qwen3.5-4B 在 LiveMath 上:基线 22.7,文本技能 23.4,SkillOpt(用任务数据优化过的文本技能)52.0,SoftSkill(模仿训练的软前缀)64.5,KV-Skill 注册 77.2。因为 SkillOpt 同样用到了任务训练数据,这个差距不能简单归因于"多看了监督信号"。
任务身份确实住在算子里。 作者固定接口 I,只替换加载的算子:换成随机算子,Qwen3.5-4B 的 LiveMath 准确率回落到 25.4,gpt-oss-20b 回落到 24.7;换成别的任务的算子,分别是 36.3 和 27.2;加载正确算子才是 77.2 和 65.3。SearchQA 的 EM 分数呈现同样的模式(Qwen3.5-4B:基线 68.1 → 正确算子 79.3;gpt-oss-20b:65.1 → 78.3)。这条实验很关键——它证明 KV-Skill 是真正可插拔的能力对象,而不是把任务偷偷藏进了接口里的隐式微调。
同参数预算下的基座对比。 论文用相同的奖励目标、训练预算、解码协议和参数量,横向对比了 KV-Skill 算子、软前缀、Prefix KV 和 LoRA 四种可训练基座:
| 骨干 | 可训练基座 | 参数量 | SearchQA EM(从零) | LiveMath Acc(从零) |
|---|---|---|---|---|
| Qwen3.5-4B | KV-Skill 算子 | 1.330M | 80.0 | 75.6 |
| Qwen3.5-4B | 软前缀 | 1.329M | 75.6 | 59.7 |
| Qwen3.5-4B | Prefix KV | 1.327M | 69.4 | 15.3 |
| Qwen3.5-4B | LoRA | 1.376M | 70.1 | 80.7 |
| Qwen3.6-35B-A3B | KV-Skill 算子 | 1.067M | 82.8 | 72.6 |
| Qwen3.6-35B-A3B | 软前缀 | 1.067M | 74.7 | 25.0 |
| Qwen3.6-35B-A3B | Prefix KV | 1.065M | 74.2 | 33.1 |
| Qwen3.6-35B-A3B | LoRA | 1.024M | 79.9 | 52.4 |
KV-Skill 在 8 个匹配设置中赢下 7 个,在更大的 Qwen3.6-35B-A3B 上全面领先;唯一失手是 Qwen3.5-4B 的 LiveMath,LoRA 以 80.7 略高于 KV-Skill 从零训练的 75.6(用文本技能初始化后 KV-Skill 可达 79.0)。这个对照的价值在于:同样的奖励优化,作用在不同的可训练基座上效果差别巨大——决定上限的不只是目标函数,还有承载学习状态的表示形式。
部署侧的账要单独算。 论文附录里的资源核算对工程落地更有参考价值。文本技能作为文件只有 2.7–13 KiB,但每次查询都要额外处理 636–2806 个 token:在 LongHealth 上,加载文本技能让平均提示词从 184 token 涨到 12,040 token(65 倍),QuALITY 上从 150 涨到 5,848(39 倍)。KV-Skill 在这两个场景下的提示词长度与基线完全相同,因为算子根本不进入注意力序列。
存储侧:文本派生的算子当前实现用 FP32 分离存储为 40 MiB,做因子绑定 + FP16 后降到 10 MiB(与 rank-8 LoRA 的 10.0 MiB 持平),压到秩一表示后仅 20 KiB,是同配置 LoRA 的 1/500。奖励学习出的紧凑算子约 64 KiB(16,384 个参数)。
代价也很诚实:每个骨干需要一个共享接口(Qwen3.5-4B 上约 13.1M 参数、53 MB),这是一次性固定成本,随注册技能数增加而摊薄——论文实测同一个接口服务 9 个 KV-Skill 时参数量没有增长。推理开销方面,预填充阶段额外开销在 128 token 时为 1.8%,512 和 2048 token 时约 1.0%;生成 64 个新 token 的解码开销为 6.5%。此外,作者把 SearchQA、LiveMath、STaRK-Prime 依次注册进同一个 Qwen3.5-4B 接口,三阶段结束后未观察到可测量的遗忘,LiveMath 表现与单技能接口持平——但前提是训练时必须做回放,去掉回放后早期任务会退化。
四、商业启示:能力交付正在从"一个模型"变成"一个技能库"
对思陌大模型微调的客户交付而言,KV-Skill 揭示的趋势值得提前布局。
指令对齐与领域适配的交付形态可能要变。 过去我们给客户交付的是一个微调好的模型权重(或一组 LoRA),客户要新增一项业务能力就得重新跑一轮训练、重新做回归测试。KV-Skill 提供的思路是:把"读取器"(接口)当作一次性基建,针对每个骨干训练一次并长期复用;把"能力"做成 20 KiB 到 64 KiB 量级的算子文件,按需加载、替换、下线。这对于需要同时服务多个业务线、且各业务流程频繁变更的客户(金融风控、供应链审单、政务工单),意味着能力迭代周期可以从"重训一轮"压缩到"换一个算子文件"。
数据工程的价值反而被放大了。 论文里一条容易被忽略的结论是:文本技能初始化"有时有帮助,但从零开始有时更好",说明一份写得好的流程文档是有价值的先验,却既非必需也非上限。这恰好对应我们在数据工程服务中的两种交付:当客户已有成文的 SOP、审核手册、专家经验时,可以走"编译"路线快速拿到高质量算子;当客户只有历史结果数据、没有可写的流程时,则用可验证奖励从结果里把算子学出来。两条路可以并行验证,选效果好的那条。
推理部署要重新算提示词账。 那个 65 倍的提示词膨胀数字,对长文档场景的成本影响是实打实的。很多客户当前的做法是把几千 token 的业务规则塞进系统提示词,每次调用都在为同一段文字付费。把这部分固化到算子里,提示词回到基线长度,代价是 1.0–1.8% 的预填充开销和 6.5% 的解码开销——在长上下文、高并发场景下,这笔账很可能是划算的。我们在模型评估优化和推理部署服务中,可以把"提示词常驻成本 vs 算子注入开销"作为一个新的评估维度纳入交付前的方案测算。
需要提醒的是,这项工作仍有明确边界:文本派生的算子是骨干特定的,构造在各自骨干的残差空间里,跨骨干直接迁移尚未验证;长时程智能体任务上的证据有限,稀疏的回合级奖励让信用分配变得困难;对话中途加载算子可能需要对已有历史重新预填充。作者本人也在伦理讨论中提醒:外挂算子会让行为变化比提示词指令更难被察觉,生产部署应当核验技能来源、逐个评估后再上线,并保留日志、移除与回滚机制。这几点对企业客户的治理要求,恰恰是我们在方案设计阶段就要写进去的。
参考文献
Han, Z., Zhang, X., Han, B., Liu, K., Hu, D., & Liu, J. (2026). KV-Skill: Forging Expertise in the Model’s Native Language. University of Michigan, Ann Arbor. arXiv: 2608.05475 | DOI: 10.48550/arXiv.2608.05475 | 代码仓库
相关工作:
- Hu, E. J., et al. (2022). LoRA: Low-Rank Adaptation of Large Language Models. ICLR 2022. arXiv: 2106.09685
- Li, X. L., & Liang, P. (2021). Prefix-Tuning: Optimizing Continuous Prompts for Generation. ACL 2021. arXiv: 2101.00190
- Lester, B., Al-Rfou, R., & Constant, N. (2021). The Power of Scale for Parameter-Efficient Prompt Tuning. EMNLP 2021. arXiv: 2104.08691
📄 论文原文信息
| 论文标题 | KV-Skill: Forging Expertise in the Model's Native Language |
| 作者 | Zhaowei Han, Xiang Zhang(共同一作),Jie Liu 等,University of Michigan, Ann Arbor |
| 期刊 | arXiv preprint (cs.LG) |
| 发表时间 | 2026-08-05 |
| DOI | 10.48550/arXiv.2608.05475 |
论文原文信息地址:https://www.simolm.com/blog/2026-08-09-kv-skill-external-operator/