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

仓库级开发先别急着写代码:341个任务测下来,多轮追问把细粒度需求对齐从0.212拉到0.494

导语

仓库级软件开发有了一个交互式需求澄清基准:341个任务上,多轮追问把细粒度需求对齐从0.212提高到0.494,但问得有效不等于写出的需求文档更好。

Source-provided article image: Don't Guess, Just Ask: Evaluating Interactive Requirement Clarification for Repository-Level Software Development
Figure 1 · arXiv

正文

仓库级软件开发现在可以单独考察“先问清楚再动手”这一步,而不只是考察拿到需求后写代码的能力。 此前的仓库级代码生成基准要么直接给完整规格,要么只给含糊请求,都不包含多轮需求澄清。 新基准包含341个任务,来自游戏、小程序和网页开发三类来源,每个任务配一份经人工校验的详细需求文档和对应的代码评测产物。

澄清过程被拆成两个可分别测量的方面:提问是否问到了新需求,以及最终写出的需求文档是否贴合真实需求。 此前对澄清的评测多集中在函数级任务,且模拟用户往往按固定交互模式回应。 评测用基于大模型的用户模拟器,其三种用户画像取自真实开发者与编码智能体多轮对话数据集,两名标注者在180个交互轨迹上对画像的平均分类准确率为95.8%。

多轮澄清确实让需求文档更完整,尤其是补上了初始意图里缺失的细粒度要求。 与直接从初始意图生成需求文档相比,经过多轮澄清后生成的文档质量更高。 六个模型的平均BERTScore F1从0.664升到0.712,平均需求对齐从0.212升到0.494,相对提升133.1%。

澄清带来的需求信息还能继续传导到代码实现上。 从初始意图直接写代码,与先写出需求文档再写代码,是两种不同的起点。 在三个来源基准上,分数从初始意图到直接生成文档再到澄清后文档依次上升:GameCraft-Bench为0.012、0.273、0.418,MiniAppBench为0.451、0.543、0.943,WebGen-Bench为0.271、0.384、0.659。

接下来

这项工作考察的是仓库级软件开发中从含糊意图到需求文档的多轮澄清,任务覆盖游戏、小程序和网页开发三类,评测对象是六个大模型以及其中两个模型对应的编码智能体外壳。读者主要是做代码生成评测和需求工程的团队。原文提出,需求分析与实现阶段可以拆开:先用基础模型做需求分析与文档生成,再把文档交给编码智能体外壳做仓库级实现。

用户模拟由大模型承担,可能无法完全覆盖真实开发者在表达需求、提供信息和修改需求上的差异,原文以三种画像和人工校验来缓解这一点。原文还指出,澄清有效性与需求文档质量反映的是两种相关但不同的能力,模型在不同用户画像下的表现差异明显,编码智能体外壳提高了澄清有效性却没有进一步提高需求文档质量。

来源