本文介绍了 Rules to Tools (R2T) 框架,它为科学计算中的代码修复代理提供可直接调用的可执行检查。R2T 将公开的科学需求(如方程、边界条件、输出格式)转化为可运行的脚本,供代理在评估和修改代码时使用。\ \ 在实验中,研究者将 SciCode 修复任务划分为两类:\
- 文本组:仅使用自然语言描述的检查;\
- 工具组:使用 R2T 提供的可执行检查。\ \ 两批任务 ID(共 30 题)中,文本组完整修复率为 26/30,工具组为 29/30。任务层面上,3 题工具优势明显,1 题文本优势,其余 11 题持平。\ \ 在更大的 8 题子集上,文本组得分 13/16,工具组 15/16,Bootstrap 95% 区间为 $[-12.5,\,43.75]$ 百分点,表明差异不具统计显著性。共享定义的 SciCode 大样本(24 题)两组均为 13/24,呈平局。\ \ 针对 5 题提供了不同起始程序的变体,文本组 3/10,工具组 7/10,工具组在任务 17、77、11 上表现更好。初始检查在任务 17 检测到违规,但对 77、11 未报告违规;任务 37 则倾向文本且未检测到违规。\ \ 另一个基于 Python 的端到端流水线也达到了 15/16 的成绩,与专用命令的整体表现持平。\ \ 在匹配的偏微分方程(PDE)子实验中,详细文本检查得分 23/24,工具检查得分 24/24,且工具检查报告的模型输出降低了 $31.2\%$。不同批次的实验显示,使用工具可显著降低代理侧的输出成本,但公共 CPU 使用量在两组中均有所上升。\ \ 这些结果表明,可执行检查在任务依赖性修复效果和资源消耗上具有潜在优势,尤其适用于需要严格满足科学约束的代码生成场景。\ \ 点评:R2T 通过把抽象的科学约束具体化为可运行脚本,为 LLM 代理提供了可靠的自检手段。实验数据证明,在多数任务中工具组能够提升修复成功率并降低模型输出量,尽管计算开销随之增加。未来工作可探索更高效的检查实现以及跨任务的检查复用策略。