跳到主要内容
返回时间线
arXiv来源发表:

代码智能体不再随口追问:先筛出会改变行为的澄清问题,四个智能体上F1领先13.88个百分点

核心概要

代码智能体常把没写清的需求按自己的假设补全,生成看似正确、行为却非用户本意的代码,而事后纠正代价越来越高。CONTRA把澄清拆成两步:先广泛生成候选问题,再用语义过滤和双答案程序执行对比,只留下会稳定改变行为的提问,并结合交互历史决定继续问还是停止。在ClarifyCodeBench上,它与四个代码智能体配合取得最高F1,宏平均比最佳基线高13.88个百分点。

Source-provided article image: CONTRA: Discovering and Qualifying Behavior-Changing Questions for Selective Clarification in LLM Code Generation
Figure 1 · arXiv

深度剖析

代码生成中的澄清从“有问题就问”改为“只问会改变程序行为的问题”,智能体不再用自身假设悄悄填补未写明的需求。 此前的做法难以在找出关键澄清问题与避免多余提问之间取得平衡,多余的问题会打断开发者、拖慢开发。 在ClarifyCodeBench上,CONTRA与全部四个代码智能体配合都取得最高F1,宏平均F1比最佳基线高13.88个百分点。

候选问题先被广泛生成,再按是否与所需行为相关、是否已被需求本身解决来过滤。 保留下来的每个问题都要经过行为层面的检验,而不是靠问题措辞或模型自评来判断重要性。 对每个剩余问题,方法分别以两个看似合理的答案生成程序,并在共享输入上检查是否出现稳定的行为差异,只有产生稳定差异的问题才算合格。

合格问题之后由交互历史决定是继续追问还是停止提问。 在相同LLM和评估协议下,CONTRA的澄清召回率和F1都高于Claude Code与OpenHands这两个编码工具链。 该方法被实现为Claude Code插件,把选择性澄清接入日常开发流程。

启示与展望

报道依据的是摘要层面的信息,未覆盖完整论文。已展示的范围是ClarifyCodeBench基准上的评测:CONTRA与四个代码智能体配合取得最高F1,宏平均比最佳基线高13.88个百分点;在相同LLM和评估协议下,其澄清召回率与F1高于Claude Code和OpenHands。方法以Claude Code插件形式实现,用于把选择性澄清接入日常开发。

摘要未给出各智能体上的分项数值,也未说明基准之外场景的表现。13.88个百分点是宏平均F1的差距,其统计稳定性与在不同LLM下的波动情况尚不清楚。