![]()
这项由诺基亚贝尔实验室(Nokia Bell Labs)与法国巴黎理工学院旗下的巴黎电信学院(Télécom Paris, Institut Polytechnique de Paris)联合开展的研究,以预印本形式发布于2026年5月,论文编号为arXiv:2601.07525v2,有兴趣深入探究的读者可通过该编号检索完整原文。
**当AI被"格式紧箍咒"束缚了思维**
你有没有遇到过这样的情况:老师要求你写一篇作文,必须严格按照"开头-分论点一-分论点二-结论"的格式来,结果你发现自己花了大量精力斟酌格式,反而把该说的道理没说清楚?大语言模型(也就是我们平时所说的AI对话系统,比如ChatGPT这类工具)正面临着完全一样的困境。
这个困境的根源在于,AI系统被要求同时完成两件事:一是好好思考问题,二是把答案装进规定的格式盒子里。格式盒子越严格,思维空间就越受限。这项研究的核心问题正是:能不能让AI先把思维过程彻底放开,等想清楚了再套上格式外衣?
研究团队给出的答案是一个名为"In-Writing"的新框架。这个框架就像给AI设计了一套"先草稿后定稿"的工作流程,让它在思考阶段完全自由发挥,只有在准备输出最终答案时才启动格式约束机制。实验结果表明,这种做法在多项任务上的准确率最高可以比原有方法提升27%。
**一、AI回答问题为什么需要"格式"这件事?**
在理解这项研究之前,需要先搞清楚一个背景问题:AI为什么要在乎格式?
当我们在工作或生活中使用AI工具时,很多时候并不是随便聊聊天,而是需要AI输出结构化的内容。比如,医院系统需要AI给出标准化的诊断代码,财务软件需要AI输出固定格式的数据,开发者工具需要AI生成符合特定语法规范的代码。这些场景的共同特点是:输出必须"合规",不能有一点歪斜,否则后续系统根本无法处理。
用一个更直观的比方来说,这就像餐厅的后厨系统和前台点单系统之间的对接。顾客可能用各种方式说"我要一份宫保鸡丁,少辣",但后厨收到的指令必须是标准化的代码格式,比如"item_code: 0031, spice_level: 1"。如果AI输出的答案像顾客点单一样随意,后台系统根本不知道该怎么处理。
正因如此,研究人员长期致力于让AI输出更加规范、可解析的内容。目前主流的方法大致分为三种路线,而这三种路线各自都有明显的缺陷,这也正是本研究的出发点。
**二、三条老路各有各的坑**
第一条路叫做"自然生成"(Natural Generation),顾名思义,就是让AI像聊天一样随意回答,不施加任何格式限制。这种方式的优点是AI的思维完全自由,能充分展开推理过程,推理质量往往相当不错。但缺点也很明显:AI有时候会把答案藏在一大段文字中间,需要额外设计程序去"挖"出来,而且挖出来的结果不一定准确。更重要的是,输出格式无法保证,对于需要结构化输出的工业场景几乎没有实用价值。
第二条路叫做"硬约束解码"(Constrained Decoding),这是研究界为了解决格式问题而开发的技术。它的工作原理类似于给AI戴上一副特殊的"滤镜"——在AI每生成一个词之前,系统会检查这个词是否符合预先设定的格式规范,如果不符合就直接屏蔽掉,强迫AI只能选择"合法"的词语。从格式保证的角度来说,这种方法非常可靠,输出的内容百分之百符合规范。但问题在于,这副"滤镜"同时也限制了AI的思维。研究发现,这种方法会让AI在推理阶段就受到约束,导致一些在普通情况下完全正确的推理路径被强行切断,最终结果反而变差了。用打比方的方式说,这就像你在解数学题时,老师规定你只能使用"加法"和"减法",所以你不得不放弃更简洁的乘法解法,绕了一大圈才得到答案,有时候甚至绕不回来。
第三条路叫做"两阶段转换"(NL-to-Format),算是前两种方法的折中。具体做法是先让一个AI用自然语言给出完整的推理和答案,然后再用另一个(通常更大、更贵的)AI把这个自然语言答案转换成需要的格式。这种方法在一定程度上兼顾了推理质量和格式规范,但代价是需要调用两次AI,成本翻倍,而且转换过程本身也可能出错,特别是在需要输出复杂多字段格式时,转换质量很不稳定。更要命的是,如果第二个AI解读第一个AI的输出时出了差错,最终答案就会跑偏,而你甚至不知道问题出在哪一步。
还有一种叫做CRANE的方法,它试图在推理过程中来回切换"自由模式"和"约束模式",用特殊的分隔符号来区分哪些部分是AI在自由推理,哪些部分需要受到格式约束。虽然这个思路有一定创意,但执行起来相当复杂,而且切换的时机很难把控,实际效果也受到了研究团队的质疑。
**三、"先打草稿,再誊正"的In-Writing框架**
面对这三条老路的各种缺陷,研究团队提出了In-Writing。其核心理念可以用书法练习来理解:先在草纸上随意挥洒,把所有想法都记录下来,等到思路完全清晰之后,再拿出正式的格式纸,工工整整地誊写最终答案。
具体的技术实现方式是这样的:AI在回答问题时,首先进入"自由推理阶段",这个阶段完全没有任何格式约束,AI可以用任何它觉得合适的方式思考和表达。当AI认为自己已经想清楚了,它会输出一个特定的"触发词"(trigger token)。这个触发词就像是草稿纸上写下"定稿如下"四个字,标志着推理阶段的结束和格式化输出阶段的开始。从触发词出现的那一刻起,系统才会启动格式约束机制,确保接下来的最终答案完全符合预定规范。
研究团队在原论文中用了一个颇为传神的类比:这种方法类似于图像处理领域的"修复绘画"技术(inpainting),就是只对图像的特定区域进行处理,而不改动其他部分。In-Writing同样只对"最终答案输出"这个特定区域施加格式约束,让推理过程保持完整和自由。
从数学角度来理解(别担心,这里只是帮助理解,不需要真正做计算),传统的约束解码会让格式要求影响到整个推理过程,导致很多合理的推理路径被提前排除。而In-Writing通过将推理阶段和格式化阶段彻底分离,使得推理过程完全不受格式条件的干扰,只有最终的答案输出才需要满足格式要求。这种分离带来的好处是双重的:推理质量不会因为格式约束而下降,同时最终输出又能保证百分之百的格式合规性。
**四、触发词的选择大有讲究——"早醒"的烦恼**
研究团队在设计In-Writing时遇到了一个棘手的问题,他们将其称为"过早触发"(premature triggering)。
回到书法的比喻:如果你在草稿纸上写了一半,突然以为自己已经写好了,就急忙切换到正式格式纸开始誊写,结果发现还有很多内容没想清楚,这时候再想回去补充草稿就麻烦了。In-Writing面临的是类似的问题——如果触发词选择不当,AI可能在还没推理完的时候就误以为"该输出答案了",从而过早启动格式约束,把后续的推理过程也强行套进格式里,反而破坏了推理质量。
研究团队测试了两种触发词策略。第一种叫做"In-Writing-Base",使用了两个触发词:一个是"句子结束符"(``,即AI认为一段话已经说完的信号),另一个是大括号"{"(JSON格式的开始符号,因为研究团队选择用JSON这种结构化格式来包装最终答案)。问题在于,AI在推理过程中可能随时产生大括号这个符号,比如在描述一个集合或者举例时,这就会意外触发格式约束,截断正在进行的推理。
第二种叫做"In-Writing*",只使用一个触发词,就是"句子结束符"``。这个选择的逻辑很简单:``只有在AI真正认为整段输出已经完成时才会出现,它不会在推理中途随意出现。因此,用``作为唯一触发词,可以确保AI在完全自由地推理完毕并自然结束之后,才开始格式化输出。实验结果表明,这个简单的调整几乎完全消除了过早触发的问题,特别是在需要复杂数学推理的任务上,In-Writing-Base可能因为过早触发而损失超过30%的准确率,而In-Writing*则能稳定保持最优性能。
**五、实验设计:公平竞技场上的全面检验**
为了验证In-Writing的效果,研究团队搭建了一个非常全面的测试体系,而且特意设计了一个对自己不利的条件,以此来证明方法的鲁棒性。
在模型选择上,团队测试了18个来自五个不同系列的开源语言模型,参数规模从15亿到140亿不等,涵盖了Qwen(通义千问系列)、Llama、Gemma、DeepSeek以及SmolLM这些在业界广泛使用的模型家族。所有测试都在NVIDIA A40显卡上本地运行,而非依赖商业API服务。
在测试任务上,团队选择了两大类共七个数据集。推理类任务包括:需要多步数学推理的小学数学题库(GSM8K)、将数字替换为变量以测试代数泛化能力的符号变体(GSM-Symbolic)、将单词最后一个字母拼接起来的字母连接任务(Last Letter Concatenation),以及预测物品在一系列交换操作后位置的打乱物品任务(Shuffled Objects)。分类类任务包括:49类医学诊断数据集(DDXPlus)、5类金融文本分类(MultiFin)、体育相关句子的真实性判断(Sports Understanding),以及对格式非常敏感的刻板印象多选题(NI-Task 280)。
特别值得关注的是,研究团队在实验设计上有一个主动"让步":他们沿用了之前其他研究团队的提示词模板,而这些模板完全没有为In-Writing的输出格式提供任何引导。换句话说,AI在推理完之后,完全靠格式约束机制自动输出结构化答案,而不是因为提示词中已经告诉它"请用JSON格式输出答案"。这种设计使得测试条件对In-Writing相对不利,但结果表明,即便在这种不利条件下,In-Writing依然表现优异。
**六、数字背后的故事:实验结果说明了什么**
实验结果揭示了几个非常有意思的现象,每一个都值得细细品味。
第一个现象是"提取方式决定成败"。研究团队发现,在使用相同提示词的情况下,自然生成(NL)、两阶段转换(NL-to-Format)和In-Writing*这三种方法实际上产生了完全相同的推理过程,区别只在于最后一步如何从推理结果中提取答案。也就是说,AI想到的内容是一样的,但不同的"提取工具"带来了截然不同的准确率。In-Writing*的结构化约束提取方式比用另一个大模型来解读的方式更准确,最高可以多提取出27%的正确答案。这个发现非常重要,因为它表明在很多情况下,准确率的差异并不来自AI的推理能力,而来自最后的答案提取环节。
第二个现象是"大模型解读也会出错"。两阶段转换方法依赖一个更大的AI来解读第一个AI的输出,理论上应该很可靠。但实验中发现,解读模型有时候会犯很奇怪的错误。在DDXPlus医学诊断任务上,解读模型有时候会在正确答案前面加上一大段解释性文字,比如"符合给定有效诊断列表的最终答案是……"然后才给出诊断名称,导致后续程序无法正确匹配答案。更令人担忧的是,在字母连接任务中,解读模型有时候会"纠正"第一个AI的输出——比如第一个AI在字母之间加了不必要的连字符,解读模型把这些连字符去掉了,有时候这样的"纠正"反而把错误答案变成了正确答案。这意味着两阶段方法有时候不是在"提取"答案,而是在"修改"答案,这本质上是一种不透明的操作,让人无法信任最终结果的来源。
第三个现象是"格式约束不是银弹"。研究团队通过详细分析发现,In-Writing虽然表现出色,但并非完美无缺。在GSM8K数学题中,存在一些案例,AI在自由推理阶段得出的文字答案是"52500美元",但最终的格式化输出却只写了"52"。这说明格式约束机制在将推理结果"翻译"成结构化输出时,有时候会截断或误解原始推理,这是未来需要继续改进的方向。
在与CRANE方法的对比上,数字差异更加显著。以Llama 3.1-8B模型为例,CRANE在GSM-Symbolic任务上的准确率是33%,而In-Writing*达到了59%,差距高达26个百分点。研究团队还特别指出,这种差距与另一项独立研究的发现高度吻合:从GSM8K到GSM-Symbolic,同等能力的模型通常只会下降约10%的准确率。CRANE框架导致了远超这个正常水平的性能下降,说明它的语法约束确实对推理过程造成了实质性伤害,而In-Writing*的下降幅度则维持在正常范围内。
**七、解析能力与效率:两个不容忽视的维度**
除了准确率之外,研究团队还从两个额外维度对比了各种方法的表现:格式合规率(parsability)和词汇消耗效率。
在格式合规率方面,In-Writing*在所有测试场景中都达到了100%的格式合规率。相比之下,自然生成方法的格式合规率因模型大小和任务类型而差异悬殊,有些情况下甚至不足40%。两阶段转换方法虽然提升了格式合规率,但仍然无法保证100%,而且解读阶段使用的提示词和模型对结果影响极大,稳定性较差。硬约束解码方法也能达到较高的格式合规率,但会影响推理质量,这是一个两难困境。
在词汇消耗效率方面,结果相当令人满意。In-Writing*比自然生成方法多消耗的词汇量非常有限,通常只多出5到20个词(这些额外词汇主要是JSON格式所需的括号、引号等结构性符号)。相比之下,两阶段转换方法虽然在当前测试中只多消耗了2到5个词,但这只是因为测试中的解读任务相对简单;当需要提取的是复杂的多字段结构化输出时,第二个AI需要消耗的词汇量会急剧增加,而且这第二次推理本身就是一笔不小的计算开销。
还有一个细节值得关注:研究团队在复核前人数据时,发现了一些实验设计上的问题。比如,在打乱物品任务的提示词模板中,有两个变体明明列出了七个选项(A到G),却在指令中错误地写道"请从以下四个选项中选择"。另外,少样本示例中有几个题目(比如"挪威男人很无聊"的答案竟然是"种族")和目标任务毫无关联,这些问题都可能影响对比结果的可靠性。这些发现提醒读者,在看待任何AI性能对比数据时,都需要关注实验设计本身的严谨性。
**八、重叠分析:谁能弥补谁的不足?**
研究团队还做了一项很有价值的"交叉分析":在相同推理过程的基础上,In-Writing*和两阶段转换方法分别在哪些题目上成功,哪些上失败,两者的成功与失败是否重叠?
以字母连接任务为例,SmolLM3-3B模型的分析结果显示:有53.5%的题目两种方法都做对了,有34%的题目两种方法都做错了,有0.7%的题目只有两阶段转换做对了,而In-Writing*做错了,但有高达11.8%的题目只有In-Writing*做对了,而两阶段转换却失败了。这个分布说明,In-Writing*能够弥补两阶段转换大部分的失败案例,而两阶段转换能弥补的In-Writing*失败案例却很少。
这种不对称性的来源是两种方法的根本差异:In-Writing*的格式约束机制除了提取答案之外,还能对答案进行隐性的"纠错"——如果AI在推理中输出了格式不合规的内容(比如在字母之间加了多余的空格),格式约束会在输出最终答案时自动过滤掉这些错误,将正确的内容以规范格式呈现出来。这是一种免费附赠的纠错功能,而两阶段转换方法除非解读模型恰好能识别并修正这类错误,否则无法获得这个优势。
**局限性不回避:研究团队的坦诚**
研究团队在论文中明确承认了In-Writing当前版本的主要不足:整个研究过程中,他们没有对提示词进行任何专门针对In-Writing的优化。测试中使用的所有提示词都是为自然生成或两阶段转换方法设计的,里面通常包含类似"请在最后用'answer is:'前缀给出答案"这样的指引,这对In-Writing来说完全没有用。更进一步,随着少样本示例数量的增加,AI会越来越倾向于严格遵守"answer is:"这个格式,反而在某些情况下降低了In-Writing和两阶段转换方法的提取准确率,因为AI给出的答案格式越来越不像JSON结构,而是越来越像自然语言前缀。这表明,如果专门为In-Writing设计优化的提示词,其表现很可能还会进一步提升。
此外,格式约束机制偶尔会在将推理结果转化为结构化输出时产生错误,比如截断数字或混淆符号,这是技术层面仍需改进的问题。
归根结底,In-Writing提供了一个在推理质量和格式规范之间实现双赢的清晰思路:不是让AI在思考时就戴上格式枷锁,而是让它先自由思考,然后通过一个精准的"最后一公里"格式约束将答案装进合适的容器里。这个思路的成本极低(只多消耗5到20个词汇),带来的收益却相当可观——无论是准确率、格式合规率还是系统复杂度的降低,都有明显改善。
对于那些需要在工作中使用AI工具处理结构化输出任务的人来说,这项研究意味着一种更可靠、更高效的AI部署思路即将成为可能。不必再纠结于"要准确率还是要格式",未来的AI系统完全可以在单次调用中同时做好这两件事。有兴趣进一步了解技术细节的读者,研究团队已在GitHub(Nokia-Bell-Labs/InWriting)开放了全部代码,同时原论文arXiv:2601.07525也提供了完整的理论推导和实验数据。
Q&A
Q1:In-Writing框架和普通的AI回答方式有什么区别?
A:普通方式要么让AI完全自由回答(格式没保障),要么从一开始就给AI套上格式枷锁(推理受限)。In-Writing的区别在于它把这两个阶段分开:先让AI完全自由地把问题想清楚,等AI认为自己推理完毕、产生一个特定的"结束信号"之后,才启动格式约束,把最终答案规规矩矩地输出成需要的格式,两个阶段互不干扰。
Q2:过早触发问题是怎么产生的,怎么解决?
A:过早触发是指AI在还没推理完的时候,就误触发了格式约束机制,导致后续推理被强行截断。这个问题的根源是触发词选择不当——如果用大括号"{"作为触发词,AI在推理中随时可能用到这个符号,就会意外启动格式约束。解决方案是只用"句子结束符"作为唯一触发词,因为这个信号只有在AI真正认为整段输出已经完成时才会出现,几乎完全消除了过早触发的风险。
Q3:In-Writing多消耗的词汇量会不会显著增加使用成本?
A:不会。实验数据显示,In-Writing*相比普通自然生成方式,只多消耗5到20个词汇,这些额外的词主要是JSON格式所需的括号和引号等结构性符号。相比之下,两阶段转换方法需要再调用一个大模型来解析答案,整体计算开销远高于In-Writing,而且第二次调用还需要把第一次的完整输出作为输入,输入词汇量本身就很大。所以In-Writing的额外开销是相当微小且固定的。





京公网安备 11011402013531号