← 最新论文
🤖 AI

CODESTRUCT: Code Agents over Structured Action Spaces

该论文提出了名为 CODESTRUCT 的框架,通过将代码库重构为基于抽象语法树(AST)的结构化动作空间,使代码代理能够直接操作命名实体而非易错文本片段,从而在多个基准测试中显著提升了 LLM 解决软件问题的准确率并降低了 Token 消耗。

原作者: Myeongsoo Kim, Joe Hsu, Dingmin Wang, Shweta Garg, Varun Kumar, Murali Krishna Ramanathan

发布于 2026-04-08
📖 1 分钟阅读☕ 轻松阅读

原作者: Myeongsoo Kim, Joe Hsu, Dingmin Wang, Shweta Garg, Varun Kumar, Murali Krishna Ramanathan

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

这篇论文介绍了一个名为 CODESTRUCT 的新系统,它的核心目的是让 AI 写代码变得更聪明、更可靠,而且更省钱。

为了让你轻松理解,我们可以把传统的 AI 写代码CODESTRUCT 的写代码想象成两种完全不同的“修房子”方式。

🏠 场景设定:修房子(写代码)

想象一下,你有一个巨大的、结构复杂的房子(这就是代码库)。现在,你需要让一个工人(AI 智能体)去修改房子的某个部分,比如“把厨房的旧水龙头换掉”或者“把卧室的墙拆了”。

❌ 传统方法:像“盲人摸象”一样修房子

目前的 AI 大多使用纯文本方式工作。

  • 怎么干活? AI 拿到房子的“文字说明书”(源代码文件),这说明书里全是密密麻麻的字。
  • 怎么找地方? AI 必须像侦探一样,在几千行文字里搜索关键词。比如它想找“水龙头”,它得在文字里找“水龙头”这三个字出现在第几行。
  • 怎么修改? 一旦找到,它必须把那一整段文字(比如从第 100 行到第 150 行)全部复制下来,手动把“旧水龙头”改成“新水龙头”,然后再把整段文字贴回去。
  • 出了什么问题?
    • 太容易出错: 如果说明书里有个空格多了一个,或者换行符变了,AI 就找不到原来的文字了,修改就会失败。
    • 效率低: 为了改一个小小的水龙头,AI 不得不把整面墙(几百行代码)都读一遍、再重写一遍。这就像为了换灯泡,把整个房间的墙都拆了重装。
    • 浪费钱: AI 读这么多字、写这么多字,消耗的“算力”(Token)非常多,就像工人为了换个小零件,跑遍了整个工地,老板(用户)得付很多钱。

✅ CODESTRUCT 方法:像“拿着建筑图纸”修房子

CODESTRUCT 给 AI 换了一种工作方式,它不再看密密麻麻的文字,而是直接看房子的结构图(AST,抽象语法树)

  • 怎么干活? 在 CODESTRUCT 眼里,房子不是由“文字”组成的,而是由一个个有名字的部件组成的:比如“厨房”、“水龙头”、“卧室”、“承重墙”。
  • 怎么找地方? AI 不需要在文字里搜索了。它直接问:“我要找 auth.py 文件里的 authenticate 函数”。系统会直接定位到这个具体的“水龙头”,不管它现在在第几行,也不管它周围有没有空格。
  • 怎么修改? AI 只需要说:“把 authenticate 这个部件删掉”或者“把 login 这个部件的内容换成新的”。
  • 有什么好处?
    • 精准打击: 不需要读整面墙,只读那个“水龙头”本身。
    • 不会搞坏: 系统会自动检查修改后的结构是否符合建筑规范(语法正确)。如果 AI 想改出一个“悬空的墙”,系统会直接拒绝,防止房子塌了。
    • 省钱省力: 因为不需要读那么多无关的文字,AI 思考得更快,花的钱更少。

🚀 核心亮点(用大白话总结)

  1. 从“找字”变成“找对象”:
    以前 AI 是拿着放大镜在书里找字(字符串匹配),现在它是拿着目录去点名字(AST 节点)。就像你找朋友,以前是在人群里喊“那个穿红衣服的人”,现在直接叫“张三”的名字,瞬间就能找到。

  2. 两个超级工具:

    • readCode(读代码): 就像直接问“把‘登录功能’的代码给我看”,而不是把整个文件打印出来让你自己翻。
    • editCode(改代码): 就像直接对系统说“把‘登录功能’删了”,系统会自动处理剩下的排版和格式,保证房子结构不乱。
  3. 实际效果惊人:

    • 更准: 在测试中,AI 修好 Bug 的成功率提高了。特别是那些本来就不太聪明的 AI 模型,用了这个方法后,成功率直接从“经常搞砸”变成了“能搞定”,提升幅度高达 20% 以上!
    • 更省: 因为不需要读那么多废话,AI 消耗的计算资源(钱)减少了 12% 到 38%
    • 更稳: 以前 AI 经常因为格式不对(比如少个空格)就报错,现在这种“因为格式不对而失败”的情况大大减少了。

💡 总结

这篇论文告诉我们:让 AI 写代码,不能只把它当个“打字员”,而要把它当成一个懂建筑结构的“工程师”。

通过给 AI 提供结构化的操作空间(直接操作代码的“零件”而不是“文字”),我们不仅让 AI 干活更准、更快,还帮老板省了不少钱。这就好比给工人发了一张精准的 3D 建筑图纸,而不是让他去数砖头,修房子的效率自然天差地别。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →