×

AI“教练”帮助语言模型在文本与代码之间做出选择以解决问题

hqy hqy 发表于2025-07-18 23:16:02 浏览3 评论0百度已收录

抢沙发发表评论

多圈DPO数据采样的示意图:蓝色方块表示中间(非最终)圈,棕色椭圆表示最终圈。信用: arXiv

(2025年)。

DOI:10.48550/arxiv.2502.04350

大型语言模型(LLMs)擅长使用文本推理来理解文档的上下文并提供其内容的逻辑答案。但这些同样的LLMs往往难以正确回答最简单的数学问题。

文本推理通常不是审议计算或算法任务的理想方式。虽然一些LLMs可以生成像Python这样的代码来处理符号查询,但模型并不总是知道何时使用代码,或者哪种代码最有效。

LLMs似乎需要一个教练来引导他们走向最佳技术。

输入 CodeSteer ,一个由MIT研究人员开发的智能助手,指导LLM在代码和文本生成之间切换,直到它正确地回答查询。

CodeSteer本身是一个较小的LLM,它自动生成一系列提示以迭代地引导一个较大的LLM。它在每轮后审查模型的当前和以前的答案,并提供指导以修复或完善解决方案,直到它认为答案是正确的。

研究人员发现,使用CodeSteer增强较大的LLM,其符号任务(如乘法、玩数独和堆叠块)的准确性提高了30%以上。它还使较不复杂的模型在推理技能增强的情况下表现优于更先进的模型。

这一进步可以改善LLMs的解决问题能力 复杂任务 特别难以仅通过文本推理解决,例如在不确定环境中为机器人生成路径或在国际供应链中调度货物。

航空航天学副教授、麻省理工学院信息与决策系统实验室(LIDS)首席研究员樊楚楚表示:“人们正在竞相开发能够完成所有任务的越来越好的模型,但我们采取了一种互补的方法。研究人员花了多年时间开发有效的技术和工具来解决许多领域的问题。我们希望使LLMs能够选择正确的工具和方法,并利用他人的专业知识来增强自己的能力。”

该研究的高级作者Fan 撰写了一篇关于这项工作的论文 , 由LIDS研究生Yongchao Chen、AeroAstro研究生Yilun Hao、伊利诺伊大学厄巴纳-香槟分校研究生Yueying Liu和MIT-IBM Watson AI Lab研究科学家Yang Zhang共同完成。该研究将在机器学习国际会议上发表。

文章发表在 arXiv 预印本服务器上。

一个LLM“教练”

问一个LLM哪个数字更大,9.11还是9.9,它经常会通过文本推理给出错误的答案。但如果让它用代码来回答同样的问题,它可以生成并执行一个Python脚本来比较两个数字,轻松解决问题。

LLMs最初接受了理解和预测人类语言的训练,即使代码更有效,他们也更有可能使用文本回答查询。虽然他们已经学会通过微调生成代码,但这些模型通常会生成错误或效率较低的代码版本。

麻省理工学院的研究人员没有试图重新训练像GPT-4或克劳德这样强大的LLM来提高这些能力,而是微调一个更小、更轻的LLM来引导一个更大的模型在文本和代码之间。微调一个较小模型并不会改变更大的LLM,因此不会有破坏更大模型其他能力的风险。

陈说:“我们也受到了人类的启发。在体育运动中,教练可能不比团队中的明星运动员更好,但教练仍然可以给出有用的建议来指导运动员。这种指导方法也适用于LLMs。”

这个名为CodeSteer的训练器与更大的LLM一起工作。它首先审查一个查询,确定文本或代码是否适合这个问题,以及哪种代码最好。

然后它为较大的LLM生成一个提示,告诉它使用编码方法或文本推理来回答查询。较大的模型遵循这个提示来回答查询,并将结果发送回CodeSteer,由 CodeSteer进行审查。

如果答案不正确,CodeSteer将继续提示LLM尝试可能解决问题的不同方法,例如在Python代码中加入搜索算法或约束,直到答案正确。

“我们发现,通常较大的LLM会试图懒惰,使用更短、更低效的代码,无法进行正确的符号计算。我们设计了CodeSteer来避免这种现象,”陈说。

符号检查器评估代码的复杂性,并在代码过于简单或效率低下时向 CodeSteer 发送信号。研究人员还将一个自我答案检查器集成到CodeSteer中,该检查器提示LLM生成计算 答案 的代码 以验证其正确性。

处理复杂的任务

当研究人员设计CodeSteer时,他们找不到合适的符号数据集来微调和测试模型,因为许多现有的基准没有指出某个查询是否可以用文本或代码来最好地解决。

因此,他们收集了一个包含 37 个复杂符号任务的语料库,包括空间推理、数学、顺序推理和优化,并构建了自己的数据集,称为 SymBench。他们实施了一种微调方法,利用 SymBench 来最大限度地提高 CodeSteer 的性能。

在他们的实验中,CodeSteer的表现优于他们评估的所有九种基线方法,并将平均准确率从53.3%提高到86.4%。即使在不可见任务和各种LLMs上,它也保持了类似的性能。

此外,使用CodeSteer增强的通用模型可以比设计为专注于复杂推理和规划的最先进的模型实现更高的精度,同时所需的计算量要少得多。

陈说:“我们的方法使用了LLM自身的能力。通过增强LLM的智能编码能力,我们可以将一个已经非常强大的模型提升到更高的性能。”

将来,研究人员希望简化 CodeSteer,以加快其迭代提示过程。此外,他们正在研究如何有效地微调一个统一的模型,该模型能够在文本推理和 代码 生成之间切换,而不是依赖于一个单独的助手。

“作者们提出了一种优雅的解决方案,以解决LLMs中工具利用这一关键挑战。这一简单而有效的方法使最先进的LLMs能够在无需直接微调的情况下实现显著的性能提升,”未参与此项工作的谷歌云AI部门研究科学家Jinsung Yoon表示。

"这项研究代表了一项重大贡献,有望显著增强LLMs在他们目前面临的各种任务中的应用。"

谷歌DeepMind的资深科学家王迟(Chi Wang)补充说:“他们成功地训练了一个较小的专业模型,以便从战略上指导较大的先进模型,这一点尤其有影响力。”王迟没有参与这项工作。

“这些来自不同AI‘代理’的智能协作,为在复杂的现实场景中实现更强大、更灵活的应用铺平了道路。”

更多信息: 陈永超等人,CodeSteer:通过代码/文本指导的符号增强语言模型, arXiv (2025)。 DOI:10.48550/arxiv.2502.04350