小红书技术REDtech

怎么让大模型更好地利用上下文?小红书 AllSpark 提出增强上下文学习能力的数据管线

Image

让模型读一份几十页的手册,再据此回答问题、执行操作,是真实业务中最常见的用法之一。这类任务的共同点,是答案不在模型的“记忆”里,而在眼前这份文档中。模型不仅要找到信息,还要把文档定义的规则、事实和流程,忠实地贯穿到整个回答里。

这种能力通常被称为“上下文学习”,它至今仍是大模型的短板。腾讯混元提出的CL-bench 收录了 1,899 个跨 18 个领域的长文档任务,全面地考察了这项能力。即便是前沿模型,能完成的任务也不到 30%。更棘手的是,想通过训练补上这块短板,人工标注极其昂贵,为一份几万字的长文档设计题目、核对答案、写清正确的回答必须包含什么,每一份样本都要消耗大量专家精力。

那么,如何在不依赖大规模人工标注的情况下,让大模型学会从上下文学习?

导读

小红书 AllSpark 团队提出一套合成数据训练流程,利用高质量公开文档数据,不依赖人工标注,构造了 9625 条训练样本。在这批数据的帮助下,团队成功将 Qwen3.6-35B-A3B 在 CL-bench 上的水平从 13.7% 提升至 24.6%,与超过一万亿参数的前沿模型 Qwen3.8-2.4T(23.9%)相当。测试显示,提升还广泛迁移到长上下文理解、指令遵循和推理能力。

论文题目:

Learning to Learn from Context: Synthetic Training from Perturbed Public Documents

论文链接:

https://arxiv.org/abs/2609.33642

Image

图 1:CL-bench 准确率与模型参数量的关系。

01

为什么“从上下文中学习”这么难?

上下文学习与知识检索不同。回答“某个概念的定义”,模型可以靠参数里记住的知识;而“按照某份文档第 4 节的修订规则处理一笔订单”,则要求模型把文档定义的规则、事实和流程应用到任务的每个环节。理想答案需要经得起逐条核对,而现实是,模型的回答往往看起来合理,细看却经不起推敲。

想通过训练获得这种能力,数据是第一个障碍:

  • 主流指令数据集以对话和短上下文为主,几乎没有“忠实使用长文档”的监督信号;

  • 人工标注异常昂贵:出题人既要读透整份文档,又要设计题目、验证答案、写清正确的回答必须包含什么;

  • 现有合成路线要么把真实文档拼起来出题,冒着背诵风险;要么程序化或提示生成文档,逻辑简单、同质化,拿来训练也收益有限。

02

用改写文档让模型摆脱记忆依赖

AllSpark 团队选择第三条路径,保留真实文档的复杂性,但只对它做小扰动。

流水线首先从公开来源收集文档。按照 CL-bench 的领域分类,团队覆盖了其中的 16 个子类,优先选取最近六个月创建的文档,共爬取 3515 篇,涵盖 IETF RFC、SEC 财报、法院判例、arXiv 论文、公开手册、wiki 与百科等。

随后,每篇文档由 GLM-5.2 做一次深度改写:专有名词改名、数值扰动、章节重新编号、列表顺序打乱。改写后的文档与原文可检测地不同,但其结构与复杂度仍来自真实世界。

扰动为什么关键?团队做过一次背诵审计:面对某知名技术标准的题目,模型在不给文档的情况下凭记忆答得近乎全对;同一份标准被改写后,它几乎得了零分,记忆里的知识与改写后的实体发生了冲突。这说明扰动确实切断了参数记忆,教师模型从此无法靠背诵,必须真正读文档、在上下文中推理,并因此暴露出“依赖上下文的推理轨迹”。

值得注意的是,改写的目的是让教师示范读文档的方法,再让学生学习同样的推理方式。

03

生成题目,筛选关键样本

题目与评分标准生成。每篇改写后的文档一次批量生成至多 3 道题,每题配不少于 7 条 rubric,其中至少 5 条必须引用文档中的具体数值。团队定义了 9 类人设(职业角色、系统机器人、角色扮演人物等)、7 类题型(深度推理、事实检索、计算等)和 4 类 rubric(过程、内容、人设、格式),保证题目的多样性与可验证性。

答案生成。教师模型 Qwen3.8-2.4T 以改写后的文档为上下文作答,保留教师的原生推理轨迹。团队在早期实验中发现,使用原生轨迹比“优化”过的版本更能教会学生推理,哪怕其中一些步骤并不完美。

Gap Check。每道题让教师答两遍,一次带文档,一次不带。裁判模型分别打分,得到带文档通过率 p₊ 与无文档通过率 p₋,只有同时满足三个条件的样本才被录取:

  • p₊ ≥ 0.60:看文档,这道题是能答对的;

  • p₋ ≤ 0.30:只凭记忆,几乎答不对;

  • p₊ − p₋ ≥ 0.40:文档是回答此题的必要条件。

32.5% 的样本被这道关卡筛掉。对被拒样本,团队会把拒绝原因回填给生成器重新出题再验一次,以提高产量。最终,流水线从 3515 篇文档得到 9625 条样本,全程没有人工标注。

Image

图 2:文档扰动合成训练流水线。文档经过深度改写后,由大模型生成题目、rubric 和原生推理轨迹,并通过筛选得到真正依赖上下文的样本。

04

上下文学习能力提升显著

团队以 Qwen3.6-35B-A3B 为学生模型,先用合成数据做 SFT,再用 GSPO 做 rubric 奖励的强化学习。

Image

SFT 将基座从 13.7% 提升至 22.8%,SFT + RL 进一步达到 24.6%,超过 Qwen3.8-2.4T(23.9%)与 HY3(23.5%)。对一端是 35B、另一端是万亿参数前沿模型的对比来说,这是一个值得注意的结果。

实验中出现了两个有意思的现象:

  • 最强教师 ≠ 最好学生。Kimi-K3 本身在 CL-bench 上最强(27.0%),教出的学生却最弱(19.7%);成绩中游的 Qwen3.8-2.4T 教出了最好的学生(22.8%)。学生的表现并不简单跟随教师的成绩。

  • 以 SFT 为起步 RL 能取得更好的效果。不对基座做 SFT、直接 RL 只能到 16.9%。而两位不同教师 SFT 出的学生(19.8% 与 22.8%),经过 RL 后几乎收敛到同一水平(24.5% 与 24.6%)。

05

模型还有哪些能力得到了提升?

在 CL-bench 之外的通用能力评测板上,提升的分布与训练数据的设计高度一致:

Image

按维度平均后可以看到,指令遵循、长上下文理解、推理能力提升较为显著,知识类则基本持平,代码能力略有下降。这与数据设计的意图一致:这套流水线教的是“如何使用上下文”,而不是世界知识。RL 后则没有观察到带来全面的通用增益。

06

总结和展望

预训练教会了模型文档的内容,却没有教会它如何按文档办事。这项工作给出了一条零人工标注的路径:保留真实文档的复杂性,用小扰动切断参数记忆,再用引导出的教师推理轨迹教给学生模型。35B 的学生在 CL-bench 上追平万亿参数前沿模型,并把提升带向长上下文、指令遵循与推理。团队希望这一可复现、可扩展的做法,能推动围绕上下文学习推理的进一步研究。

///

作者简介

  • 吴昊一,AllSpark Pevek 组算法实习生,上海科技大学信息科学与技术学院在读博士生。

  • 重云,AllSpark Pevek 组员工。

  • 沐川,AllSpark Pevek 组负责人。

欢迎投递:

【基础模型算法实习生】小红书招聘

Image