{"id":1660,"date":"2026-09-20T14:01:56","date_gmt":"2026-09-20T06:01:56","guid":{"rendered":"https:\/\/lingbo.online\/index.php\/learning_note\/opencode-review\/"},"modified":"2026-09-20T14:01:56","modified_gmt":"2026-09-20T06:01:56","slug":"opencode-review","status":"publish","type":"post","link":"https:\/\/lingbo.online\/index.php\/learning_note\/opencode-review\/","title":{"rendered":"OpenCodeReview: Determinism over Non-Determinism for Cost-Effective Agent-Based Code Review"},"content":{"rendered":"<h3>Meta Data<\/h3>\n<ul>\n<li>\u53d1\u8868\u65f6\u95f4\uff1a2026-08-10<\/li>\n<li>\u4f5c\u8005\uff1aZhengfeng Li, Lei Zhang, Xianwei Wu, Zhengqi Zhuang, Yingjie Xu, Boge Wang, Shaofei Zhu, Chuan Wang, Peng Zhao, Xinyu Zheng, Guoping Rong\uff08\u963f\u91cc\u5df4\u5df4\u3001\u5357\u4eac\u5927\u5b66\u3001\u5317\u4eac\u5927\u5b66\uff09<\/li>\n<li>\u8bba\u6587\u94fe\u63a5\uff1a<a href=\"https:\/\/arxiv.org\/pdf\/2608.09290.pdf\" target=\"_blank\" rel=\"noopener\" rel=\"nofollow\" >https:\/\/arxiv.org\/pdf\/2608.09290.pdf<\/a><\/li>\n<li>arXiv \u9875\u9762\uff1a<a href=\"https:\/\/arxiv.org\/abs\/2608.09290\" target=\"_blank\" rel=\"noopener\" rel=\"nofollow\" >https:\/\/arxiv.org\/abs\/2608.09290<\/a><\/li>\n<li>\u9879\u76ee\u94fe\u63a5\uff1a<a href=\"https:\/\/github.com\/alibaba\/open-code-review\" target=\"_blank\" rel=\"noopener\" rel=\"nofollow\" >https:\/\/github.com\/alibaba\/open-code-review<\/a><\/li>\n<\/ul>\n<h1>OpenCodeReview\uff1a\u4ee5\u786e\u5b9a\u6027\u538b\u8fc7\u975e\u786e\u5b9a\u6027\uff0c\u5b9e\u73b0\u4f4e\u6210\u672c\u7684\u57fa\u4e8e Agent \u7684\u4ee3\u7801\u8bc4\u5ba1<\/h1>\n<blockquote>\n<p>\u539f\u6587\u6807\u9898\uff1aOpenCodeReview: Determinism over Non-Determinism for Cost-Effective Agent-Based Code Review<\/p>\n<\/blockquote>\n<p><strong>Zhengfeng Li<\/strong><br \/>\n\u963f\u91cc\u5df4\u5df4\u96c6\u56e2\uff0c\u676d\u5dde\uff0c\u6d59\u6c5f\uff0c\u4e2d\u56fd<br \/>\nlizhengfeng.lzf@alibaba-inc.com<\/p>\n<p><strong>Lei Zhang<\/strong><br \/>\n\u5357\u4eac\u5927\u5b66\uff0c\u5357\u4eac\uff0c\u6c5f\u82cf\uff0c\u4e2d\u56fd<br \/>\n602025320025@smail.nju.edu.cn<\/p>\n<p><strong>Xianwei Wu<\/strong><br \/>\n\u5357\u4eac\u5927\u5b66\uff0c\u5357\u4eac\uff0c\u6c5f\u82cf\uff0c\u4e2d\u56fd<br \/>\n652024320006@smail.nju.edu.cn<\/p>\n<p><strong>Zhengqi Zhuang<\/strong><br \/>\n\u5357\u4eac\u5927\u5b66\uff0c\u5357\u4eac\uff0c\u6c5f\u82cf\uff0c\u4e2d\u56fd<br \/>\nzephyrqz@163.com<\/p>\n<p><strong>Yingjie Xu<\/strong><br \/>\n\u5317\u4eac\u5927\u5b66\uff0c\u5317\u4eac\uff0c\u4e2d\u56fd<br \/>\nxuyingjie@stu.pku.edu.cn<\/p>\n<p><strong>Boge Wang<\/strong><br \/>\n\u963f\u91cc\u5df4\u5df4\u96c6\u56e2\uff0c\u676d\u5dde\uff0c\u6d59\u6c5f\uff0c\u4e2d\u56fd<br \/>\nbogw.wbg@alibaba-inc.com<\/p>\n<p><strong>Shaofei Zhu<\/strong><br \/>\n\u963f\u91cc\u5df4\u5df4\u96c6\u56e2\uff0c\u676d\u5dde\uff0c\u6d59\u6c5f\uff0c\u4e2d\u56fd<br \/>\nzhushaofei.zsf@alibaba-inc.com<\/p>\n<p><strong>Chuan Wang<\/strong><br \/>\n\u963f\u91cc\u5df4\u5df4\u96c6\u56e2\uff0c\u676d\u5dde\uff0c\u6d59\u6c5f\uff0c\u4e2d\u56fd<br \/>\nnashui.wc@alibaba-inc.com<\/p>\n<p><strong>Peng Zhao<\/strong><br \/>\n\u963f\u91cc\u5df4\u5df4\u96c6\u56e2\uff0c\u676d\u5dde\uff0c\u6d59\u6c5f\uff0c\u4e2d\u56fd<br \/>\nzhuyun.zp@alibaba-inc.com<\/p>\n<p><strong>Xinyu Zheng<\/strong><br \/>\n\u963f\u91cc\u5df4\u5df4\u96c6\u56e2\uff0c\u676d\u5dde\uff0c\u6d59\u6c5f\uff0c\u4e2d\u56fd<br \/>\nyuxin.zxy@alibaba-inc.com<\/p>\n<p><strong>Guoping Rong<\/strong><br \/>\n\u5357\u4eac\u5927\u5b66\uff0c\u5357\u4eac\uff0c\u6c5f\u82cf\uff0c\u4e2d\u56fd<br \/>\nronggp@nju.edu.cn<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" style=\"max-width:100%;height:auto\" alt=\"\u56fe 1\uff1aOpenCodeReview \u6a2a\u5e45\" src=\"https:\/\/youpaiyun.lingbo.online\/paper-read\/2608.09290\/fig01.png\" \/><\/p>\n<p><strong>\u56fe 1\uff1a<\/strong> OpenCodeReview \u6a2a\u5e45\u3002<\/p>\n<h2>\u6458\u8981<\/h2>\n<p>\u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1 Agent \u627f\u8bfa\u53ef\u6269\u5c55\u3001\u59cb\u7ec8\u5728\u7ebf\u7684\u8bc4\u5ba1\uff0c\u4f46\u5f53\u524d\u7cfb\u7edf\u5b58\u5728\u4e24\u4e2a\u4ea4\u7ec7\u7684\u5f31\u70b9\uff1a\uff081\uff09<strong>\u975e\u786e\u5b9a\u6027<\/strong>\u2014\u2014\u65e0\u754c\u7684\u5de5\u5177\u4f7f\u7528\u4e0e\u81a8\u80c0\u7684\u52a8\u4f5c\u7a7a\u95f4\u4f7f\u8bc4\u5ba1\u7ed3\u679c\u5728\u591a\u6b21\u8fd0\u884c\u95f4\u4e0d\u7a33\u5b9a\uff1b\uff082\uff09<strong>\u4e0a\u4e0b\u6587\u5c40\u90e8\u6027<\/strong>\u2014\u2014\u8bc4\u5ba1\u8005\u7684\u6709\u6548\u8bbf\u95ee\u4ecd\u88ab\u9650\u5236\u5728 diff \u672c\u8eab\uff0c\u4ece\u800c\u9650\u5236\u4e86\u53ef\u53d1\u73b0\u7684\u95ee\u9898\u6df1\u5ea6\u3002\u8fd9\u4e24\u4e2a\u5f31\u70b9\u5f15\u51fa\u4e09\u9879\u6311\u6218\uff1a\u4e0a\u4e0b\u6587\u68c0\u7d22\u9519\u4f4d\uff0c\u8981\u4e48\u6c61\u67d3\u8981\u4e48\u4f9b\u7ed9\u4e0d\u8db3\uff1b\u5c06\u8bc4\u5ba1\u6269\u5c55\u5230\u591a\u6587\u4ef6 pull request \u65f6\u7684\u8fde\u8d2f\u6027\u2013\u6548\u7387\u6743\u8861\uff1b\u4ee5\u53ca\u5e7b\u89c9\u8bc4\u8bba\u4fb5\u8680\u4fe1\u4efb\u5e76\u5e26\u6765\u6838\u9a8c\u6210\u672c\u3002\u4e3a\u5e94\u5bf9\u8fd9\u4e9b\u6311\u6218\uff0c\u6211\u4eec\u63d0\u51fa OpenCodeReview\uff0c\u8fd9\u662f\u4e00\u4e2a\u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1 Agent\uff0c\u5176\u539f\u5219\u662f\u5bf9\u4e0d\u786e\u5b9a Agent \u505a\u786e\u5b9a\u6027\u5de5\u7a0b\uff1a\u4e0d\u662f\u8d4b\u4e88 Agent \u6700\u5927\u81ea\u7531\u5ea6\uff0c\u800c\u662f\u5728\u8bc4\u5ba1\u6d41\u6c34\u7ebf\u7684\u4e09\u4e2a\u523b\u610f\u4f4d\u7f6e\u6ce8\u5165\u786e\u5b9a\u6027\u3002<strong>\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\uff08Rule-Guided Dispatch\uff09<\/strong> \u4f7f\u7528\u591a\u5c42\u89c4\u5219\u7cfb\u7edf\u786e\u5b9a\u6027\u9009\u62e9\u6587\u4ef6\u4e0e\u8bc4\u5ba1\u6807\u51c6\uff0c\u6d88\u9664 Agent \u9a71\u52a8\u6587\u4ef6\u5206\u8bca\u7684\u53ef\u53d8\u6027\u3002<strong>\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\uff08Grounded File Review\uff09<\/strong> \u7528\u4e00\u7ec4\u7ecf\u8fc7\u7b56\u5212\u3001\u8f93\u51fa\u6709\u754c\u3001\u901a\u8fc7 ReAct \u5faa\u73af\u66b4\u9732\u7684\u8bc4\u5ba1\u4e13\u7528\u5de5\u5177\u66ff\u4ee3\u81ea\u7531\u63a2\u7d22\uff0c\u540c\u65f6\u6587\u4ef6\u7ea7\u5e76\u884c SubAgent \u5728\u4e0a\u4e0b\u6587\u8fde\u8d2f\u6027\u4e0e\u6267\u884c\u6548\u7387\u4e4b\u95f4\u53d6\u5f97\u5e73\u8861\uff0c\u5e76\u6309\u9700\u6062\u590d\u8de8\u6587\u4ef6\u4f9d\u8d56\u3002<strong>\u72ec\u7acb\u53cd\u601d\uff08Independent Reflection\uff09<\/strong> \u5728\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u4e0b\u5f15\u5165\u8bc1\u4f2a\u4f18\u5148\u7684\u8fc7\u6ee4\u5668\u2014\u2014\u53cd\u601d\u5668\u53ea\u770b\u5230 diff\uff0c\u770b\u4e0d\u5230 Agent \u7ecf\u5de5\u5177\u589e\u5f3a\u7684\u63a2\u7d22\u2014\u2014\u4ece\u800c\u53bb\u9664\u5e7b\u89c9\u8bc4\u8bba\uff0c\u540c\u65f6\u907f\u514d\u5185\u5728\u81ea\u6211\u6279\u8bc4\u7684\u81ea\u6211\u5f3a\u5316\u504f\u5dee\uff0c\u5728\u4fdd\u6301 Recall \u7684\u540c\u65f6\u63d0\u5347 Precision\u3002\u5728 AACR-Bench\uff08\u5373 200 \u4e2a\u771f\u5b9e\u4e16\u754c PR\u300110 \u79cd\u8bed\u8a00\u30011,505 \u6761\u4e13\u5bb6\u6838\u9a8c\u8bc4\u8bba\uff09\u4e0a\uff0cOpenCodeReview \u5728\u516d\u4e2a LLM \u540e\u7aef\u4e0a\u6301\u7eed\u4f18\u4e8e\u4e3b\u6d41\u7f16\u7801 Agent\uff08\u4f8b\u5982 Claude Code \u4e0e Codex\uff09\uff0cSEM-F1 \u6700\u9ad8\u53ef\u8fbe $2.17times$\uff08\u540c\u4e00\u6a21\u578b\u5728 Claude Code \u4e0b\u4e3a 25.10% vs. 11.57%\uff09\uff0c\u540c\u65f6\u6d88\u8017\u7684 token \u5c11 $5text{\u2013}15times$\u2014\u2014\u8868\u660e\u6df1\u5ea6\u3001\u53ef\u9760\u6027\u4e0e\u6548\u7387\u53ef\u4ee5\u540c\u65f6\u8fbe\u6210\u3002\u6211\u4eec\u5728 https:\/\/github.com\/alibaba\/open-code-review \u5f00\u6e90 OpenCodeReview\uff0c\u4ee5\u4fc3\u8fdb\u5bf9\u57fa\u4e8e Agent \u7684\u4ee3\u7801\u8bc4\u5ba1\u8fdb\u884c\u786e\u5b9a\u6027\u5de5\u7a0b\u7684\u8fdb\u4e00\u6b65\u7814\u7a76\u4e0e\u91c7\u7528\u3002<\/p>\n<p><strong>CCS \u6982\u5ff5\uff1a<\/strong> \u2022 \u8f6f\u4ef6\u53ca\u5176\u5de5\u7a0b $rightarrow$ \u8f6f\u4ef6\u9a8c\u8bc1\u4e0e\u786e\u8ba4\uff1b\u8f6f\u4ef6\u521b\u5efa\u5de5\u5177\uff1b\u2022 \u8ba1\u7b97\u65b9\u6cd5 $rightarrow$ \u4eba\u5de5\u667a\u80fd\uff1b\u81ea\u7136\u8bed\u8a00\u5904\u7406\u3002<\/p>\n<h2>1 \u5f15\u8a00<\/h2>\n<p>\u4ee3\u7801\u8bc4\u5ba1\u662f\u73b0\u4ee3\u8f6f\u4ef6\u8d28\u91cf\u4fdd\u8bc1\u7684\u57fa\u77f3\uff0c\u5f00\u53d1\u8005\u901a\u8fc7\u5b83\u534f\u4f5c\u68c0\u67e5\u53d8\u66f4\u4ee5\u68c0\u6d4b\u7f3a\u9677\u3001\u6539\u5584\u53ef\u7ef4\u62a4\u6027\u5e76\u4f20\u64ad\u77e5\u8bc6 [1, 18]\u3002\u7136\u800c\u4eba\u5de5\u8bc4\u5ba1\u7684\u9ad8\u6210\u672c\u2014\u2014\u8bc4\u5ba1\u8005\u65f6\u95f4\u3001\u8ba4\u77e5\u8d1f\u8377\u4e0e\u5468\u8f6c\u5ef6\u8fdf\u2014\u2014\u957f\u671f\u5236\u7ea6\u4e86\u5176\u89c4\u6a21\u5316\u91c7\u7528\uff1a\u5f00\u53d1\u8005\u5c06\u76f8\u5f53\u4e00\u90e8\u5206\u65f6\u95f4\u82b1\u5728\u8bc4\u5ba1\u4e0a\uff0c\u5927\u578b\u9879\u76ee\u4e2d\u7684 pull request \u6570\u91cf\u5e38\u5e38\u8d85\u8fc7\u4eba\u529b\u5bb9\u91cf [19]\u3002\u8fd9\u4e00\u5f20\u529b\u63a8\u52a8\u4e86\u6301\u7eed\u7684\u8bc4\u5ba1\u8fc7\u7a0b\u81ea\u52a8\u5316\u52aa\u529b\u3002<\/p>\n<p>\u81ea\u52a8\u5316\u4ee3\u7801\u8bc4\u5ba1\u65e8\u5728\u7528\u63d0\u5347\u8bc4\u5ba1\u6548\u7387\u4e0e\u53ef\u6269\u5c55\u6027\u7684\u65b9\u6cd5\u6765\u589e\u5f3a\u6216\u66ff\u4ee3\u4eba\u7c7b\u8bc4\u5ba1\u8005 [12]\u3002\u65e9\u671f\u65b9\u6cd5\u4ece\u9759\u6001\u68c0\u67e5\u5668\u5230\u57fa\u4e8e\u5b66\u4e60\u7684\u8bc4\u8bba\u751f\u6210\u5668\uff0c\u8986\u76d6\u9762\u4e0e\u6d41\u7545\u5ea6\u90fd\u6709\u9650\u3002\u5927\u8bed\u8a00\u6a21\u578b\uff08LLM\uff09\u7684\u8fc5\u901f\u8fdb\u5c55\u91cd\u5851\u4e86\u8fd9\u4e00\u683c\u5c40\uff1a\u5b83\u80fd\u4ee5\u8fd1\u4e4e\u4e3a\u96f6\u7684\u8fb9\u9645\u6210\u672c\u63d0\u4f9b\u6d41\u7545\u7684\u8bc4\u5ba1\u53cd\u9988\uff0c\u4f7f\u53ef\u6269\u5c55\u3001\u59cb\u7ec8\u5728\u7ebf\u7684\u8bc4\u5ba1\u8005\u4ece\u957f\u671f\u613f\u671b\u53d8\u4e3a\u73b0\u5b9e\u524d\u666f\u3002\u56e0\u6b64\uff0c\u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1\u5438\u5f15\u4e86\u5e7f\u6cdb\u5173\u6ce8\uff0c\u8f6f\u4ef6\u5de5\u7a0b\u4e0e AI \u9876\u7ea7\u4f1a\u8bae\u4e0a\u7684\u76f8\u5173\u5de5\u4f5c\u5feb\u901f\u589e\u957f\u3002<\/p>\n<p>\u73b0\u6709\u63a2\u7d22\u53ef\u5206\u4e3a\u4e09\u6761\u8def\u7ebf\uff1a\u901a\u8fc7\u9884\u8bad\u7ec3\u6216\u5fae\u8c03\u589e\u5f3a\u6a21\u578b\u7684\u8bc4\u5ba1\u80fd\u529b [6, 12, 13, 15]\uff0c\u7528\u68c0\u7d22\u5230\u7684\u4e0a\u4e0b\u6587\u589e\u5f3a\u8f93\u5165 [10, 32]\uff0c\u4ee5\u53ca\u5c06\u8bc4\u5ba1\u5206\u89e3\u5230\u591a\u4e2a Agent [16, 22]\uff08\u7b2c 2.1 \u8282\uff09\u3002\u4e0e\u6b64\u540c\u65f6\uff0c\u5de5\u4e1a\u754c\u4e5f\u62e5\u62b1\u4e86\u8fd9\u4e00\u8d8b\u52bf\uff1aClaude Code<sup id=\"fnref:1\"><a class=\"footnote-ref\" href=\"1\" target=\"_blank\"  rel=\"nofollow\" >1<\/a><\/sup>\u3001Codex<sup id=\"fnref:2\"><a class=\"footnote-ref\" href=\"2\" target=\"_blank\"  rel=\"nofollow\" >2<\/a><\/sup>\u3001Cursor<sup id=\"fnref:3\"><a class=\"footnote-ref\" href=\"3\" target=\"_blank\"  rel=\"nofollow\" >3<\/a><\/sup> \u4e0e OpenCode<sup id=\"fnref:4\"><a class=\"footnote-ref\" href=\"4\" target=\"_blank\"  rel=\"nofollow\" >4<\/a><\/sup> \u7b49\u4e3b\u6d41\u7f16\u7801 Agent \u73b0\u5df2\u5185\u7f6e\u4ee3\u7801\u8bc4\u5ba1\uff0c\u8868\u660e\u57fa\u4e8e LLM \u7684\u8bc4\u5ba1\u5df2\u4ece\u539f\u578b\u8d70\u5411\u843d\u5730\u4ea7\u54c1\u3002<\/p>\n<p>\u5c3d\u7ba1\u6709\u8fd9\u4e9b\u8fdb\u5c55\uff0c\u542c\u8d77\u6765\u5408\u7406\u7684\u53cd\u9988\u8fd8\u4e0d\u7b49\u4e8e\u771f\u6b63\u6709\u7528\u7684\u53cd\u9988\u3002\u4e00\u6761\u6709\u610f\u4e49\u7684\u8bc4\u8bba\u5fc5\u987b\u5728\u6574\u4e2a\u4ed3\u5e93\u7684\u4e0a\u4e0b\u6587\u4e2d\u63a8\u7406\u8be5\u53d8\u66f4\uff08\u5373\u5b83\u5982\u4f55\u4e0e\u8c03\u7528\u8005\u3001\u88ab\u8c03\u7528\u8005\u3001\u5171\u4eab\u6570\u636e\u7ed3\u6784\u4ee5\u53ca\u9879\u76ee\u7ea6\u5b9a\u4ea4\u4e92\uff09\uff0c\u800c\u4e0d\u662f\u4ec5\u9488\u5bf9\u88ab\u6539\u52a8\u7684\u884c\u3002\u7136\u800c\u5728\u6240\u6709\u4e09\u6761\u8def\u7ebf\u4e2d\uff0c\u8bc4\u5ba1\u8005\u7684\u6709\u6548\u4e0a\u4e0b\u6587\u6700\u7ec8\u90fd\u88ab\u9650\u5236\u5728 diff \u53ca\u5176\u5468\u56f4\uff08\u7b2c 2.1 \u8282\uff09\uff0c\u4ece\u800c\u9650\u5236\u4e86\u53ef\u53d1\u73b0\u95ee\u9898\u7684\u6df1\u5ea6\uff1a\u8de8\u6587\u4ef6\u7684\u63a7\u5236\u6d41\u6216\u6570\u636e\u6d41\u7f3a\u9677\u3001\u7834\u574f\u8fdc\u7aef\u8c03\u7528\u8005\u7684\u56de\u5f52\uff0c\u4ee5\u53ca\u4ed3\u5e93\u8303\u56f4\u7684\u7ea6\u5b9a\u8fdd\u53cd\uff0c\u5927\u591a\u4ecd\u96be\u4ee5\u89e6\u53ca\u3002\u65b0\u5174\u7684\u57fa\u4e8e LLM \u7684 Agent \u7cfb\u7edf\u8303\u5f0f\u5c06\u63a8\u7406\u3001\u5de5\u5177\u4f7f\u7528\u4e0e\u591a\u6b65\u63a2\u7d22\u4ea4\u7ec7\u5728\u4e00\u8d77 [26]\uff08\u7b2c 2.2 \u8282\uff09\uff0c\u63d0\u4f9b\u4e86\u4e00\u6761\u6253\u7834\u8be5\u8fb9\u754c\u7684\u8def\u5f84\uff1a\u6309\u9700\u4e3b\u52a8\u6536\u96c6\u4ed3\u5e93\u7ea7\u4e0a\u4e0b\u6587\uff0c\u5982\u81ea\u4e3b\u7a0b\u5e8f\u4fee\u590d\u4e0e issue \u89e3\u51b3\u6240\u793a [25, 31]\u3002\u7136\u800c\uff0c\u5c06\u8fd9\u4e00\u8303\u5f0f\u9002\u914d\u5230\u4ee3\u7801\u8bc4\u5ba1\u4f1a\u66b4\u9732\u4e09\u9879\u8026\u5408\u6311\u6218\u3002<\/p>\n<p><strong>\u7b2c\u4e00\uff0c\u4e0a\u4e0b\u6587\u68c0\u7d22\u7684\u8303\u56f4\u4e0e\u7b56\u7565\u4ecd\u662f\u6839\u672c\u5f20\u529b\u3002<\/strong> \u4efb\u610f\u6269\u5927\u4e0a\u4e0b\u6587\u7684 Agent \u6709\u7528\u65e0\u5173\u4ee3\u7801\u7a00\u91ca\u4fe1\u53f7\u7684\u98ce\u9669\uff08\u5373\u4e0a\u4e0b\u6587\u6c61\u67d3\uff09\uff0c\u800c\u68c0\u7d22\u8fc7\u4e8e\u4fdd\u5b88\u7684 Agent \u4f1a\u9000\u56de\u5c40\u90e8\u6027\u53d7\u9650\u7684\u4f53\u5236\u3002\u73b0\u6709 Agent \u901a\u5e38\u4f7f\u7528\u4e00\u5957\u4ece\u7a0b\u5e8f\u4fee\u590d\u6216\u4ee3\u7801\u641c\u7d22\u501f\u7528\u7684\u56fa\u5b9a\u3001\u624b\u5de5\u8bbe\u8ba1\u7684\u68c0\u7d22\u5de5\u5177\uff0c\u5176\u6a21\u5f0f\u5f88\u5c11\u5bf9\u7167\u4eba\u7c7b\u8bc4\u5ba1\u8005\u5982\u4f55\u5728\u4ed3\u5e93\u4e2d\u5bfc\u822a\u6765\u9a8c\u8bc1 [29, 31]\uff0c\u56e0\u6b64\u5de5\u5177\u4e0e\u8bc4\u5ba1\u7684\u771f\u5b9e\u4fe1\u606f\u9700\u6c42\u5e38\u5e38\u9519\u4f4d\u3002\u4e00\u4e2a\u8bf1\u4eba\u7684\u8865\u6551\u662f\u7528\u901a\u7528 bash \u5de5\u5177\u8fdb\u884c\u81ea\u7531\u4ed3\u5e93\u63a2\u7d22\uff1b\u8fd9\u867d\u6700\u5927\u5316\u4e86\u4e0a\u4e0b\u6587\u6536\u96c6\u81ea\u7531\u5ea6\uff0c\u4f46\u65e0\u754c\u5de5\u5177\u4f7f\u7528\u4f1a\u7528\u5197\u4f59\u8f93\u51fa\u81a8\u80c0\u4e0a\u4e0b\u6587\u4e0e token \u9884\u7b97\uff0c\u5de8\u5927\u7684\u52a8\u4f5c\u7a7a\u95f4\u5f15\u5165\u663e\u8457\u975e\u786e\u5b9a\u6027\uff0c\u4f7f\u8bc4\u5ba1\u7ed3\u679c\u5728\u591a\u6b21\u8fd0\u884c\u95f4\u8fdc\u4e0d\u7a33\u5b9a\u3001\u96be\u4ee5\u590d\u73b0 [4, 23, 24]\u3002<\/p>\n<p><strong>\u7b2c\u4e8c\uff0c\u5c06\u57fa\u4e8e Agent \u7684\u8bc4\u5ba1\u6269\u5c55\u5230\u591a\u6587\u4ef6 pull request\uff0c\u4f1a\u8feb\u4f7f\u5728\u4e0a\u4e0b\u6587\u8fde\u8d2f\u6027\u4e0e\u6267\u884c\u6548\u7387\u4e4b\u95f4\u6743\u8861\u3002<\/strong> \u5355\u4e2a\u6574\u4f53 Agent \u5728\u4e00\u4e2a\u5171\u4eab\u4e0a\u4e0b\u6587\u4e2d\u8bc4\u5ba1\u6574\u4e2a\u53d8\u66f4\u96c6\uff0c\u80fd\u4fdd\u7559\u5168\u5c40\u89c6\u56fe\uff0c\u4f46\u5176\u6210\u672c\u968f\u53d8\u66f4\u89c4\u6a21\u6025\u5267\u589e\u957f\uff0c\u81a8\u80c0\u7684\u4e0a\u4e0b\u6587\u7a97\u53e3\u4e5f\u4f1a\u7a00\u91ca\u4fe1\u53f7\u3002\u53e6\u4e00\u6781\u7aef\u662f\u8fc7\u7ec6\u5212\u5206\uff08\u4f8b\u5982\u6309 hunk \u6216\u6309\u51fd\u6570\u8bc4\u5ba1\uff09\uff0c\u8fd9\u6700\u5927\u5316\u5e76\u884c\uff0c\u4f46\u628a\u4e00\u6b21\u8fde\u8d2f\u53d8\u66f4\u788e\u7247\u5316\u5230\u5b64\u7acb Agent \u4e2d\uff0c\u81a8\u80c0\u534f\u8c03\u5f00\u9500\u5e76\u906e\u853d\u53d8\u66f4\u6574\u4f53\u3002\u5148\u524d\u7684\u591a\u667a\u80fd\u4f53\u7cfb\u7edf\u8981\u4e48\u91c7\u7528\u4e2d\u5fc3\u5316\u3001\u4f1a\u8bdd\u5f0f\u8bbe\u8ba1\uff0c\u5176\u534f\u8c03\u9650\u5236\u4e86\u53ef\u6269\u5c55\u6027 [22]\uff0c\u8981\u4e48\u91c7\u7528\u4ece\u5f00\u53d1\u5de5\u4f5c\u6d41\u7ee7\u627f\u7684\u89d2\u8272\u5206\u89e3\uff0c\u5e76\u4e0d\u6620\u5c04\u5230\u8bc4\u5ba1 [8, 17]\u3002\u5982\u4f55\u9009\u62e9\u65e2\u80fd\u4fdd\u6301\u53d8\u66f4\u8fde\u8d2f\u3001\u53c8\u53ef\u5904\u7406\u5730\u5e76\u884c\u3001\u5e76\u8ba9\u6bcf\u4e2a\u8bc4\u5ba1\u8005\u4ecd\u80fd\u6062\u590d\u8de8\u6587\u4ef6\u4f9d\u8d56\u7684\u7c92\u5ea6\uff0c\u4ecd\u662f\u5f00\u653e\u95ee\u9898\u3002<\/p>\n<p><strong>\u7b2c\u4e09\uff0c\u4f7f Agent \u5f3a\u5927\u7684\u81ea\u4e3b\u6027\u4e5f\u4f7f\u5176\u4e0d\u53ef\u9760\u3002<\/strong> \u591a\u6b65 Agent \u503e\u5411\u4e8e\u901a\u8fc7\u65ad\u8a00\u4e0d\u5b58\u5728\u7684\u4e8b\u5b9e\u6216\u634f\u9020\u65e0\u652f\u6301\u7684\u95ee\u9898\u800c\u4ea7\u751f\u5e7b\u89c9\uff0c\u8fd9\u79cd\u4e0d\u7a33\u5b9a\u4f1a\u5728\u957f Agent \u5faa\u73af\u4e2d\u7d2f\u79ef [11, 20]\u3002\u5728\u4ee3\u7801\u8bc4\u5ba1\u573a\u666f\u4e2d\uff0c\u5e7b\u89c9\u8bc4\u8bba\u5c24\u5176\u6709\u5bb3\uff1a\u5c06\u771f\u5b9e\u53d1\u73b0\u4e0e\u634f\u9020\u53d1\u73b0\u4ea4\u7ec7\u7684\u8bc4\u5ba1\u8005\u4f1a\u4fb5\u8680\u4fe1\u4efb\uff0c\u5e76\u5e26\u6765\u53ef\u80fd\u62b5\u6d88\u81ea\u52a8\u5316\u672c\u5e94\u8282\u7701\u6210\u672c\u7684\u6838\u9a8c\u8d1f\u62c5\u3002\u73b0\u6709\u7f13\u89e3\u8981\u4e48\u4f9d\u8d56\u5185\u5728\u81ea\u6211\u53cd\u601d\uff0c\u5373\u540c\u4e00\u6a21\u578b\u6279\u8bc4\u81ea\u5df1\u7684\u8f93\u51fa\u5e76\u7ee7\u627f\u76f8\u540c\u504f\u5dee [14, 20]\uff0c\u8981\u4e48\u4f9d\u8d56\u91cd\u91cf\u7ea7\u7a0b\u5e8f\u5206\u6790\u9a8c\u8bc1\u5668\uff0c\u5b83\u4eec\u53ea\u80fd\u6838\u9a8c\u7a84\u7c7b\u53d1\u73b0\uff0c\u65e0\u6cd5\u88c1\u5b9a\u66f4\u5e7f\u7684\u8bed\u4e49\u8bc4\u5ba1\u8bc4\u8bba [5]\uff08\u7b2c 2.3 \u8282\uff09\u3002\u4e00\u79cd\u80fd\u8de8\u4e0d\u540c\u7c7b\u578b\u62e6\u622a\u5e7b\u89c9\u8bc4\u8bba\u3001\u540c\u65f6\u4e0d\u727a\u7272\u95ee\u9898\u5e7f\u5ea6\u7684\u673a\u5236\u4ecd\u7136\u7f3a\u5931\u3002<\/p>\n<p>\u4e3a\u5e94\u5bf9\u8fd9\u4e9b\u6311\u6218\uff0c\u6211\u4eec\u63d0\u51fa OpenCodeReview\uff0c\u8fd9\u662f\u4e00\u4e2a\u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1 Agent\uff0c\u5176\u539f\u5219\u662f\u5bf9\u4e0d\u786e\u5b9a Agent \u505a\u786e\u5b9a\u6027\u5de5\u7a0b\uff1a\u4e0d\u662f\u8d4b\u4e88 Agent \u6700\u5927\u81ea\u7531\u5ea6\uff0c\u800c\u662f\u5728\u8bc4\u5ba1\u6d41\u6c34\u7ebf\u7684\u4e09\u4e2a\u4f4d\u7f6e\u6ce8\u5165\u786e\u5b9a\u6027\uff0c\u4ee5\u786e\u4fdd\u6240\u66b4\u9732\u95ee\u9898\u7684\u6df1\u5ea6\u4ee5\u53ca\u6bcf\u6761\u8bc4\u8bba\u7684\u53ef\u9760\u6027\u3002OpenCodeReview \u56f4\u7ed5\u4e09\u9879\u6838\u5fc3\u8bbe\u8ba1\u6784\u5efa\uff1a<\/p>\n<p>\uff081\uff09<strong>\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\uff08Rule-Guided Dispatch\uff09<\/strong> \u4f7f\u7528\u591a\u5c42\u89c4\u5219\u7cfb\u7edf\u786e\u5b9a\u6027\u9009\u62e9\u6587\u4ef6\u4e0e\u8bc4\u5ba1\u6807\u51c6\uff0c\u6d88\u9664 Agent \u9a71\u52a8\u6587\u4ef6\u5206\u8bca\u7684\u53ef\u53d8\u6027\u3002\u4e0d\u662f\u8ba9 Agent \u51b3\u5b9a\u54ea\u4e9b\u6587\u4ef6\u503c\u5f97\u5173\u6ce8\uff0c\u89c4\u5219\u9a71\u52a8\u6d3e\u53d1\u786e\u4fdd\u540c\u4e00 PR \u603b\u662f\u5f97\u5230\u76f8\u540c\u7684\u6587\u4ef6\u4e0e\u6807\u51c6\u5206\u914d\uff0c\u4e3a\u540e\u7eed\u8bc4\u5ba1\u63d0\u4f9b\u53ef\u590d\u73b0\u7684\u8d77\u70b9\u3002<\/p>\n<p>\uff082\uff09<strong>\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\uff08Grounded File Review\uff09<\/strong> \u7528\u4e00\u7ec4\u7ecf\u8fc7\u7b56\u5212\u3001\u8f93\u51fa\u6709\u754c\u3001\u901a\u8fc7 ReAct \u5faa\u73af\u66b4\u9732\u7684\u8bc4\u5ba1\u4e13\u7528\u5de5\u5177\u66ff\u4ee3\u81ea\u7531\u63a2\u7d22\uff0c\u540c\u65f6\u6587\u4ef6\u7ea7\u5e76\u884c SubAgent \u5728\u4e0a\u4e0b\u6587\u8fde\u8d2f\u6027\u4e0e\u6267\u884c\u6548\u7387\u4e4b\u95f4\u53d6\u5f97\u5e73\u8861\uff0c\u5e76\u6309\u9700\u6062\u590d\u8de8\u6587\u4ef6\u4f9d\u8d56\u3002\u5c06\u5de5\u5177\u8bbe\u8ba1\u5efa\u7acb\u5728\u5bf9\u4e13\u5bb6\u8bc4\u5ba1\u8005\u5728\u771f\u5b9e diff \u4e0a\u6240\u7528\u4e0a\u4e0b\u6587\u68c0\u7d22\u6a21\u5f0f\u7684\u6570\u636e\u9a71\u52a8\u5206\u6790\u4e4b\u4e0a\uff0c\u4f7f Agent \u7684\u4fe1\u606f\u6536\u96c6\u4e0e\u4ee3\u7801\u8bc4\u5ba1\u7684\u771f\u5b9e\u9700\u6c42\u5bf9\u9f50\uff0c\u4ece\u800c\u53d1\u73b0\u6df1\u5ea6\u7684\u3001\u8de8\u8d8a\u4ed3\u5e93\u7684\u95ee\u9898\uff0c\u540c\u65f6\u4fdd\u6301\u68c0\u7d22\u4e0a\u4e0b\u6587\u4fe1\u606f\u4e30\u5bcc\u4e14\u6210\u672c\u6709\u754c\u3002<\/p>\n<p>\uff083\uff09<strong>\u72ec\u7acb\u53cd\u601d\uff08Independent Reflection\uff09<\/strong> \u5728\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u4e0b\u5f15\u5165\u8bc1\u4f2a\u4f18\u5148\u7684\u8fc7\u6ee4\u5668\uff1a\u53cd\u601d\u5668\u53ea\u770b\u5230 diff\uff0c\u770b\u4e0d\u5230 Agent \u7ecf\u5de5\u5177\u589e\u5f3a\u7684\u63a2\u7d22\uff0c\u4ece\u800c\u53bb\u9664\u5e7b\u89c9\u8bc4\u8bba\uff0c\u540c\u65f6\u907f\u514d\u5185\u5728\u81ea\u6211\u6279\u8bc4\u7684\u81ea\u6211\u5f3a\u5316\u504f\u5dee [14, 20]\u3002\u6309\u8bbe\u8ba1\uff0c\u53cd\u601d\u5668\u53ea\u8fc7\u6ee4\u800c\u4e0d\u751f\u6210\uff0c\u5728\u4fdd\u6301 Recall \u7684\u540c\u65f6\u63d0\u5347 Precision\u3002<\/p>\n<p>\u6211\u4eec\u5728 AACR-Bench [30] \u4e0a\u8bc4\u6d4b OpenCodeReview\u3002\u8be5\u57fa\u51c6\u662f\u4e00\u4e2a\u5305\u542b 200 \u4e2a\u771f\u5b9e\u4e16\u754c PR \u4e0e 1,505 \u6761\u4e13\u5bb6\u6838\u9a8c\u8bc4\u8bba\u7684\u591a\u8bed\u8a00\u57fa\u51c6\u3002\u6211\u4eec\u5c06\u5176\u4e0e\u516d\u4e2a LLM \u540e\u7aef\u4e0b\u7684 Claude Code \u4e0e Codex \u6bd4\u8f83\u3002OpenCodeReview \u5728\u6240\u6709\u914d\u7f6e\u4e0a\u53d6\u5f97\u6700\u9ad8 SEM-F1\uff0c\u6700\u4f73\u7ed3\u679c\uff08Claude-4.6-Opus \u4e0b 25.10%\uff09\u6bd4\u540c\u4e00\u6a21\u578b\u5728 Claude Code \u4e0b\u7684 11.57% \u9ad8\u51fa $2.17times$\uff0c\u540c\u65f6\u5c06 token \u6d88\u8017\u964d\u4f4e $5text{\u2013}15times$\u3002\u8fd9\u4e9b\u7ed3\u679c\u786e\u8ba4\uff1a\u7ed3\u6784\u5316\u7684\u786e\u5b9a\u6027\u5de5\u7a0b\u80fd\u4ee5\u663e\u8457\u66f4\u4f4e\u7684\u6210\u672c\u540c\u65f6\u5e26\u6765\u66f4\u6df1\u7684\u8bc4\u5ba1\u4e0e\u66f4\u9ad8\u7684\u53ef\u9760\u6027\u3002<\/p>\n<p>\u603b\u4e4b\uff0c\u6211\u4eec\u505a\u51fa\u5982\u4e0b\u8d21\u732e\uff1a<\/p>\n<p>\uff081\uff09\u6211\u4eec\u63d0\u51fa OpenCodeReview\uff0c\u4e00\u4e2a\u57fa\u4e8e\u300c\u5bf9\u4e0d\u786e\u5b9a Agent \u505a\u786e\u5b9a\u6027\u5de5\u7a0b\u300d\u539f\u5219\u7684 LLM \u4ee3\u7801\u8bc4\u5ba1 Agent\uff0c\u5728\u8bc4\u5ba1\u6d41\u6c34\u7ebf\u7684\u4e09\u4e2a\u4f4d\u7f6e\u6ce8\u5165\u786e\u5b9a\u6027\uff0c\u4ee5\u786e\u4fdd\u8bc4\u5ba1\u7ed3\u679c\u7684\u6df1\u5ea6\u4e0e\u53ef\u9760\u6027\u3002<\/p>\n<p>\uff082\uff09\u6211\u4eec\u5728 AACR-Bench \u4e0a\u5bf9\u516d\u4e2a LLM \u540e\u7aef\u8fdb\u884c\u5168\u9762\u8bc4\u6d4b\uff0c\u8868\u660e OpenCodeReview \u6301\u7eed\u4f18\u4e8e\u4e3b\u6d41\u7f16\u7801 Agent\uff0cSEM-F1 \u6700\u9ad8\u53ef\u8fbe $2.17times$\uff0ctoken \u5c11 $5text{\u2013}15times$\u3002<\/p>\n<p>\uff083\uff09\u6211\u4eec\u5f00\u6e90 OpenCodeReview\uff0c\u4ee5\u4fc3\u8fdb\u53ef\u590d\u73b0\u6027\uff0c\u5e76\u63a8\u52a8\u9762\u5411\u4ee3\u7801\u8bc4\u5ba1\u7684\u786e\u5b9a\u6027 Agent \u8bbe\u8ba1\u7814\u7a76\u3002<\/p>\n<h2>2 \u80cc\u666f\u4e0e\u76f8\u5173\u5de5\u4f5c<\/h2>\n<p>\u672c\u8282\u7efc\u8ff0\u6fc0\u53d1 OpenCodeReview \u7684\u7814\u7a76\u683c\u5c40\u3002\u6211\u4eec\u9996\u5148\u56de\u987e\u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1\u6f14\u8fdb\uff0c\u7136\u540e\u8986\u76d6\u9762\u5411\u8f6f\u4ef6\u5de5\u7a0b\u7684 LLM Agent\uff0c\u4ee5\u53ca\u7528\u4e8e\u63d0\u5347 Agent \u53ef\u9760\u6027\u7684\u53cd\u601d\u673a\u5236\u3002<\/p>\n<h3>2.1 \u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1<\/h3>\n<p>\u73b0\u4ee3\u4ee3\u7801\u8bc4\u5ba1\u662f\u4e00\u79cd\u88ab\u5e7f\u6cdb\u91c7\u7528\u7684\u5b9e\u8df5\uff0c\u5f00\u53d1\u8005\u68c0\u67e5 pull request\uff08PR\uff09\u4ee5\u68c0\u6d4b\u7f3a\u9677\u3001\u6539\u5584\u53ef\u7ef4\u62a4\u6027\u5e76\u5206\u4eab\u77e5\u8bc6 [1, 18]\u3002\u5728 Google\uff0c\u4ee3\u7801\u8bc4\u5ba1\u88ab\u8bc6\u522b\u4e3a\u5f00\u53d1\u8005\u541e\u5410\u7684\u4e3b\u8981\u74f6\u9888 [19]\uff0c\u4ece\u800c\u63a8\u52a8\u4e86\u6301\u7eed\u7684\u81ea\u52a8\u5316\u52aa\u529b\u3002LLM \u7684\u8fc5\u901f\u8fdb\u5c55\u91cd\u5851\u4e86\u8fd9\u4e00\u683c\u5c40\uff1a\u5b83\u80fd\u4ee5\u8fd1\u4e4e\u4e3a\u96f6\u7684\u8fb9\u9645\u6210\u672c\u63d0\u4f9b\u6d41\u7545\u8bc4\u5ba1\u53cd\u9988\uff0c\u4f7f\u53ef\u6269\u5c55\u3001\u59cb\u7ec8\u5728\u7ebf\u7684\u8bc4\u5ba1\u8005\u4ece\u957f\u671f\u613f\u671b\u53d8\u4e3a\u73b0\u5b9e\u524d\u666f\u3002\u6211\u4eec\u5c06\u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1\u65b9\u6cd5\u6cbf\u4e09\u6761\u8def\u7ebf\u7ec4\u7ec7\uff1a\u9762\u5411\u8bc4\u5ba1\u7684\u6a21\u578b\u8bad\u7ec3\u3001\u68c0\u7d22\u589e\u5f3a\uff0c\u4ee5\u53ca Agentic \u4ee3\u7801\u8bc4\u5ba1\u3002<\/p>\n<p><strong>\u9762\u5411\u8bc4\u5ba1\u7684\u6a21\u578b\u8bad\u7ec3\u3002<\/strong> \u8fd9\u6761\u8def\u7ebf\u901a\u8fc7\u4efb\u52a1\u7279\u5b9a\u5fae\u8c03\u5c06 LLM \u9002\u914d\u5230\u4ee3\u7801\u8bc4\u5ba1\u3002LLaMA-Reviewer [13] \u53ca\u5176\u540e\u7eed\u5de5\u4f5c [6, 15] \u5728\u8bc4\u5ba1\u8bc4\u8bba\u6570\u636e\u4e0a\u5fae\u8c03\u5f00\u6e90 LLM\uff0c\u4ee5\u6539\u5584\u8bc4\u8bba\u751f\u6210\u8d28\u91cf\u3002Yu \u7b49\u4eba [27] \u8fdb\u4e00\u6b65\u8868\u660e\uff0c\u5fae\u8c03\u53ef\u4ee5\u540c\u65f6\u589e\u5f3a\u6240\u751f\u6210\u8bc4\u8bba\u7684\u51c6\u786e\u6027\u4e0e\u53ef\u7406\u89e3\u6027\u3002\u6700\u8fd1\uff0cMelcotCR [28] \u63d0\u51fa\u4e00\u79cd\u6700\u5927\u71b5\u8c03\u8282\u7684\u957f\u601d\u7ef4\u94fe\u5fae\u8c03\u65b9\u6cd5\uff0c\u8bad\u7ec3 LLM \u540c\u65f6\u5206\u6790\u4ee3\u7801\u8bc4\u5ba1\u7684\u591a\u4e2a\u7ef4\u5ea6\uff0c\u4f7f 14B \u6a21\u578b\u8fbe\u5230\u4e0e 671B \u6a21\u578b\u76f8\u5f53\u7684\u8868\u73b0\u3002\u5c3d\u7ba1\u6709\u8fd9\u4e9b\u8fdb\u5c55\uff0c\u8bc4\u5ba1\u77e5\u8bc6\u6700\u7ec8\u88ab\u7f16\u7801\u5728\u6a21\u578b\u6743\u91cd\u4e2d\uff1a\u63a8\u7406\u65f6\u6a21\u578b\u65e0\u6cd5\u67e5\u9605\u76ee\u6807\u4ed3\u5e93\uff0c\u4ecd\u88ab\u9650\u5236\u5728 diff \u4e0a\uff0c\u9650\u5236\u4e86\u5176\u66b4\u9732\u9700\u8981\u8de8\u6587\u4ef6\u63a8\u7406\u7684\u95ee\u9898\u7684\u80fd\u529b\u3002<\/p>\n<p><strong>\u68c0\u7d22\u589e\u5f3a\u3002<\/strong> \u8fd9\u6761\u8def\u7ebf\u7528\u68c0\u7d22\u5230\u7684\u4e0a\u4e0b\u6587\u589e\u5f3a\u6a21\u578b\u8f93\u5165\uff0c\u4ee5\u90e8\u5206\u514b\u670d\u4ec5\u770b diff \u7684\u5c40\u90e8\u6027\u3002AUGER [3] \u68c0\u7d22\u76f8\u4f3c\u4ee3\u7801\u7247\u6bb5\u4ee5\u64ad\u79cd\u8bc4\u8bba\u751f\u6210\u3002RAG-Reviewer [7] \u901a\u8fc7\u5bf9 top-$k$ \u76f8\u4f3c\u4ee3\u7801\u2013\u8bc4\u5ba1\u5bf9\u6761\u4ef6\u5316\uff0c\u7edf\u4e00\u4e86\u751f\u6210\u65b9\u6cd5\u4e0e\u57fa\u4e8e IR \u7684\u65b9\u6cd5\uff0c\u5c24\u5176\u6539\u5584\u4e86\u4f4e\u9891 token \u7684\u8bc4\u8bba\u8d28\u91cf\u3002LAURA [32] \u7528 PR \u5143\u6570\u636e\u3001AST \u6269\u5c55\u4e0a\u4e0b\u6587\uff0c\u4ee5\u53ca\u7ecf CodeT5+ embedding \u68c0\u7d22\u7684\u5386\u53f2\u4e0a\u76f8\u4f3c\u8bc4\u5ba1\u6765\u4e30\u5bcc\u8f93\u5165\u3002\u0130\u00e7\u00f6z \u4e0e Biricik [10] \u901a\u8fc7\u4e0a\u4e0b\u6587\u611f\u77e5 RAG \u6d41\u6c34\u7ebf\u5c06\u8bc4\u8bba\u5efa\u7acb\u5728\u68c0\u7d22\u7247\u6bb5\u4e0a\u3002Sun \u7b49\u4eba [21] \u7cfb\u7edf\u6bd4\u8f83\u4e86\u90bb\u8fd1\u3001\u57fa\u4e8e LSP \u7684\u8bed\u4e49\uff0c\u4ee5\u53ca\u57fa\u4e8e IR \u7684\u76f8\u4f3c\u5171\u53d8\u4e0a\u4e0b\u6587\uff0c\u53d1\u73b0\u5c06\u95ee\u9898\u5217\u8868\u8bc4\u5ba1\u4e0e\u4e0a\u4e0b\u6587\u589e\u5f3a\u7ed3\u5408\u53ef\u663e\u8457\u6539\u5584\u8bc4\u5ba1\u8986\u76d6\u3002\u5c3d\u7ba1\u8fd9\u4e9b\u65b9\u6cd5\u62d3\u5bbd\u4e86\u6709\u6548\u4e0a\u4e0b\u6587\uff0c\u5b83\u4eec\u53ea\u6cbf\u7740\u68c0\u7d22\u5668\u88ab\u8bbe\u8ba1\u7684\u8f74\u8d77\u4f5c\u7528\uff1a\u56fa\u5b9a\u68c0\u7d22\u5668\u65e0\u6cd5\u81ea\u9002\u5e94\u5730\u8ffd\u8e2a\u4eba\u7c7b\u8bc4\u5ba1\u8005\u6240\u9075\u5faa\u7684\u8bc1\u636e\u94fe\uff08\u4f8b\u5982\uff0c\u300c\u8c01\u8c03\u7528\u4e86\u8fd9\u4e2a\u88ab\u6539\u52a8\u7684\u51fd\u6570\uff0c\u4ed6\u4eec\u671f\u671b\u4ec0\u4e48\uff1f\u300d\uff09\uff0c\u4e5f\u65e0\u6cd5\u6309\u5176\u7ed9\u5b9a\u53d8\u66f4\u7684\u4fe1\u606f\u9700\u6c42\u8c03\u6574\u7b56\u7565\u3002<\/p>\n<p><strong>Agentic \u4ee3\u7801\u8bc4\u5ba1\u3002<\/strong> \u8fd9\u6761\u8def\u7ebf\u4e3a\u4ee3\u7801\u8bc4\u5ba1\u91c7\u7528\u57fa\u4e8e Agent \u7684\u8303\u5f0f\u3002\u7814\u7a76\u7cfb\u7edf\u5c06\u8bc4\u5ba1\u5206\u89e3\u4e3a\u4e13\u95e8\u89d2\u8272\u6216\u5e26\u9a8c\u8bc1 Agent \u7684\u76d1\u7763\u8005\u2013\u5de5\u4f5c\u8005\u8bbe\u8ba1 [16, 22]\u3002\u5de5\u4e1a\u754c\u540c\u65f6\u5728\u4e3b\u6d41\u7f16\u7801 Agent \u4e2d\u4ea4\u4ed8\u4e86\u8bc4\u5ba1\u529f\u80fd\uff0c\u5305\u62ec Cursor \u7684 BugBot\u3001Claude Code\u3001Codex \u4e0e OpenCode\uff0c\u5404\u81ea\u63d0\u4f9b\u57fa\u4e8e diff \u6216\u6c99\u7bb1 Agent \u7684\u8bc4\u5ba1\uff0c\u4f46\u6ca1\u6709\u4e13\u7528\u4e0a\u4e0b\u6587\u5de5\u5177\u6216\u591a\u6587\u4ef6\u5e76\u884c\u3002\u4e00\u9879\u9488\u5bf9 3,109 \u4e2a PR \u7684\u8fd1\u671f\u5b9e\u8bc1\u7814\u7a76\u8868\u660e\uff0c\u4ec5\u7531\u4ee3\u7801\u8bc4\u5ba1 Agent \u5b8c\u6210\u7684\u8bc4\u5ba1\u5408\u5e76\u7387\u4e3a 45.2%\uff08\u4eba\u5de5\u4ec5\u4e3a 68.4%\uff09\uff0c\u88ab\u62d2\u7edd\u7684\u4ec5 Agent PR \u4e2d\u6709 60% \u7684\u4fe1\u566a\u6bd4\u4f4e\u4e8e 30% [2]\uff0c\u8fd9\u8bc1\u660e\u5f53\u524d\u843d\u5730 Agent \u4ea7\u751f\u4e86\u566a\u58f0\u3001\u4f4e\u8d28\u91cf\u7684\u53cd\u9988\u3002\u8fd9\u4e9b\u7cfb\u7edf\u5171\u6709\u4e09\u9879\u5c40\u9650\uff1a\uff081\uff09\u4e2d\u5fc3\u5316\u534f\u8c03\u9650\u5236\u53ef\u6269\u5c55\u6027\uff0c\u5355\u6761\u4f1a\u8bdd\u7ebf\u7a0b\u65e0\u6cd5\u9ad8\u6548\u5904\u7406\u5927\u578b\u591a\u6587\u4ef6\u53d8\u66f4\uff1b\uff082\uff09\u4ece\u5f00\u53d1\u5de5\u4f5c\u6d41\u501f\u7528\u7684\u89d2\u8272\u5206\u89e3\uff08\u4f8b\u5982 coder\u3001tester\uff09\u4e0e\u8bc4\u5ba1\u7ed3\u6784\u4e0d\u5bf9\u9f50\uff1b\uff083\uff09\u65e0\u4e00\u91c7\u7528\u4e13\u7528\u4e0a\u4e0b\u6587\u5de5\u5177\uff0c\u4f7f Agent \u8981\u4e48\u53ea\u4f9d\u8d56 diff\uff0c\u8981\u4e48\u7528\u901a\u7528\u3001\u65e0\u754c\u5de5\u5177\u63a2\u7d22\u4ed3\u5e93\u3002<\/p>\n<p>\u4e3a\u5e94\u5bf9\u8fd9\u4e9b\u5c40\u9650\uff0c\u6211\u4eec\u63d0\u51fa OpenCodeReview\uff0c\u4e00\u4e2a\u57fa\u4e8e\u300c\u5bf9\u4e0d\u786e\u5b9a Agent \u505a\u786e\u5b9a\u6027\u5de5\u7a0b\u300d\u539f\u5219\u7684 LLM \u4ee3\u7801\u8bc4\u5ba1 Agent\uff0c\u5177\u6709\u4e09\u9879\u6838\u5fc3\u8bbe\u8ba1\uff1a\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\uff08\u786e\u5b9a\u6027\u7684\u6587\u4ef6\u4e0e\u6807\u51c6\u9009\u62e9\uff09\u3001\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\uff08\u7b56\u5212\u7684\u4e0a\u4e0b\u6587\u5de5\u5177\u4e0e\u6587\u4ef6\u7ea7\u5e76\u884c SubAgent\uff09\uff0c\u4ee5\u53ca\u72ec\u7acb\u53cd\u601d\uff08\u57fa\u4e8e\u8bc1\u4f2a\u7684\u8bc4\u8bba\u8fc7\u6ee4\uff09\u3002<\/p>\n<h3>2.2 \u9762\u5411\u8f6f\u4ef6\u5de5\u7a0b\u7684 LLM Agent<\/h3>\n<p>LLM Agent \u5c06\u6a21\u578b\u7f6e\u4e8e\u4e00\u4e2a\u5faa\u73af\u4e2d\uff1a\u5b83\u63a8\u7406\u72b6\u6001\u3001\u8c03\u7528\u5de5\u5177\u83b7\u5f97\u89c2\u5bdf\uff0c\u5e76\u9009\u62e9\u4e0b\u4e00\u6b65\u52a8\u4f5c\uff1bReAct \u8303\u5f0f [26] \u5c06\u5176\u5f62\u5f0f\u5316\u4e3a Thought\u2013Action\u2013Observation \u8f68\u8ff9\u3002\u8f6f\u4ef6\u5de5\u7a0b\u662f\u81ea\u7136\u7684\u5e94\u7528\u9886\u57df\uff1a\u4ed3\u5e93\u662f\u53ef\u67e5\u8be2\u73af\u5883\uff0cAgent \u53ef\u4ee5\u641c\u7d22\u5b9a\u4e49\u3001\u68c0\u67e5\u88ab\u8c03\u7528\u8005\u5e76\u8fd0\u884c\u5206\u6790\u4ee5\u6536\u96c6\u8bc1\u636e\u3002\u8fd9\u4e00\u6d1e\u89c1\u63a8\u52a8\u4e86\u7f3a\u9677\u4fee\u590d\u4e0e issue \u89e3\u51b3\u9886\u57df\u7684\u8fc5\u901f\u8fdb\u5c55\u3002SWE-agent [25] \u901a\u8fc7\u5b9a\u5236\u7684 Agent\u2013\u8ba1\u7b97\u673a\u63a5\u53e3\u89e3\u51b3 GitHub issue\uff0c\u8868\u660e\u5de5\u5177\u63a5\u53e3\u8bbe\u8ba1\u4f1a\u5b9e\u8d28\u5f71\u54cd\u6027\u80fd\u3002AutoCodeRover [31] \u5c06\u4fee\u590d\u5206\u89e3\u4e3a\u5728\u4e00\u7cfb\u5217\u68c0\u7d22\u5de5\u5177\u4e0a\u7684\u4e0a\u4e0b\u6587\u68c0\u7d22\u4e0e\u6253\u8865\u4e01\u3002RepoAudit [5] \u5ba1\u8ba1\u4ed3\u5e93\u5e76\u7528\u7a0b\u5e8f\u5206\u6790\u9a8c\u8bc1\u53d1\u73b0\u3002ChatDev [17] \u4e0e MetaGPT [8] \u5c06\u5f00\u53d1\u7ec4\u7ec7\u4e3a\u89d2\u8272\u4e13\u95e8\u5316\u7684\u591a\u667a\u80fd\u4f53\u7cfb\u7edf\u3002<\/p>\n<p>\u8fd9\u4e9b\u5de5\u4f5c\u786e\u8ba4 Agent \u80fd\u6709\u6548\u5bfc\u822a\u4ed3\u5e93\uff0c\u4e3a\u6211\u4eec\u4e3a\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\u8bbe\u8ba1\u7b56\u5212\u4e0a\u4e0b\u6587\u5de5\u5177\u63d0\u4f9b\u4e86\u4f9d\u636e\u3002\u7136\u800c\uff0c\u73b0\u6709 Agent \u7cfb\u7edf\u5728\u4e24\u4e2a\u5173\u952e\u65b9\u9762\u4e0e\u4ee3\u7801\u8bc4\u5ba1\u4e0d\u540c\uff0c\u4ece\u800c\u6fc0\u53d1\u6211\u4eec\u7684\u6587\u4ef6\u7ea7 SubAgent \u5212\u5206\uff1a\uff081\uff09\u5176\u76ee\u6807\u662f\u4ea7\u51fa\u4fee\u590d\u6216\u88c1\u51b3\uff0c\u800c\u8bc4\u5ba1\u5fc5\u987b\u53d1\u73b0\u5e76\u9610\u660e\u95ee\u9898\uff0c\u9700\u8981\u4e0d\u540c\u7684\u5de5\u5177\u4e0e\u6210\u529f\u6807\u51c6\uff1b\uff082\uff09\u5176\u7ec4\u7ec7\u4f9d\u8d56\u5355\u4e2a Agent \u6216\u5f00\u53d1\u89d2\u8272\u5206\u89e3\uff0c\u4e8c\u8005\u90fd\u4e0d\u81ea\u7136\u9002\u5408\u591a\u6587\u4ef6 PR \u8bc4\u5ba1\u3002\u6211\u4eec\u7684\u6587\u4ef6\u7ea7\u5212\u5206\u4e13\u4e3a\u8bc4\u5ba1\u6784\u5efa\uff0c\u76f4\u63a5\u5e94\u5bf9\u4e0a\u4e0b\u6587\u8fde\u8d2f\u6027\u4e0e\u6267\u884c\u6548\u7387\u4e4b\u95f4\u7684\u8fde\u8d2f\u6027\u2013\u6548\u7387\u6743\u8861\u3002<\/p>\n<h3>2.3 Agent \u53ef\u9760\u6027\u4e0e\u53cd\u601d\u673a\u5236<\/h3>\n<p>LLM Agent \u8f93\u51fa\u7684\u4e0d\u53ef\u9760\u6e90\u4e8e\u4e24\u4e2a\u6765\u6e90\uff1a\u6a21\u578b\u56fa\u6709\u7684\u5e7b\u89c9\uff0c\u4ee5\u53ca Agent \u5de5\u5177\u4f7f\u7528\u8f68\u8ff9\u5f15\u5165\u7684\u975e\u786e\u5b9a\u6027\u3002\u4e8c\u8005\u90fd\u4f7f\u81ea\u4e3b\u8bc4\u5ba1\u5728\u6ca1\u6709\u4fdd\u969c\u65f6\u4e0d\u5b89\u5168\u843d\u5730\uff0c\u5e76\u4e14\u5404\u81ea\u9700\u8981\u4e0d\u540c\u7684\u7f13\u89e3\u7b56\u7565\u3002<\/p>\n<p>\u5173\u4e8e\u5e7b\u89c9\uff0cLLM Agent \u503e\u5411\u4e8e\u65ad\u8a00\u65e0\u652f\u6301\u7684\u4e8b\u5b9e\uff0c\u8fd9\u79cd\u503e\u5411\u4f1a\u5728\u957f\u5de5\u5177\u8c03\u7528\u5faa\u73af\u4e2d\u7d2f\u79ef [11]\u3002\u73b0\u6709\u7f13\u89e3\u5206\u4e3a\u4e24\u8425\uff1a\uff081\uff09\u5185\u5728\u81ea\u6211\u53cd\u601d\uff08\u4f8b\u5982 Reflexion [20]\u3001Self-Refine [14]\uff09\u8ba9\u540c\u4e00\u6a21\u578b\u6279\u8bc4\u81ea\u5df1\u7684\u8f93\u51fa\uff0c\u7ee7\u627f\u5bfc\u81f4\u9519\u8bef\u7684\u504f\u5dee\uff1b\uff082\uff09\u5916\u90e8\u9a8c\u8bc1\uff08\u4f8b\u5982 RepoAudit \u7684\u7a0b\u5e8f\u5206\u6790\u68c0\u67e5 [5]\uff09\u4ec5\u5bf9\u5206\u6790\u5668\u6240\u6838\u9a8c\u7684\u7a84\u7c7b\u4e8b\u5b9e\u53ef\u9760\uff0c\u65e0\u6cd5\u88c1\u5b9a\u66f4\u5e7f\u7684\u8bed\u4e49\u8bc4\u8bba\u3002\u6211\u4eec\u7684\u72ec\u7acb\u53cd\u601d\u6a21\u5757\u901a\u8fc7\u5c06\u53cd\u601d\u5668\u4e0e\u8bc4\u5ba1 Agent \u89e3\u8026\u6765\u5e94\u5bf9\u5e7b\u89c9\uff0c\u907f\u514d\u5185\u5728\u53cd\u601d\u7684\u81ea\u6211\u5f3a\u5316\u504f\u5dee\u3002\u901a\u8fc7\u53ea\u8fc7\u6ee4\u3001\u4ece\u4e0d\u751f\u6210\uff0c\u5b83\u5728\u4e0d\u7ea6\u675f\u95ee\u9898\u5e7f\u5ea6\u7684\u60c5\u51b5\u4e0b\u63d0\u5347 Precision\u3002<\/p>\n<p>\u5173\u4e8e\u975e\u786e\u5b9a\u6027\uff0cbash \u4e00\u7c7b\u81ea\u7531\u5f62\u5f0f\u5de5\u5177\u4f1a\u81a8\u80c0\u4e0a\u4e0b\u6587\u9884\u7b97\uff0c\u4ea7\u751f\u300ctoken \u96ea\u7403\u300d\u6548\u5e94 [4, 23]\uff0c\u5de8\u5927\u52a8\u4f5c\u7a7a\u95f4\u4e5f\u5728\u591a\u6b21\u8fd0\u884c\u95f4\u5f15\u5165\u53ef\u53d8\u6027 [24]\uff0c\u8fd9\u4fc3\u4f7f\u6211\u4eec\u5728\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\u6a21\u5757\u4e2d\u91c7\u7528\u7b56\u5212\u7684\u3001\u8bc4\u5ba1\u4e13\u7528\u7684\u5de5\u5177\u96c6\uff0c\u800c\u4e0d\u662f\u81ea\u7531\u63a2\u7d22\u3002<\/p>\n<h2>3 OpenCodeReview Agent<\/h2>\n<h3>3.1 \u6982\u89c8<\/h3>\n<p>\u5982\u7b2c 2 \u8282\u6240\u786e\u7acb\uff0c\u73b0\u6709\u81ea\u52a8\u5316\u4ee3\u7801\u8bc4\u5ba1\u65b9\u6cd5\u5b58\u5728\u4e24\u4e2a\u4ea4\u7ec7\u7684\u5f31\u70b9\uff1a\uff081\uff09\u975e\u786e\u5b9a\u6027\uff0c\u65e0\u754c\u5de5\u5177\u4f7f\u7528\u4e0e\u81a8\u80c0\u52a8\u4f5c\u7a7a\u95f4\u4f7f Agent \u884c\u4e3a\u5728\u591a\u6b21\u8fd0\u884c\u95f4\u4e0d\u7a33\u5b9a [4, 23, 24]\uff1b\uff082\uff09\u4e0a\u4e0b\u6587\u5c40\u90e8\u6027\uff0c\u8bc4\u5ba1\u8005\u7684\u6709\u6548\u8bbf\u95ee\u6700\u7ec8\u88ab\u9650\u5236\u5728 diff \u53ca\u5176\u5468\u56f4\uff0c\u4ece\u800c\u9650\u5236\u53ef\u53d1\u73b0\u95ee\u9898\u7684\u6df1\u5ea6\u3002\u8fd9\u4e24\u4e2a\u5f31\u70b9\u5728\u5b9e\u8df5\u4e2d\u76f8\u5173\uff1aAgent \u7cfb\u7edf\u4e2d\u6d41\u884c\u7684\u81ea\u7531\u5f62\u5f0f\u5de5\u5177\uff08\u4f8b\u5982\u901a\u7528 shell \u8bbf\u95ee\uff09\u662f\u975e\u786e\u5b9a\u6027\u7684\u5173\u952e\u8d21\u732e\u8005\uff0c\u800c\u68c0\u7d22\u589e\u5f3a\u65b9\u6cd5\u4e2d\u5360\u4e3b\u5bfc\u7684\u56fa\u5b9a\u68c0\u7d22\u5668\u662f\u4e0a\u4e0b\u6587\u5c40\u90e8\u6027\u7684\u5173\u952e\u8d21\u732e\u8005\u3002\u6839\u56e0\u662f\u5355\u4e00\u8bbe\u8ba1\u7f3a\u53e3\uff1a\u6ca1\u6709\u73b0\u6709\u7cfb\u7edf\u6cbf\u7740\u5bf9\u7167\u4ee3\u7801\u8bc4\u5ba1\u771f\u5b9e\u4fe1\u606f\u9700\u6c42\u9a8c\u8bc1\u8fc7\u7684\u8f74\u6765\u7ea6\u675f Agent \u884c\u4e3a\u3002<\/p>\n<p>OpenCodeReview \u5efa\u7acb\u5728\u6211\u4eec\u79f0\u4e3a<strong>\u5bf9\u4e0d\u786e\u5b9a Agent \u7684\u786e\u5b9a\u6027\u5de5\u7a0b<\/strong>\u7684\u8bbe\u8ba1\u54f2\u5b66\u4e0a\u3002\u4e0d\u662f\u8d4b\u4e88 Agent \u6700\u5927\u81ea\u7531\u5ea6\u5e76\u5e0c\u671b\u5b83\u6536\u655b\uff0c\u6211\u4eec\u5728\u8bc4\u5ba1\u6d41\u6c34\u7ebf\u7684\u4e09\u4e2a\u4f4d\u7f6e\u6ce8\u5165\u786e\u5b9a\u6027\uff0c\u6bcf\u4e00\u5904\u5e94\u5bf9\u7b2c 2 \u8282\u8bc6\u522b\u51fa\u7684\u4e00\u79cd\u975e\u786e\u5b9a\u6027\u6216\u5c40\u90e8\u6027\u6765\u6e90\uff1a<\/p>\n<p>\uff081\uff09<strong>\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1<\/strong> \u7528\u591a\u5c42\u89c4\u5219\u7cfb\u7edf\u66ff\u4ee3\u4e34\u65f6\u6587\u4ef6\u9009\u62e9\uff0c\u786e\u5b9a\u6027\u51b3\u5b9a\u8bc4\u5ba1\u54ea\u4e9b\u6587\u4ef6\u4ee5\u53ca\u5e94\u7528\u4f55\u79cd\u8bc4\u5ba1\u6807\u51c6\uff0c\u6d88\u9664 Agent \u9a71\u52a8\u6587\u4ef6\u5206\u8bca\u7684\u975e\u786e\u5b9a\u6027\u3002<\/p>\n<p>\uff082\uff09<strong>\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1<\/strong> \u7528\u901a\u8fc7 ReAct \u5faa\u73af\u66b4\u9732\u7684\u7b56\u5212\u3001\u8bc4\u5ba1\u4e13\u7528\u5de5\u5177\u96c6\u66ff\u4ee3\u81ea\u7531\u63a2\u7d22\uff0c\u5c06 Agent \u7684\u52a8\u4f5c\u7a7a\u95f4\u7ea6\u675f\u4e3a\u65e2\u5bf9\u8bc4\u5ba1\u6709\u6210\u6548\u3001\u53c8\u5728\u4e0a\u4e0b\u6587\u8db3\u8ff9\u4e0a\u6709\u754c\u7684\u64cd\u4f5c\uff0c\u4ece\u800c\u5e94\u5bf9\u300ctoken \u96ea\u7403\u300d\u6548\u5e94 [4]\uff0c\u540c\u65f6\u6253\u7834\u5c40\u90e8\u6027\u8fb9\u754c\u3002<\/p>\n<p>\uff083\uff09<strong>\u72ec\u7acb\u53cd\u601d<\/strong> \u7528\u5728\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u4e0b\u8fd0\u4f5c\u7684\u5916\u90e8\u8bc1\u4f2a\u68c0\u67e5\u66ff\u4ee3\u5185\u5728\u81ea\u6211\u6279\u8bc4\uff0c\u8fc7\u6ee4\u5e7b\u89c9\u8bc4\u8bba\uff0c\u540c\u65f6\u907f\u514d\u540c\u6a21\u578b\u53cd\u601d\u7684\u81ea\u6211\u5f3a\u5316\u504f\u5dee [14, 20]\u3002<\/p>\n<p>\u8fd9\u4e09\u4e2a\u6a21\u5757\u4e00\u8d77\u6784\u6210\u4e00\u6761\u5728\u6d3e\u53d1\u4e0a\u786e\u5b9a\u3001\u5728\u63a2\u7d22\u4e0a\u6709\u6839\u636e\u3001\u5728\u8f93\u51fa\u4e0a\u53ef\u9760\u7684\u6d41\u6c34\u7ebf\u3002\u56fe 2 \u5c55\u793a\u4e86\u603b\u4f53\u67b6\u6784\uff0c\u672c\u8282\u5176\u4f59\u90e8\u5206\u8be6\u8ff0\u6bcf\u4e2a\u6a21\u5757\u3002<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" style=\"max-width:100%;height:auto\" alt=\"\u56fe 2\uff1aOpenCodeReview \u6982\u89c8\u3002\u6d41\u6c34\u7ebf\u5206\u4e09\u9636\u6bb5\u63a8\u8fdb\u3002\uff081\uff09\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\uff1a\u7ed9\u5b9a\u4e00\u4e2a PR\uff0c\u7cfb\u7edf\u4ece\u56db\u5c42\u94fe\uff08\u5185\u7f6e\u3001\u7528\u6237\u5168\u5c40\u3001\u9879\u76ee\u7ea7\u4e0e\u4e34\u65f6\uff09\u4e3a\u6bcf\u4e2a\u88ab\u6539\u6587\u4ef6\u89e3\u6790\u9002\u7528\u89c4\u5219\uff0c\u6309\u6269\u5c55\u540d\u3001\u7528\u6237\u5305\u542b\/\u6392\u9664\u6a21\u5f0f\u4e0e\u89c4\u6a21\u8fc7\u6ee4\u6587\u4ef6\uff0c\u5e76\u4e3a\u6bcf\u4e2a\u6587\u4ef6\u5e76\u884c\u6d3e\u53d1\u4e00\u4e2a SubAgent\u3002\uff082\uff09\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\uff1a\u6bcf\u4e2a SubAgent \u7528\u8be5\u6587\u4ef6\u7684 diff\u3001\u89e3\u6790\u5f97\u5230\u7684\u89c4\u5219\u4ee5\u53ca\u7b56\u5212\u5de5\u5177\u96c6\uff08file_read\u3001file_find\u3001code_search\u3001file_read_diff\u3001code_comment\u3001task_done\uff09\u6267\u884c ReAct \u5faa\u73af\uff0c\u5176\u6709\u754c\u8f93\u51fa\u9632\u6b62\u4e0a\u4e0b\u6587\u81a8\u80c0\u540c\u65f6\u652f\u6301\u8de8\u6587\u4ef6\u63a2\u7d22\u3002\u751f\u6210\u7684\u8bc4\u8bba\u901a\u8fc7\u591a\u9636\u6bb5\u56de\u9000\u673a\u5236\u89e3\u6790\u5230\u7cbe\u786e\u884c\u53f7\u3002\uff083\uff09\u72ec\u7acb\u53cd\u601d\uff1a\u5916\u90e8\u53cd\u601d\u5668\u5728\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u4e0b\u4ec5\u5bf9\u7167 diff \u5ba1\u67e5\u6bcf\u6761\u8bc4\u8bba\uff0c\u8fc7\u6ee4\u88ab diff \u8bc1\u636e\u76f4\u63a5\u53cd\u9a73\u7684\u8bc4\u8bba\uff0c\u907f\u514d\u540c\u6a21\u578b\u6279\u8bc4\u7684\u81ea\u6211\u5f3a\u5316\u504f\u5dee\u3002\" src=\"https:\/\/youpaiyun.lingbo.online\/paper-read\/2608.09290\/fig02.png\" \/><\/p>\n<p><strong>\u56fe 2\uff1a<\/strong> OpenCodeReview \u6982\u89c8\u3002\u6d41\u6c34\u7ebf\u5206\u4e09\u9636\u6bb5\u63a8\u8fdb\u3002\uff081\uff09\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\uff1a\u7ed9\u5b9a\u4e00\u4e2a PR\uff0c\u7cfb\u7edf\u4ece\u56db\u5c42\u94fe\uff08\u5185\u7f6e\u3001\u7528\u6237\u5168\u5c40\u3001\u9879\u76ee\u7ea7\u4e0e\u4e34\u65f6\uff09\u4e3a\u6bcf\u4e2a\u88ab\u6539\u6587\u4ef6\u89e3\u6790\u9002\u7528\u89c4\u5219\uff0c\u6309\u6269\u5c55\u540d\u3001\u7528\u6237\u5305\u542b\/\u6392\u9664\u6a21\u5f0f\u4e0e\u89c4\u6a21\u8fc7\u6ee4\u6587\u4ef6\uff0c\u5e76\u4e3a\u6bcf\u4e2a\u6587\u4ef6\u5e76\u884c\u6d3e\u53d1\u4e00\u4e2a SubAgent\u3002\uff082\uff09\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\uff1a\u6bcf\u4e2a SubAgent \u7528\u8be5\u6587\u4ef6\u7684 diff\u3001\u89e3\u6790\u5f97\u5230\u7684\u89c4\u5219\u4ee5\u53ca\u7b56\u5212\u5de5\u5177\u96c6\uff08file_read\u3001file_find\u3001code_search\u3001file_read_diff\u3001code_comment\u3001task_done\uff09\u6267\u884c ReAct \u5faa\u73af\uff0c\u5176\u6709\u754c\u8f93\u51fa\u9632\u6b62\u4e0a\u4e0b\u6587\u81a8\u80c0\u540c\u65f6\u652f\u6301\u8de8\u6587\u4ef6\u63a2\u7d22\u3002\u751f\u6210\u7684\u8bc4\u8bba\u901a\u8fc7\u591a\u9636\u6bb5\u56de\u9000\u673a\u5236\u89e3\u6790\u5230\u7cbe\u786e\u884c\u53f7\u3002\uff083\uff09\u72ec\u7acb\u53cd\u601d\uff1a\u5916\u90e8\u53cd\u601d\u5668\u5728\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u4e0b\u4ec5\u5bf9\u7167 diff \u5ba1\u67e5\u6bcf\u6761\u8bc4\u8bba\uff0c\u8fc7\u6ee4\u88ab diff \u8bc1\u636e\u76f4\u63a5\u53cd\u9a73\u7684\u8bc4\u8bba\uff0c\u907f\u514d\u540c\u6a21\u578b\u6279\u8bc4\u7684\u81ea\u6211\u5f3a\u5316\u504f\u5dee\u3002<\/p>\n<h3>3.2 \u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1<\/h3>\n<p>\u57fa\u4e8e Agent \u7684\u8bc4\u5ba1\u4e2d\u975e\u786e\u5b9a\u6027\u7684\u7b2c\u4e00\u4e2a\u6765\u6e90\u662f\u6587\u4ef6\u9009\u62e9\uff1a\u5f53\u88ab\u8981\u6c42\u300c\u8bc4\u5ba1\u8fd9\u4e2a PR\u300d\u65f6\uff0cAgent \u5fc5\u987b\u51b3\u5b9a\u54ea\u4e9b\u6587\u4ef6\u503c\u5f97\u5173\u6ce8\u4ee5\u53ca\u5e94\u7528\u4f55\u79cd\u6807\u51c6\u3002\u82e5\u7559\u7ed9 Agent\uff0c\u8fd9\u4e00\u51b3\u7b56\u4f1a\u5728\u591a\u6b21\u8fd0\u884c\u95f4\u53d8\u5316\uff0c\u5e76\u53ef\u80fd\u5ffd\u7565\u53d7\u9879\u76ee\u7279\u5b9a\u8bc4\u5ba1\u6807\u51c6\u7ea6\u675f\u7684\u6587\u4ef6\u3002OpenCodeReview \u901a\u8fc7\u4f7f\u6587\u4ef6\u9009\u62e9\u4e0e\u6807\u51c6\u5206\u914d\u7531\u89c4\u5219\u9a71\u52a8\u800c\u975e Agent \u9a71\u52a8\u6765\u6d88\u9664\u8fd9\u79cd\u53ef\u53d8\u6027\u3002<\/p>\n<h4>3.2.1 \u89c4\u5219\u6982\u5ff5<\/h4>\n<p>OpenCodeReview \u4e2d\u7684\u89c4\u5219\u662f\u4e00\u4efd\u81ea\u7136\u8bed\u8a00\u6587\u6863\uff0c\u4e3a\u4e00\u7c7b\u6587\u4ef6\u6307\u5b9a\u8bc4\u5ba1\u6807\u51c6\u3002\u89c4\u5219\u670d\u52a1\u53cc\u91cd\u76ee\u7684\uff1a\u5b83\u4eec\u51b3\u5b9a\u54ea\u4e9b\u6587\u4ef6\u5728\u8303\u56f4\u5185\uff08\u901a\u8fc7\u57fa\u4e8e glob \u7684\u8def\u5f84\u6a21\u5f0f\uff09\uff0c\u4ee5\u53ca SubAgent \u5e94\u68c0\u67e5\u4ec0\u4e48\uff08\u901a\u8fc7\u8986\u76d6\u6b63\u786e\u6027\u3001\u5b89\u5168\u3001\u6027\u80fd\u3001\u53ef\u7ef4\u62a4\u6027\u4e0e\u6d4b\u8bd5\u8986\u76d6\u7684\u7ed3\u6784\u5316\u8bc4\u5ba1\u6e05\u5355\uff09\u3002\u6bcf\u4efd\u89c4\u5219\u6587\u6863\u662f\u9886\u57df\u7279\u5b9a\u7684\u3002\u4f8b\u5982\uff0c\u9762\u5411\u9759\u6001\u7c7b\u578b\u8bed\u8a00\u7684\u89c4\u5219\u53ef\u5305\u542b\u7ebf\u7a0b\u5b89\u5168\u4e0e\u5e38\u89c1\u6846\u67b6\u9677\u9631\u68c0\u67e5\uff0c\u800c\u9762\u5411 CI \u914d\u7f6e\u6587\u4ef6\u7684\u89c4\u5219\u805a\u7126\u5de5\u4f5c\u6d41\u8bed\u6cd5\u4e0e\u5bc6\u94a5\u7ba1\u7406\u3002\u8fd9\u786e\u4fdd\u8bc4\u5ba1\u6807\u51c6\u6309\u6587\u4ef6\u7c7b\u578b\u91cf\u8eab\u5b9a\u5236\uff0c\u800c\u4e0d\u662f\u901a\u7528\u7684\u3002<\/p>\n<h4>3.2.2 \u591a\u5c42\u89c4\u5219\u89e3\u6790<\/h4>\n<p>\u89c4\u5219\u88ab\u7ec4\u7ec7\u4e3a\u56db\u5c42\u4f18\u5148\u7ea7\u94fe\uff08\u8868 1\uff09\uff0c\u6bcf\u4e00\u5c42\u5bf9\u5e94\u4e0d\u540c\u7684\u6743\u5a01\u8303\u56f4\u3002<\/p>\n<p><strong>\u8868 1\uff1a<\/strong> \u56db\u5c42\u89c4\u5219\u4f18\u5148\u7ea7\u94fe\u3002<\/p>\n<table>\n<thead>\n<tr>\n<th>\u5c42\u7ea7<\/th>\n<th>\u6765\u6e90<\/th>\n<th>\u8303\u56f4<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1\uff08\u6700\u9ad8\uff09<\/td>\n<td>\u8c03\u7528\u65f6\u63d0\u4f9b\u7684\u4e34\u65f6\u89c4\u5219<\/td>\n<td>\u6bcf\u6b21\u8c03\u7528<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>\u5b58\u50a8\u5728\u4ed3\u5e93\u4e2d\u7684\u9879\u76ee\u7ea7\u89c4\u5219<\/td>\n<td>\u9879\u76ee\u7279\u5b9a\u3001\u53d7\u7248\u672c\u63a7\u5236<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>\u5b58\u50a8\u5728\u7528\u6237\u4e3b\u76ee\u5f55\u4e2d\u7684\u7528\u6237\u5168\u5c40\u89c4\u5219<\/td>\n<td>\u8de8\u9879\u76ee<\/td>\n<\/tr>\n<tr>\n<td>4\uff08\u6700\u4f4e\uff09<\/td>\n<td>\u5185\u7f6e\u7cfb\u7edf\u89c4\u5219<\/td>\n<td>\u6309\u8bed\u8a00\/\u6587\u4ef6\u7c7b\u578b\u7684\u9ed8\u8ba4<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u5728\u57fa\u5c42\uff0c\u7cfb\u7edf\u9644\u5e26\u4e00\u7ec4\u8986\u76d6\u4e3b\u8981\u7f16\u7a0b\u8bed\u8a00\u4e0e\u914d\u7f6e\u6587\u4ef6\u683c\u5f0f\u7684\u5185\u7f6e\u89c4\u5219\u3002\u8def\u5f84\u5339\u914d\u4f7f\u7528\u5e26\u82b1\u62ec\u53f7\u5c55\u5f00\u4e0e\u5927\u5c0f\u5199\u4e0d\u654f\u611f\u6bd4\u8f83\u7684\u9012\u5f52 glob \u6a21\u5f0f\uff0c\u6309\u58f0\u660e\u987a\u5e8f\u6c42\u503c\uff0c\u91c7\u7528\u5148\u5339\u914d\u8005\u80dc\u51fa\u7684\u8bed\u4e49\u3002\u8fd9\u786e\u4fdd\u6bcf\u4e2a\u6587\u4ef6\u88ab\u786e\u5b9a\u6027\u6620\u5c04\u5230\u6700\u5177\u4f53\u7684\u9002\u7528\u89c4\u5219\u3002<\/p>\n<p>\u5f53\u7528\u6237\u5b9a\u4e49\u9879\u76ee\u6216\u5168\u5c40\u89c4\u5219\u65f6\uff0c\u5b83\u53ef\u4ee5\u4ee5\u4e24\u79cd\u6a21\u5f0f\u4e4b\u4e00\u4e0e\u7cfb\u7edf\u89c4\u5219\u4ea4\u4e92\uff1a<\/p>\n<ul>\n<li><strong>\u66ff\u6362\u6a21\u5f0f\uff08\u9ed8\u8ba4\uff09\uff1a<\/strong> \u7528\u6237\u89c4\u5219\u5bf9\u5339\u914d\u8def\u5f84\u5b8c\u5168\u53d6\u4ee3\u7cfb\u7edf\u89c4\u5219\u3002<\/li>\n<li><strong>\u5408\u5e76\u6a21\u5f0f\uff1a<\/strong> \u7cfb\u7edf\u89c4\u5219\u4e0e\u7528\u6237\u89c4\u5219\u88ab\u62fc\u63a5\u4e3a\u5355\u4e00\u6587\u6863\uff0c\u4fdd\u7559\u8bed\u8a00\u7279\u5b9a\u9ed8\u8ba4\uff0c\u540c\u65f6\u8ffd\u52a0\u9879\u76ee\u7279\u5b9a\u6807\u51c6\u3002<\/li>\n<\/ul>\n<p>\u8fd9\u79cd\u5206\u5c42\u8bbe\u8ba1\u786e\u4fdd\u8bc4\u5ba1\u6807\u51c6\u662f\u786e\u5b9a\u6027\u7684\uff1a\u540c\u4e00 PR \u603b\u662f\u5f97\u5230\u76f8\u540c\u7684\u89c4\u5219\u5206\u914d\uff0c\u540c\u65f6\u4ecd\u53ef\u9002\u5e94\u2014\u2014\u9879\u76ee\u53ef\u4ee5\u8986\u76d6\u6216\u6269\u5c55\u9ed8\u8ba4\uff0c\u800c\u65e0\u9700\u4fee\u6539\u7cfb\u7edf\u3002<\/p>\n<h4>3.2.3 \u6587\u4ef6\u8fc7\u6ee4\u4e0e\u6d3e\u53d1<\/h4>\n<p>\u5728\u6d3e\u53d1 SubAgent \u4e4b\u524d\uff0cOpenCodeReview \u5bf9\u88ab\u6539\u6587\u4ef6\u5e94\u7528\u591a\u9636\u6bb5\u8fc7\u6ee4\uff1a\uff081\uff09\u6392\u9664\u4e8c\u8fdb\u5236\u6587\u4ef6\uff1b\uff082\uff09\u82e5\u5df2\u914d\u7f6e\uff0c\u5e94\u7528\u7528\u6237\u5b9a\u4e49\u7684\u6392\u9664\u6a21\u5f0f\uff1b\uff083\uff09\u82e5\u5b9a\u4e49\u4e86\u5305\u542b\u6a21\u5f0f\uff0c\u4ec5\u5339\u914d\u6587\u4ef6\u901a\u8fc7\uff1b\uff084\uff09\u5185\u7f6e\u6269\u5c55\u540d\u5141\u8bb8\u5217\u8868\u8fc7\u6ee4\u4e0d\u652f\u6301\u7684\u6587\u4ef6\u7c7b\u578b\uff1b\uff085\uff09\u9ed8\u8ba4\u6392\u9664\u6a21\u5f0f\u79fb\u9664\u6d4b\u8bd5\u5939\u5177\u4e0e\u751f\u6210\u4ee3\u7801\u3002\u6b64\u5916\uff0c\uff086\uff09diff \u5185\u5bb9\u8d85\u8fc7\u6a21\u578b\u4e0a\u4e0b\u6587\u7a97\u53e3 80% \u7684\u6587\u4ef6\u88ab\u8fc7\u6ee4\uff0c\u4ee5\u907f\u514d\u4e0a\u4e0b\u6587\u9971\u548c\u3002\u5bf9\u6bcf\u4e2a\u5269\u4f59\u6587\u4ef6\uff0c\u7cfb\u7edf\u901a\u8fc7\u56db\u5c42\u94fe\u89e3\u6790\u9002\u7528\u89c4\u5219\u6587\u672c\uff0c\u5e76\u901a\u8fc7\u5c06\u6587\u4ef6 diff\u3001\u89e3\u6790\u5f97\u5230\u7684\u89c4\u5219\u3001\u5176\u4ed6\u88ab\u6539\u6587\u4ef6\u5217\u8868\u4ee5\u53ca\u4efb\u4f55\u7528\u6237\u63d0\u4f9b\u7684\u80cc\u666f\u4fe1\u606f\u6ce8\u5165 prompt \u6a21\u677f\u6765\u6784\u9020 SubAgent \u7684\u8f93\u5165\u3002\u968f\u540e\u6bcf\u4e2a SubAgent \u4f5c\u4e3a\u72ec\u7acb\u5e76\u53d1\u4efb\u52a1\u542f\u52a8\uff0c\u4ece\u800c\u5b9e\u73b0\u6587\u4ef6\u7ea7\u5e76\u884c\u3002<\/p>\n<p>\u8fd9\u4e00\u8bbe\u8ba1\u786e\u4fdd\u8bc4\u5ba1\u7684\u300c\u4ec0\u4e48\u300d\uff08\u54ea\u4e9b\u6587\u4ef6\uff09\u4e0e\u300c\u5982\u4f55\u300d\uff08\u4f55\u79cd\u6807\u51c6\uff09\u5b8c\u5168\u7531\u89c4\u5219\u800c\u975e Agent \u88c1\u91cf\u51b3\u5b9a\uff0c\u6d88\u9664\u8fd0\u884c\u95f4\u53ef\u53d8\u6027\u7684\u4e00\u4e2a\u4e3b\u8981\u6765\u6e90\uff0c\u540c\u65f6\u4fdd\u7559\u9002\u5e94\u9879\u76ee\u7ea6\u5b9a\u7684\u7075\u6d3b\u6027\u3002<\/p>\n<h3>3.3 \u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1<\/h3>\n<p>\u4e00\u65e6 SubAgent \u5e26\u7740\u6587\u4ef6\u7684 diff \u4e0e\u9002\u7528\u89c4\u5219\u88ab\u6d3e\u53d1\uff0c\u5b83\u5fc5\u987b\u63a2\u7d22\u4ed3\u5e93\u4ee5\u6536\u96c6\u8bc6\u522b\u6df1\u5c42\u8de8\u6587\u4ef6\u95ee\u9898\u6240\u9700\u7684\u4e0a\u4e0b\u6587\uff0c\u540c\u65f6\u907f\u514d\u81ea\u7531\u5f62\u5f0f\u5de5\u5177\u7684\u975e\u786e\u5b9a\u6027\u4e0e\u4e0a\u4e0b\u6587\u81a8\u80c0\u3002OpenCodeReview \u901a\u8fc7\u5e26\u7b56\u5212\u5de5\u5177\u96c6\u7684\u57fa\u4e8e ReAct \u7684 Agent \u5faa\u73af\u5b9e\u73b0\u8fd9\u4e00\u70b9\uff0c\u65e8\u5728\u5c06 Agent \u7684\u63a8\u7406\u5efa\u7acb\u5728\u8bc1\u636e\u4e0a\uff0c\u540c\u65f6\u9650\u5236\u5176\u4e0a\u4e0b\u6587\u8db3\u8ff9\u3002<\/p>\n<h4>3.3.1 Agent \u5faa\u73af<\/h4>\n<p>\u6bcf\u4e2a SubAgent \u9075\u5faa\u6807\u51c6 ReAct \u5faa\u73af [26]\uff1a\u5728\u6bcf\u6b21\u8fed\u4ee3\u4e2d\uff0cLLM \u4ea7\u751f\u4e00\u4e2a\u601d\u60f3\uff08\u5bf9\u5f53\u524d\u72b6\u6001\u7684\u63a8\u7406\uff09\u5e76\u9009\u62e9\u4e00\u4e2a\u52a8\u4f5c\uff08\u4e00\u6b21\u5de5\u5177\u8c03\u7528\uff09\uff1b\u5de5\u5177\u8f93\u51fa\u4f5c\u4e3a\u89c2\u5bdf\u8fd4\u56de\u5e76\u8ffd\u52a0\u5230\u5bf9\u8bdd\u5386\u53f2\u3002\u5faa\u73af\u6301\u7eed\u76f4\u5230 Agent \u8c03\u7528 <code>task_done<\/code> \u6216\u8fbe\u5230\u6700\u5927\u8fed\u4ee3\u4e0a\u754c\u3002\u6211\u4eec\u5c06\u9ed8\u8ba4\u4e0a\u754c\u8bbe\u4e3a 30\uff0c\u4f5c\u4e3a\u5b9e\u7528\u6743\u8861\uff1a\u5b83\u8db3\u591f\u9ad8\u4ee5\u5bb9\u7eb3\u5178\u578b\u8de8\u6587\u4ef6\u63a2\u7d22\uff08\u4f8b\u5982\u8ffd\u8e2a\u8c03\u7528\u8005\u3001\u68c0\u67e5\u88ab\u8c03\u7528\u8005\u3001\u67e5\u770b\u76f8\u5173\u6d4b\u8bd5\uff09\uff0c\u53c8\u8db3\u591f\u4f4e\u4ee5\u4f5c\u4e3a\u9632\u6b62\u5931\u63a7\u5faa\u73af\u7684\u786c\u9876\u3002\u53e6\u5916\u4e24\u4e2a\u63a7\u5236\u673a\u5236\u8fdb\u4e00\u6b65\u9632\u6b62\u5faa\u73af\u5728\u8fbe\u5230\u8be5\u4e0a\u754c\u524d\u9000\u5316\uff1a<\/p>\n<ul>\n<li><strong>\u7a7a\u8f6e\u68c0\u6d4b\u3002<\/strong> \u82e5 Agent \u8fde\u7eed\u4e09\u8f6e\u4e0d\u4ea7\u751f\u5de5\u5177\u8c03\u7528\uff0c\u5219\u88ab\u63d0\u793a\u91c7\u53d6\u884c\u52a8\u6216\u7ec8\u6b62\uff0c\u9632\u6b62\u65e0\u9650\u505c\u6ede\u3002<\/li>\n<li><strong>\u4e0a\u4e0b\u6587\u538b\u7f29\u3002<\/strong> \u968f\u7740\u5bf9\u8bdd\u589e\u957f\uff0cOpenCodeReview \u5bf9\u7167\u6a21\u578b\u4e0a\u4e0b\u6587\u7a97\u53e3\u76d1\u89c6 token \u4f7f\u7528\u3002\u5728 60% \u5229\u7528\u7387\u65f6\u89e6\u53d1\u5f02\u6b65\u540e\u53f0\u538b\u7f29\uff1b\u5728 80% \u65f6\uff0c\u540c\u6b65\u538b\u7f29\u5f3a\u5236\u5c06\u5bf9\u8bdd\u5386\u53f2\u7684\u4e2d\u95f4\u533a\u57df\u603b\u7ed3\u4e3a\u7ed3\u6784\u5316\u6458\u8981\uff0c\u540c\u65f6\u4fdd\u7559\u7cfb\u7edf prompt \u4e0e\u6700\u8fd1\u4ea4\u4e92\u3002\u8fd9\u4e00\u4e09\u533a\u57df\u7b56\u7565\uff08\u51bb\u7ed3\u2013\u538b\u7f29\u2013\u6d3b\u8dc3\uff09\u7f13\u89e3 token \u96ea\u7403\u6548\u5e94 [4, 23]\u3002<\/li>\n<\/ul>\n<h4>3.3.2 \u7b56\u5212\u7684\u4e0a\u4e0b\u6587\u5de5\u5177<\/h4>\n<p>\u4e0d\u662f\u66b4\u9732\u901a\u7528 bash shell\u2014\u2014\u5b83\u4ee5\u81a8\u80c0\u52a8\u4f5c\u7a7a\u95f4\u4e0e\u4e0a\u4e0b\u6587\u9884\u7b97\u4e3a\u4ee3\u4ef7\u6700\u5927\u5316\u7075\u6d3b\u6027 [24]\u2014\u2014OpenCodeReview \u63d0\u4f9b\u56fa\u5b9a\u7684\u516d\u79cd\u8bc4\u5ba1\u4e13\u7528\u5de5\u5177\uff0c\u6bcf\u79cd\u90fd\u6709\u6709\u754c\u8f93\u51fa\u3002\u8868 2 \u6c47\u603b\u4e86\u8be5\u5de5\u5177\u96c6\u3002<\/p>\n<p><strong>\u8868 2\uff1a<\/strong> \u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\u6240\u7528\u7b56\u5212\u5de5\u5177\u96c6\u3002<\/p>\n<table>\n<thead>\n<tr>\n<th>\u5de5\u5177<\/th>\n<th>\u7528\u9014<\/th>\n<th>\u6709\u754c\u8f93\u51fa<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>file_read<\/td>\n<td>\u6309\u8def\u5f84\u4ee5\u53ca\u53ef\u9009\u884c\u8303\u56f4\u8bfb\u53d6\u6587\u4ef6\u5185\u5bb9<\/td>\n<td>\u6bcf\u6b21\u8c03\u7528\u6700\u591a 500 \u884c<\/td>\n<\/tr>\n<tr>\n<td>file_find<\/td>\n<td>\u6309\u540d\u79f0\u5173\u952e\u5b57\u5b9a\u4f4d\u6587\u4ef6<\/td>\n<td>\u6700\u591a 100 \u6761\u7ed3\u679c<\/td>\n<\/tr>\n<tr>\n<td>code_search<\/td>\n<td>\u5728\u4ed3\u5e93\u4e2d\u641c\u7d22\u6587\u672c\u6a21\u5f0f<\/td>\n<td>\u6700\u591a 100 \u6761\u5339\u914d\uff0c10s \u8d85\u65f6<\/td>\n<\/tr>\n<tr>\n<td>file_read_diff<\/td>\n<td>\u67e5\u770b\u53e6\u4e00\u4e2a\u88ab\u6539\u6587\u4ef6\u7684 diff<\/td>\n<td>\u8fd4\u56de\u9884\u5148\u8ba1\u7b97\u7684 diff<\/td>\n<\/tr>\n<tr>\n<td>code_comment<\/td>\n<td>\u63d0\u4ea4\u8bc4\u5ba1\u8bc4\u8bba<\/td>\n<td>\u5f02\u6b65\u89e3\u6790\u5e76\u6536\u96c6<\/td>\n<\/tr>\n<tr>\n<td>task_done<\/td>\n<td>\u53d1\u51fa\u4efb\u52a1\u5b8c\u6210\u4fe1\u53f7<\/td>\n<td>\u7ec8\u6b62\u5faa\u73af<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u8fd9\u4e00\u5de5\u5177\u96c6\u53d7\u5230\u5982\u4e0b\u89c2\u5bdf\u7684\u6fc0\u53d1\uff1a\u5de5\u5177\u63a5\u53e3\u8bbe\u8ba1\u4f1a\u5b9e\u8d28\u5f71\u54cd Agent \u6027\u80fd [25]\u3002\u6bcf\u79cd\u5de5\u5177\u5bf9\u5e94\u4eba\u7c7b\u8bc4\u5ba1\u8005\u4f1a\u6ee1\u8db3\u7684\u4e00\u79cd\u4e0d\u540c\u4fe1\u606f\u9700\u6c42\uff1a\u9605\u8bfb\u88ab\u6539\u51fd\u6570\u7684\u5b8c\u6574\u4e0a\u4e0b\u6587\uff08file_read\uff09\u3001\u5b9a\u4f4d\u5b9a\u4e49\u6216\u6d4b\u8bd5\uff08file_find\uff09\u3001\u8ffd\u8e2a\u88ab\u6539 API \u7684\u8c03\u7528\u8005\uff08code_search\uff09\u3001\u7406\u89e3\u4e00\u6b21\u53d8\u66f4\u5982\u4f55\u4e0e\u5e76\u53d1\u4fee\u6539\u4ea4\u4e92\uff08file_read_diff\uff09\uff0c\u4ee5\u53ca\u8bb0\u5f55\u53d1\u73b0\uff08code_comment\uff09\u3002\u5176\u4e2d\uff0cfile_read_diff \u5bf9\u591a\u6587\u4ef6 PR \u8bbe\u7f6e\u662f\u72ec\u7279\u7684\uff0c\u7cfb\u7edf prompt \u4e2d\u7684\u4e25\u683c\u805a\u7126\u89c4\u5219\u6307\u793a SubAgent\uff1a\u5176\u4ed6\u6587\u4ef6\u4e2d\u7684\u53d1\u73b0\u4e0d\u5f97\u6210\u4e3a\u8bc4\u8bba\u5bf9\u8c61\uff0c\u56e0\u4e3a\u53ea\u6709\u5f53\u524d\u6587\u4ef6\u7684 diff \u5904\u4e8e\u8bc4\u5ba1\u4e4b\u4e0b\u3002<\/p>\n<p>\u6bcf\u79cd\u5de5\u5177\u7684\u6709\u754c\u8f93\u51fa\u662f\u523b\u610f\u7ea6\u675f\uff1a\u901a\u8fc7\u9650\u5236\u7ed3\u679c\u5e76\u5f3a\u5236\u8d85\u65f6\uff0c\u7cfb\u7edf\u9632\u6b62\u4efb\u4f55\u5355\u6b21\u5de5\u5177\u8c03\u7528\u9971\u548c\u4e0a\u4e0b\u6587\u7a97\u53e3\uff0c\u4f7f Agent \u884c\u4e3a\u53ef\u9884\u6d4b\u4e14\u6210\u672c\u6709\u754c\uff0c\u540c\u65f6\u4e0d\u727a\u7272\u8ffd\u8e2a\u8de8\u6587\u4ef6\u4f9d\u8d56\u7684\u80fd\u529b\u3002<\/p>\n<h4>3.3.3 \u8bc4\u8bba\u751f\u6210\u4e0e\u884c\u5b9a\u4f4d<\/h4>\n<p>\u5f53 Agent \u8bc6\u522b\u51fa\u4e00\u4e2a\u95ee\u9898\u65f6\uff0c\u5b83\u8c03\u7528 <code>code_comment<\/code>\uff0c\u5e26\u4e0a\u8bc4\u8bba\u6587\u672c\u3001\u7528\u4e8e\u5b9a\u4f4d\u7684\u4ee3\u7801\u7247\u6bb5\uff08<code>existing_code<\/code>\uff09\uff0c\u4ee5\u53ca\u53ef\u9009\u7684\u5efa\u8bae\u4fee\u590d\uff08<code>suggestion_code<\/code>\uff09\u3002\u7531\u4e8e Agent \u53ef\u80fd\u4ea7\u751f\u4e0d\u7cbe\u786e\u6216\u4e0d\u5b8c\u6574\u7684\u4ee3\u7801\u7247\u6bb5\uff0cOpenCodeReview \u901a\u8fc7\u4e09\u9636\u6bb5\u56de\u9000\u89e3\u6790\u884c\u53f7\uff0c\u800c\u4e0d\u662f\u76f4\u63a5\u4fe1\u4efb Agent \u7684\u8f93\u51fa\u3002\u7b2c\u4e00\u9636\u6bb5\uff0c\u7cfb\u7edf\u5c1d\u8bd5\u5c06 <code>existing_code<\/code> \u4e0e diff \u7684\u65b0\u4fa7 hunk \u5339\u914d\uff0c\u4ece\u800c\u5728\u88ab\u6539\u533a\u57df\u5185\u5f97\u5230\u7cbe\u786e\u884c\u951a\u70b9\u3002\u82e5\u5339\u914d\u5931\u8d25\uff0c\u7b2c\u4e8c\u9636\u6bb5\u641c\u7d22\u5b8c\u6574\u6587\u4ef6\u5185\u5bb9\uff0c\u5904\u7406\u7247\u6bb5\u5f15\u7528 diff \u4e4b\u5916\u672a\u6539\u884c\u7684\u60c5\u5f62\u3002\u82e5\u4e24\u9636\u6bb5\u90fd\u5931\u8d25\uff0c\u7b2c\u4e09\u9636\u6bb5\u8c03\u7528 LLM \u8f85\u52a9\u91cd\u5b9a\u4f4d\u6b65\u9aa4\uff0c\u4ece\u5468\u56f4\u4e0a\u4e0b\u6587\u91cd\u65b0\u62bd\u53d6\u88ab\u5f15\u7528\u7247\u6bb5\u3002\u8fd9\u4e00\u591a\u9636\u6bb5\u56de\u9000\u786e\u4fdd\u5373\u4f7f Agent \u7684\u5b9a\u4f4d\u4e0d\u53ef\u9760\uff0c\u8bc4\u8bba\u4e5f\u80fd\u88ab\u51c6\u786e\u951a\u5b9a\u3002<\/p>\n<h3>3.4 \u72ec\u7acb\u53cd\u601d<\/h3>\n<p>\u4f7f ReAct \u5faa\u73af\u6709\u6548\u7684\u81ea\u4e3b\u6027\uff0c\u4e5f\u4f7f\u5176\u5bb9\u6613\u4ea7\u751f\u5e7b\u89c9\uff1aAgent \u53ef\u80fd\u65ad\u8a00 diff \u8bc1\u636e\u4e0d\u652f\u6301\u6216\u76f4\u63a5\u53cd\u9a73\u7684\u95ee\u9898 [11]\u3002\u5982\u7b2c 2.3 \u8282\u6240\u8ba8\u8bba\uff0c\u73b0\u6709\u7f13\u89e3\u8981\u4e48\u4f9d\u8d56\u5185\u5728\u81ea\u6211\u53cd\u601d\uff08\u7ee7\u627f\u76f8\u540c\u504f\u5dee\uff09\uff0c\u8981\u4e48\u4f9d\u8d56\u5916\u90e8\u7a0b\u5e8f\u5206\u6790\u9a8c\u8bc1\u5668\uff08\u4ec5\u8986\u76d6\u7a84\u7c7b\u4e8b\u5b9e\u7c7b\u578b\uff09\u3002OpenCodeReview \u5f15\u5165\u4e00\u79cd\u5728\u4fe1\u606f\u8fb9\u754c\u4e0a\u72ec\u7acb\u3001\u5728\u8986\u76d6\u4e0a\u5bbd\u5e7f\u7684\u53cd\u601d\u673a\u5236\u3002<\/p>\n<h4>3.4.1 \u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c<\/h4>\n<p>\u53cd\u601d\u6a21\u5757\u5728 SubAgent \u5b8c\u6210\u5176 ReAct \u5faa\u73af\u540e\u88ab\u8c03\u7528\u3002\u5b83\u63a5\u6536\u4e24\u4e2a\u8f93\u5165\uff1a\u6587\u4ef6\u7684 diff \u4ee5\u53ca SubAgent \u4ea7\u751f\u7684\u8bc4\u8bba\u5217\u8868\u3002\u5173\u952e\u7684\u662f\uff0c\u53cd\u601d\u5668\u5728\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u4e0b\u8fd0\u4f5c\uff1a\u4e0e\u901a\u8fc7\u5de5\u5177\u8bbf\u95ee\u5b8c\u6574\u4ed3\u5e93\u7684 SubAgent \u4e0d\u540c\uff0c\u53cd\u601d\u5668\u53ea\u770b\u5230 diff\u3002\u8fd9\u4e00\u8bbe\u8ba1\u662f\u523b\u610f\u7684\u3002SubAgent \u53ef\u80fd\u4f7f\u7528\u4ece\u5176\u4ed6\u6587\u4ef6\u6536\u96c6\u7684\u4e0a\u4e0b\u6587\u5f62\u6210\u8bc4\u8bba\uff0c\u800c\u8fd9\u4e9b\u4e0a\u4e0b\u6587\u53cd\u601d\u5668\u65e0\u6cd5\u6838\u9a8c\u3002\u53cd\u601d\u5668\u4e0d\u662f\u8bd5\u56fe\u91cd\u65b0\u63a8\u5bfc\u8be5\u4e0a\u4e0b\u6587\uff0c\u5176\u4efb\u52a1\u88ab\u7a84\u5316\uff1a\u53ea\u8fc7\u6ee4\u90a3\u4e9b\u88ab diff \u672c\u8eab\u4e2d\u7684\u8bc1\u636e\u76f4\u63a5\u53cd\u9a73\u7684\u8bc4\u8bba\u3002<\/p>\n<p>\u8fd9\u79cd\u975e\u5bf9\u79f0\u662f\u8be5\u6a21\u5757\u72ec\u7acb\u6027\u7684\u5173\u952e\u3002\u5185\u5728\u81ea\u6211\u53cd\u601d\u4e4b\u6240\u4ee5\u5931\u8d25\uff0c\u662f\u56e0\u4e3a\u540c\u4e00\u6a21\u578b\u5e26\u7740\u76f8\u540c\u4e0a\u4e0b\u6587\u5ba1\u67e5\u81ea\u5df1\u7684\u8f93\u51fa\uff0c\u503e\u5411\u4e8e\u786e\u8ba4\u5176\u5148\u524d\u7ed3\u8bba [14, 20]\u3002\u5916\u90e8\u9a8c\u8bc1\u5668\u4e4b\u6240\u4ee5\u5931\u8d25\uff0c\u662f\u56e0\u4e3a\u5b83\u4eec\u53ea\u8986\u76d6\u7a0b\u5e8f\u5206\u6790\u5668\u80fd\u68c0\u67e5\u7684\u7a84\u7c7b\u4e8b\u5b9e\u3002\u53cd\u601d\u6a21\u5757\u5360\u636e\u4e2d\u95f4\u5730\u5e26\uff1a\u5b83\u4f7f\u7528\u76f8\u540c LLM\uff0c\u4f46\u5176\u4fe1\u606f\u8fb9\u754c\u4e0d\u540c\u3002\u5b83\u770b\u5230\u7684\u6bd4 Agent \u5c11\uff0c\u800c\u4e0d\u662f\u66f4\u591a\uff0c\u8fd9\u6253\u7834\u4e86\u81ea\u6211\u5f3a\u5316\u504f\u5dee\uff0c\u540c\u65f6\u4e0d\u628a\u8986\u76d6\u9650\u5236\u5728\u53ef\u5206\u6790\u6838\u9a8c\u7684\u4e8b\u5b9e\u7c7b\u578b\u4e0a\u3002<\/p>\n<h4>3.4.2 \u8bc1\u4f2a\uff0c\u800c\u975e\u8bc1\u5b9e<\/h4>\n<p>\u53cd\u601d\u5668\u7684\u6307\u5bfc\u539f\u5219\u662f\u8bc1\u4f2a\u800c\u975e\u8bc1\u5b9e\uff0c\u7075\u611f\u6765\u81ea\u8ba4\u8bc6\u8bba\u539f\u5219\uff1a\u4e3b\u5f20\u5e94\u901a\u8fc7\u8bd5\u56fe\u53cd\u9a73\u800c\u4e0d\u662f\u786e\u8ba4\u6765\u68c0\u9a8c [9]\u3002\u5177\u4f53\u800c\u8a00\uff0c\u53cd\u601d\u5668\u5bf9\u6bcf\u6761\u8bc4\u8bba\u6267\u884c\u4e24\u6b65\u8bc4\u4f30\uff1a<\/p>\n<ul>\n<li><strong>\u4e8b\u5b9e\u68c0\u67e5\uff08\u5426\u51b3\u89c4\u5219\uff09\uff1a<\/strong> \u53cd\u601d\u5668\u68c0\u67e5 diff \u662f\u5426\u5305\u542b\u5bf9\u8bc4\u8bba\u5173\u952e\u4e3b\u5f20\u7684\u76f4\u63a5\u53cd\u8bc1\u3002\u82e5 diff \u4e0e\u8bc4\u8bba\u77db\u76fe\uff0c\u8be5\u8bc4\u8bba\u88ab\u6807\u8bb0\u4e3a\u79fb\u9664\u3002\u82e5\u8bc4\u8bba\u5f15\u7528 diff \u4e2d\u4e0d\u53ef\u89c1\u7684\u4e0a\u4e0b\u6587\uff08\u4f8b\u5982\u5176\u4ed6\u6587\u4ef6\u4e2d\u7684\u903b\u8f91\u3001\u8fd0\u884c\u65f6\u884c\u4e3a\uff09\uff0c\u53cd\u601d\u5668\u4e0d\u6807\u8bb0\u5b83\uff0c\u56e0\u4e3a SubAgent \u53ef\u80fd\u4ece\u5176\u5de5\u5177\u589e\u5f3a\u63a2\u7d22\u4e2d\u62e5\u6709\u6709\u6548\u8bc1\u636e\u3002<\/li>\n<li><strong>\u95ee\u9898\u5206\u7c7b\uff1a<\/strong> \u5bf9 diff \u53ef\u89c1\u4e8b\u5b9e\u51c6\u786e\u7684\u8bc4\u8bba\uff0c\u53cd\u601d\u5668\u68c0\u67e5\u8bc4\u8bba\u662f\u5426\u8bef\u8ff0\u4ee3\u7801\uff0c\u4f8b\u5982\u5c06\u660e\u663e\u6b63\u5e38\u7684\u4ee3\u7801\u6807\u4e3a\u7f3a\u9677\uff0c\u6216\u4ee5\u4e0e diff \u77db\u76fe\u7684\u65b9\u5f0f\u5f52\u56e0\u884c\u4e3a\u3002\u53ea\u6709 diff \u76f4\u63a5\u8bc1\u660e\u63cf\u8ff0\u9519\u8bef\u7684\u8bc4\u8bba\u624d\u88ab\u6807\u8bb0\u3002<\/li>\n<\/ul>\n<p>\u8fd9\u79cd\u8bc1\u4f2a\u4f18\u5148\u8bbe\u8ba1\u6709\u4e24\u4e2a\u540e\u679c\u3002\u7b2c\u4e00\uff0c\u5b83\u4fdd\u6301 Recall\uff1a\u53cd\u601d\u5668\u65e0\u6cd5\u8bc1\u4f2a\u7684\u8bc4\u8bba\u88ab\u4fdd\u7559\uff0c\u5373\u4f7f\u53ef\u7591\uff0c\u56e0\u4e3a SubAgent \u53ef\u80fd\u62e5\u6709\u53cd\u601d\u5668\u6240\u7f3a\u7684\u8bc1\u636e\u3002\u7b2c\u4e8c\uff0c\u5b83\u63d0\u5347 Precision\uff1a\u88ab diff \u8bc1\u636e\u76f4\u63a5\u53cd\u9a73\u7684\u8bc4\u8bba\u2014\u2014\u6700\u6709\u5bb3\u7684\u5e7b\u89c9\u7c7b\u578b\u2014\u2014\u88ab\u79fb\u9664\u3002\u56e0\u6b64\u8be5\u6a21\u5757\u4f5c\u4e3a\u9ad8\u7cbe\u5ea6\u3001\u4fdd\u5b88\u7684\u8fc7\u6ee4\u5668\u8fd0\u4f5c\uff0c\u800c\u4e0d\u662f\u6fc0\u8fdb\u7684\u518d\u8bc4\u5ba1\u8005\u3002<\/p>\n<h4>3.4.3 \u4ec5\u8fc7\u6ee4\u8bbe\u8ba1<\/h4>\n<p>\u53cd\u601d\u6a21\u5757\u4e25\u683c\u662f\u8fc7\u6ee4\u5668\uff1a\u5b83\u53ef\u4ee5\u79fb\u9664\u8bc4\u8bba\u4f46\u4e0d\u80fd\u751f\u6210\u65b0\u8bc4\u8bba\u3002\u8fd9\u4e00\u8bbe\u8ba1\u9009\u62e9\u786e\u4fdd\u8be5\u6a21\u5757\u7684\u5f71\u54cd\u59cb\u7ec8\u662f\u4fdd\u5b88\u7684\uff1a\u5bf9\u4e00\u7ec4\u8bc4\u8bba\u8fdb\u884c\u53cd\u601d\u53ea\u80fd\u51cf\u5c11\u5047\u9633\u6027\uff0c\u7edd\u4e0d\u4f1a\u5f15\u5165\u65b0\u7684\u5047\u9633\u6027\u3002\u82e5 LLM \u7684\u54cd\u5e94\u65e0\u6cd5\u89e3\u6790\uff0c\u8be5\u6a21\u5757\u5931\u8d25\u5f00\u653e\uff1a\u4fdd\u7559\u5168\u90e8\u8bc4\u8bba\uff0c\u5728\u5931\u8d25\u60c5\u5f62\u4e0b\u4f18\u5148 Recall \u800c\u975e Precision\u3002<\/p>\n<p>\u8fd9\u79cd\u4ec5\u8fc7\u6ee4\u8bbe\u8ba1\u5c06 OpenCodeReview \u4e0e\u4e24\u7c7b\u7cfb\u7edf\u533a\u5206\u5f00\uff1aReflexion \u98ce\u683c\u7cfb\u7edf\u4e2d\u53cd\u601d\u5668\u53ef\u80fd\u6539\u5199\u8f93\u51fa\uff0c\u4ee5\u53ca\u4ea7\u751f\u81ea\u8eab\u53d1\u73b0\u7684\u7a0b\u5e8f\u5206\u6790\u9a8c\u8bc1\u5668\u3002\u901a\u8fc7\u5c06\u53cd\u601d\u5668\u9650\u5236\u4e3a\u5220\u9664\uff0c\u7cfb\u7edf\u786e\u4fdd\u6240\u66b4\u9732\u95ee\u9898\u7684\u5e7f\u5ea6\u4ec5\u7531 SubAgent \u7684\u63a2\u7d22\u51b3\u5b9a\uff0c\u800c\u6bcf\u6761\u88ab\u66b4\u9732\u8bc4\u8bba\u7684\u53ef\u9760\u6027\u88ab\u72ec\u7acb\u68c0\u67e5\u3002<\/p>\n<h2>4 \u8bc4\u6d4b<\/h2>\n<p>\u4e3a\u8bc4\u4f30 OpenCodeReview \u7684\u786e\u5b9a\u6027\u5de5\u7a0b\u54f2\u5b66\u662f\u5426\u8f6c\u5316\u4e3a\u5177\u4f53\u6027\u80fd\u589e\u76ca\uff0c\u6211\u4eec\u5728 AACR-Bench [30] \u4e0a\u8bc4\u6d4b\u5b83\u3002AACR-Bench \u662f\u6700\u8fd1\u5f15\u5165\u7684\u9762\u5411\u81ea\u52a8\u5316\u4ee3\u7801\u8bc4\u5ba1\u7684\u591a\u8bed\u8a00\u3001\u4ed3\u5e93\u7ea7\u57fa\u51c6\u3002\u6211\u4eec\u4e0e\u4e24\u4e2a\u5185\u7f6e\u8bc4\u5ba1\u529f\u80fd\u7684\u4e3b\u6d41\u7f16\u7801 Agent \u6bd4\u8f83\uff1aClaude Code \u4e0e Codex\u3002<\/p>\n<h3>4.1 \u8bc4\u6d4b\u8bbe\u7f6e<\/h3>\n<h4>4.1.1 \u57fa\u51c6\u4e0e\u6307\u6807<\/h4>\n<p>\u6211\u4eec\u5728 AACR-Bench [30] \u4e0a\u8bc4\u6d4b\u3002\u8be5\u57fa\u51c6\u662f\u4e00\u4e2a\u591a\u8bed\u8a00\u3001\u4ed3\u5e93\u7ea7\u57fa\u51c6\uff0c\u5305\u542b\u6765\u81ea 50 \u4e2a\u5f00\u6e90\u4ed3\u5e93\u3001\u8de8\u8d8a 10 \u79cd\u7f16\u7a0b\u8bed\u8a00\u7684 200 \u4e2a\u771f\u5b9e\u4e16\u754c pull request\u3002Ground Truth \u7531 1,505 \u6761\u8bc4\u5ba1\u8bc4\u8bba\u6784\u6210\uff0c\u8fd9\u4e9b\u8bc4\u8bba\u901a\u8fc7\u300cAI \u8f85\u52a9\u3001\u4e13\u5bb6\u6838\u9a8c\u300d\u6d41\u6c34\u7ebf\uff0c\u7ecf 80 \u4f59\u540d\u9ad8\u7ea7\u5de5\u7a0b\u5e08\u4e09\u8f6e\u4ea4\u53c9\u9a8c\u8bc1\u3002\u4e0e\u4ec5\u63d0\u4f9b diff \u7ea7\u4e0a\u4e0b\u6587\u6216\u4f9d\u8d56\u566a\u58f0\u539f\u59cb PR \u8bc4\u8bba\u7684\u5148\u524d\u57fa\u51c6\u4e0d\u540c\uff0cAACR-Bench \u4e3a\u8de8\u6587\u4ef6\u63a2\u7d22\u4fdd\u7559\u5b8c\u6574\u4ed3\u5e93\u7ed3\u6784\uff0c\u5e76\u63d0\u4f9b\u4e13\u5bb6\u6838\u9a8c\u6807\u6ce8\uff0c\u4e3a\u8bc4\u6d4b\u4ee3\u7801\u8bc4\u5ba1\u7cfb\u7edf\u63d0\u4f9b\u53ef\u9760\u57fa\u7840\u3002<\/p>\n<p>AACR-Bench \u901a\u8fc7\u8bed\u4e49\u5339\u914d\u8bc4\u6d4b\u751f\u6210\u8bc4\u8bba\uff1a\u4e0d\u662f\u7cbe\u786e\u5b57\u7b26\u4e32\u5339\u914d\uff0c\u8bc4\u6d4b\u6d41\u6c34\u7ebf\u5224\u65ad\u4e00\u6761\u751f\u6210\u8bc4\u8bba\u662f\u5426\u5728\u540c\u4e00\u4ee3\u7801\u4f4d\u7f6e\u8868\u8fbe\u4e0e Ground Truth \u8bc4\u8bba\u76f8\u540c\u7684\u5173\u5207\u3002\u8bed\u4e49\u7b49\u4ef7\u7531 LLM \u8bc4\u5224\u5668\u51b3\u5b9a\uff08\u672c\u6587\u4f7f\u7528 Qwen3-235B-A22B-Instruct\uff09\u3002\u57fa\u4e8e\u6240\u5f97\u5339\u914d\uff0c\u57fa\u51c6\u8ba1\u7b97 Precision\uff08\u8bed\u4e49\u5339\u914d Ground Truth \u7684\u751f\u6210\u8bc4\u8bba\u6bd4\u4f8b\uff09\u3001Recall\uff08\u88ab\u5339\u914d\u7684 Ground Truth \u8bc4\u8bba\u6bd4\u4f8b\uff09\uff0c\u4ee5\u53ca\u4f5c\u4e3a\u4e3b\u8981\u6392\u5e8f\u6307\u6807\u7684 SEM-F1\uff08\u4e8c\u8005\u8c03\u548c\u5e73\u5747\uff09\u3002<\/p>\n<h4>4.1.2 \u7cfb\u7edf\u4e0e\u6a21\u578b<\/h4>\n<p>\u6211\u4eec\u8bc4\u6d4b\u4e09\u4e2a\u4ee3\u7801\u8bc4\u5ba1\u7cfb\u7edf\uff1a<\/p>\n<ul>\n<li><strong>OpenCodeReview\uff08v1.3.1\uff09\uff1a<\/strong> \u6211\u4eec\u7684\u7cfb\u7edf\uff0c\u914d\u7f6e\u9ed8\u8ba4\u89c4\u5219\u96c6\u3001\u7b56\u5212\u5de5\u5177\u96c6\u4e0e\u72ec\u7acb\u53cd\u601d\u6a21\u5757\u3002<\/li>\n<li><strong>Claude Code\uff08v2.1.169\uff0c<code>\/code-review<\/code> \u547d\u4ee4\uff09\uff1a<\/strong> Anthropic \u7684\u7f16\u7801 Agent\uff0c\u5e26\u5185\u7f6e\u8bc4\u5ba1\u529f\u80fd\u3002\u5b83\u91c7\u7528\u901a\u7528 Agent \u5faa\u73af\uff0c\u6ca1\u6709\u8bc4\u5ba1\u4e13\u7528\u5de5\u5177\u6216\u6587\u4ef6\u7ea7\u5e76\u884c\u3002<\/li>\n<li><strong>Codex\uff08v0.140.0\uff0c<code>\/review<\/code> \u547d\u4ee4\uff09\uff1a<\/strong> OpenAI \u7684\u7f16\u7801 Agent\uff0c\u5e26\u6c99\u7bb1\u4ed3\u5e93\u8bbf\u95ee\uff0c\u4f7f\u7528\u5355 Agent \u8bc4\u5ba1\u5faa\u73af\u3002<\/li>\n<\/ul>\n<p>\u6bcf\u4e2a\u7cfb\u7edf\u7528\u591a\u4e2a LLM \u540e\u7aef\u8bc4\u6d4b\uff0c\u4ee5\u5c06\u7cfb\u7edf\u8bbe\u8ba1\u4e0e\u6a21\u578b\u80fd\u529b\u89e3\u8026\uff1aOpenCodeReview \u7528\u5168\u90e8\u516d\u4e2a\u6a21\u578b\u8bc4\u6d4b\uff08Claude-4.6-Opus\u3001Claude-4.8-Opus\u3001GPT-5.5\u3001GLM-5.1\u3001Qwen3.7-Max \u4e0e Deepseek-V4-Pro\uff09\uff1bClaude Code \u7528\u516d\u4e2a\u6a21\u578b\u8bc4\u6d4b\uff0c\u6392\u9664 GPT-5.5\uff1bCodex \u4ec5\u7528 GPT-5.5 \u8bc4\u6d4b\uff0c\u539f\u56e0\u662f\u6a21\u578b\u517c\u5bb9\u6027\u4e0e\u8bc4\u6d4b\u6210\u672c\u7ea6\u675f\u3002\u6240\u6709\u7cfb\u7edf\u5171\u4eab\u76f8\u540c\u7684 LLM \u914d\u7f6e\uff0c\u786e\u4fdd\u89c2\u5bdf\u5230\u7684\u6027\u80fd\u5dee\u5f02\u53cd\u6620\u7cfb\u7edf\u8bbe\u8ba1\u800c\u975e\u6a21\u578b\u4f18\u52bf\u3002<\/p>\n<h3>4.2 \u603b\u4f53\u7ed3\u679c<\/h3>\n<p>\u8868 3 \u7ed9\u51fa\u5b8c\u6574\u7ed3\u679c\u3002OpenCodeReview \u5728\u5168\u90e8\u516d\u4e2a LLM \u540e\u7aef\u4e0a\u53d6\u5f97\u6700\u9ad8 SEM-F1\uff0c\u6700\u4f73\u914d\u7f6e\uff08Claude-4.6-Opus\uff09\u8fbe\u5230 25.10% SEM-F1\u300133.90% Precision \u4e0e 20.00% Recall\u3002\u540c\u4e00\u6a21\u578b\u540e\u7aef\u5728 Claude Code \u4e0b\u4ec5\u8fbe\u5230 11.57% SEM-F1\uff0c\u4e0d\u5230 OpenCodeReview \u5206\u6570\u7684\u4e00\u534a\uff1b\u5728 Codex \u4e0b\uff0cGPT-5.5 \u4ec5\u8fbe\u5230 8.36%\u3002\u7ed3\u679c\u4e2d\u6d6e\u73b0\u4e24\u79cd\u6a21\u5f0f\uff1a<\/p>\n<p><strong>\uff081\uff09OpenCodeReview \u5728\u6240\u6709\u6a21\u578b\u540e\u7aef\u4e0a\u6301\u7eed\u4f18\u4e8e\u4e24\u4e2a\u57fa\u7ebf\u3002<\/strong> \u5728\u6240\u6709\u6d4b\u8bd5\u914d\u7f6e\u4e2d\uff0cOpenCodeReview \u7684 SEM-F1 \u8303\u56f4\u4e3a 17.90% \u5230 25.10%\uff0c\u800c Claude Code \u4e3a 10.93%\u201314.13%\uff0cCodex \u4e3a 8.36%\u3002\u503c\u5f97\u6ce8\u610f\u7684\u662f\uff0c\u5728 OpenCodeReview \u4e0b\u6392\u540d\u7b2c\u4e00\u7684\u6a21\u578b\uff08Claude-4.6-Opus\uff0c25.10%\uff09\u5728 Claude Code \u4e0b\u63a5\u8fd1\u57ab\u5e95\uff0811.57%\uff09\uff0c\u8fd9\u662f\u4ec5\u53ef\u5f52\u56e0\u4e8e\u7cfb\u7edf\u8bbe\u8ba1\u7684 $2.17times$ \u6539\u8fdb\u3002\u5373\u4f7f\u6700\u5f31\u7684 OpenCodeReview \u914d\u7f6e\uff08Deepseek-V4-Pro\uff0c17.90%\uff09\u4e5f\u8d85\u8fc7\u6700\u5f3a\u7684 Claude Code \u914d\u7f6e\uff0814.13%\uff09\uff0c\u8868\u660e\u6027\u80fd\u5dee\u8ddd\u5bf9\u6a21\u578b\u9009\u62e9\u662f\u7a33\u5065\u7684\u3002<\/p>\n<p><strong>\uff082\uff09\u6027\u80fd\u4f18\u52bf\u6e90\u4e8e Precision\uff0c\u800c\u975e Recall \u81a8\u80c0\u3002<\/strong> OpenCodeReview \u7684 Precision \u8303\u56f4\u4e3a 25.20% \u5230 37.80%\uff0c\u800c Claude Code \u4e3a 7.23%\u201315.93%\uff0cCodex \u4e3a 27.82%\u3002Claude Code \u901a\u8fc7\u751f\u6210\u5927\u91cf\u8bc4\u8bba\u8fbe\u5230\u5176\u6700\u9ad8 Recall\uff0828.90%\uff09\u2014\u2014200 \u4e2a PR \u4e0a 4,580 \u6761\uff0c\u800c OpenCodeReview \u4e3a 465\u20131,096 \u6761\u2014\u2014\u4f46\u4ee5\u4e25\u91cd\u7684 Precision \u4e0b\u964d\uff087.23%\uff09\u4e3a\u4ee3\u4ef7\u3002\u8fd9\u79cd\u6a21\u5f0f\uff0c\u5373 Agent \u901a\u8fc7\u53d1\u51fa\u8bb8\u591a\u4f4e\u7f6e\u4fe1\u8bc4\u8bba\u6765\u8865\u507f\u6d45\u5c42\u5206\u6790\uff0c\u6b63\u662f\u5148\u524d\u5173\u4e8e\u843d\u5730\u4ee3\u7801\u8bc4\u5ba1 Agent \u7684\u5de5\u4f5c\u6240\u8bb0\u5f55\u7684\u300c\u4f4e\u4fe1\u566a\u6bd4\u300d\u95ee\u9898 [2]\u3002OpenCodeReview \u7684\u72ec\u7acb\u53cd\u601d\u6a21\u5757\u6291\u5236\u8fd9\u79cd\u884c\u4e3a\uff1a\u901a\u8fc7\u8fc7\u6ee4\u88ab diff \u8bc1\u636e\u76f4\u63a5\u53cd\u9a73\u7684\u8bc4\u8bba\uff0c\u5b83\u5728\u4e0d\u727a\u7272\u95ee\u9898\u5e7f\u5ea6\u7684\u60c5\u51b5\u4e0b\u4fdd\u6301\u9ad8 Precision\u3002<\/p>\n<p><strong>\u8868 3\uff1a<\/strong> AACR-Bench \u4e0a\u7684\u4e3b\u8981\u7ed3\u679c\u3002\u7c97\u4f53\u503c\u8868\u793a\u6bcf\u4e2a\u6a21\u578b\u7ec4\uff08\u884c\uff09\u5728\u5404\u6307\u6807\u4e0a\u7684\u6700\u4f73\u7ed3\u679c\u3002OpenCodeReview \u5728\u6240\u6709\u6a21\u578b\u540e\u7aef\u4e0a\u53d6\u5f97\u6700\u9ad8 SEM-F1\uff0c\u5e76\u5728 Precision\u3001token \u6548\u7387\u4e0e\u8bc4\u5ba1\u65f6\u95f4\u4e0a\u5177\u6709\u4e00\u81f4\u4f18\u52bf\u3002Avg. Token \u4e0e Avg. Time \u5206\u522b\u8868\u793a\u6bcf\u4e2a\u6837\u672c\u7684\u5e73\u5747 token \u6d88\u8017\u4e0e\u6267\u884c\u65f6\u95f4\u3002Match\/Gen \u7ed9\u51fa Precision \u7684\u5339\u914d\/\u751f\u6210\u8ba1\u6570\uff1bMatch\/GT \u7ed9\u51fa Recall \u7684\u5339\u914d\/Ground Truth \u8ba1\u6570\u3002Ground Truth \u5305\u542b 1,505 \u6761\u8bc4\u8bba\u3002<\/p>\n<table>\n<thead>\n<tr>\n<th>\u6a21\u578b<\/th>\n<th>\u7cfb\u7edf<\/th>\n<th style=\"text-align: right\">SEM-F1<\/th>\n<th style=\"text-align: right\">Prec.<\/th>\n<th>Match\/Gen<\/th>\n<th style=\"text-align: right\">Recall<\/th>\n<th>Match\/GT<\/th>\n<th style=\"text-align: right\">Avg. Token<\/th>\n<th>Avg. Time<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Claude-4.6-Opus<\/td>\n<td>OpenCodeReview<\/td>\n<td style=\"text-align: right\"><strong>25.10%<\/strong><\/td>\n<td style=\"text-align: right\"><strong>33.90%<\/strong><\/td>\n<td>301\/889<\/td>\n<td style=\"text-align: right\">20.00%<\/td>\n<td>301\/1505<\/td>\n<td style=\"text-align: right\"><strong>385K<\/strong><\/td>\n<td><strong>1m23s<\/strong><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>Claude Code<\/td>\n<td style=\"text-align: right\">11.57%<\/td>\n<td style=\"text-align: right\">7.23%<\/td>\n<td>435\/5980<\/td>\n<td style=\"text-align: right\"><strong>28.90%<\/strong><\/td>\n<td>435\/1505<\/td>\n<td style=\"text-align: right\">5,664K<\/td>\n<td>13m06s<\/td>\n<\/tr>\n<tr>\n<td>Qwen3.7-Max<\/td>\n<td>OpenCodeReview<\/td>\n<td style=\"text-align: right\"><strong>21.20%<\/strong><\/td>\n<td style=\"text-align: right\"><strong>25.20%<\/strong><\/td>\n<td>276\/1096<\/td>\n<td style=\"text-align: right\">18.30%<\/td>\n<td>276\/1505<\/td>\n<td style=\"text-align: right\"><strong>625K<\/strong><\/td>\n<td><strong>4m41s<\/strong><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>Claude Code<\/td>\n<td style=\"text-align: right\">12.17%<\/td>\n<td style=\"text-align: right\">8.23%<\/td>\n<td>351\/4260<\/td>\n<td style=\"text-align: right\"><strong>23.37%<\/strong><\/td>\n<td>351\/1505<\/td>\n<td style=\"text-align: right\">5,153K<\/td>\n<td>8m06s<\/td>\n<\/tr>\n<tr>\n<td>GPT-5.5<\/td>\n<td>OpenCodeReview<\/td>\n<td style=\"text-align: right\"><strong>21.00%<\/strong><\/td>\n<td style=\"text-align: right\"><strong>32.10%<\/strong><\/td>\n<td>234\/728<\/td>\n<td style=\"text-align: right\"><strong>15.50%<\/strong><\/td>\n<td>234\/1505<\/td>\n<td style=\"text-align: right\"><strong>422K<\/strong><\/td>\n<td><strong>2m51s<\/strong><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>Codex<\/td>\n<td style=\"text-align: right\">8.36%<\/td>\n<td style=\"text-align: right\">27.82%<\/td>\n<td>74\/266<\/td>\n<td style=\"text-align: right\">4.92%<\/td>\n<td>74\/1505<\/td>\n<td style=\"text-align: right\">525K<\/td>\n<td>2m58s<\/td>\n<\/tr>\n<tr>\n<td>Claude-4.8-Opus<\/td>\n<td>OpenCodeReview<\/td>\n<td style=\"text-align: right\"><strong>17.90%<\/strong><\/td>\n<td style=\"text-align: right\"><strong>37.80%<\/strong><\/td>\n<td>176\/465<\/td>\n<td style=\"text-align: right\">11.70%<\/td>\n<td>176\/1505<\/td>\n<td style=\"text-align: right\"><strong>352K<\/strong><\/td>\n<td><strong>1m06s<\/strong><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>Claude Code<\/td>\n<td style=\"text-align: right\">14.13%<\/td>\n<td style=\"text-align: right\">15.93%<\/td>\n<td>191\/1200<\/td>\n<td style=\"text-align: right\"><strong>12.70%<\/strong><\/td>\n<td>191\/1505<\/td>\n<td style=\"text-align: right\">2,062K<\/td>\n<td>5m38s<\/td>\n<\/tr>\n<tr>\n<td>Deepseek-V4-Pro<\/td>\n<td>OpenCodeReview<\/td>\n<td style=\"text-align: right\"><strong>17.90%<\/strong><\/td>\n<td style=\"text-align: right\"><strong>30.60%<\/strong><\/td>\n<td>191\/624<\/td>\n<td style=\"text-align: right\">12.70%<\/td>\n<td>191\/1505<\/td>\n<td style=\"text-align: right\"><strong>394K<\/strong><\/td>\n<td><strong>6m28s<\/strong><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>Claude Code<\/td>\n<td style=\"text-align: right\">10.93%<\/td>\n<td style=\"text-align: right\">8.27%<\/td>\n<td>243\/2945<\/td>\n<td style=\"text-align: right\"><strong>16.13%<\/strong><\/td>\n<td>243\/1505<\/td>\n<td style=\"text-align: right\">5,450K<\/td>\n<td>14m24s<\/td>\n<\/tr>\n<tr>\n<td>GLM-5.1<\/td>\n<td>OpenCodeReview<\/td>\n<td style=\"text-align: right\"><strong>20.40%<\/strong><\/td>\n<td style=\"text-align: right\"><strong>28.90%<\/strong><\/td>\n<td>237\/820<\/td>\n<td style=\"text-align: right\">15.70%<\/td>\n<td>237\/1505<\/td>\n<td style=\"text-align: right\"><strong>743K<\/strong><\/td>\n<td><strong>4m11s<\/strong><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>Claude Code<\/td>\n<td style=\"text-align: right\">11.93%<\/td>\n<td style=\"text-align: right\">8.37%<\/td>\n<td>313\/3742<\/td>\n<td style=\"text-align: right\"><strong>20.80%<\/strong><\/td>\n<td>313\/1505<\/td>\n<td style=\"text-align: right\">4,038K<\/td>\n<td>14m10s<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>4.3 \u6210\u672c\u6548\u7387<\/h3>\n<p>\u672c\u5de5\u4f5c\u7684\u4e2d\u5fc3\u4e3b\u5f20\u662f\uff1a\u786e\u5b9a\u6027\u5de5\u7a0b\u4ee5\u66f4\u4f4e\u6210\u672c\u53d6\u5f97\u66f4\u597d\u7ed3\u679c\u3002\u8868 3 \u4e5f\u901a\u8fc7\u6bd4\u8f83\u4f7f\u7528\u76f8\u540c\u6216\u53ef\u6bd4\u6a21\u578b\u540e\u7aef\u7684\u7cfb\u7edf\u4e4b\u95f4\u7684 token \u6d88\u8017\u6765\u9694\u79bb\u8fd9\u4e00\u7ef4\u5ea6\u3002<\/p>\n<p>\u7ed3\u679c\u6beb\u4e0d\u542b\u7cca\uff1aOpenCodeReview \u6d88\u8017\u7684 token \u6bd4 Claude Code \u5c11 $5text{\u2013}15times$\uff0c\u540c\u65f6 SEM-F1 \u9ad8 $1.3text{\u2013}2.2times$\u3002token \u8282\u7701\u76f4\u63a5\u6765\u81ea\u4e09\u9879\u786e\u5b9a\u6027\u5de5\u7a0b\u51b3\u7b56\uff1a\uff081\uff09\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\u907f\u514d Agent \u9a71\u52a8\u6587\u4ef6\u5206\u8bca\u7684\u63a2\u7d22\u5f00\u9500\uff1b\uff082\uff09\u6709\u754c\u8f93\u51fa\u7684\u7b56\u5212\u5de5\u5177\u9632\u6b62\u81ea\u7531\u5f62\u5f0f Agent \u5faa\u73af\u4e2d\u81a8\u80c0\u4e0a\u4e0b\u6587\u7684\u300ctoken \u96ea\u7403\u300d\u6548\u5e94 [4]\uff1b\uff083\uff09\u5e26\u6bcf\u6587\u4ef6\u4e0a\u4e0b\u6587\u9694\u79bb\u7684\u6587\u4ef6\u7ea7\u5e76\u884c\u907f\u514d\u4e2d\u5fc3\u5316 Agent \u6240\u7d2f\u79ef\u7684\u6574\u4f53\u4e0a\u4e0b\u6587\u7a97\u53e3\u3002\u76f8\u5bf9 Codex\uff0cOpenCodeReview \u4ee5\u53ef\u6bd4 token \u6210\u672c\u53d6\u5f97 $2.5times$ \u66f4\u9ad8\u7684 SEM-F1\u3002Codex \u4f5c\u4e3a\u5e26\u901a\u7528\u4ed3\u5e93\u8bbf\u95ee\u7684\u5355 Agent \u5faa\u73af\u8fd0\u4f5c\uff0c\u8fd9\u53ef\u80fd\u9650\u5236\u5176\u66b4\u9732\u6df1\u5c42\u8de8\u6587\u4ef6\u95ee\u9898\u7684\u80fd\u529b\u3002<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" style=\"max-width:100%;height:auto\" alt=\"\u56fe 3\uff1a\u5168\u90e8 12 \u4e2a\u914d\u7f6e\u7684 Precision\u2013Recall \u6743\u8861\u3002OpenCodeReview \u914d\u7f6e\u805a\u96c6\u5728\u9ad8 Precision\u3001\u4e2d\u7b49 Recall \u533a\u57df\uff0c\u800c Claude Code \u4e0e Codex \u5360\u636e Precision \u66f4\u4f4e\u3001Recall \u76f8\u5f53\u6216\u66f4\u4f4e\u7684\u4e0d\u540c\u4f53\u5236\u3002\" src=\"https:\/\/youpaiyun.lingbo.online\/paper-read\/2608.09290\/fig03.png\" \/><\/p>\n<p><strong>\u56fe 3\uff1a<\/strong> \u5168\u90e8 12 \u4e2a\u914d\u7f6e\u7684 Precision\u2013Recall \u6743\u8861\u3002OpenCodeReview \u914d\u7f6e\u805a\u96c6\u5728\u9ad8 Precision\u3001\u4e2d\u7b49 Recall \u533a\u57df\uff0c\u800c Claude Code \u4e0e Codex \u5360\u636e Precision \u66f4\u4f4e\u3001Recall \u76f8\u5f53\u6216\u66f4\u4f4e\u7684\u4e0d\u540c\u4f53\u5236\u3002<\/p>\n<h3>4.4 Precision\u2013Recall \u5206\u6790<\/h3>\n<p>Precision\u2013Recall \u6743\u8861\u662f\u81ea\u52a8\u5316\u4ee3\u7801\u8bc4\u5ba1\u4e2d\u7684\u4e2d\u5fc3\u5f20\u529b\uff1a\u6fc0\u8fdb\u7cfb\u7edf\u66b4\u9732\u8bb8\u591a\u95ee\u9898\uff08\u9ad8 Recall\uff09\uff0c\u4ee3\u4ef7\u662f\u5047\u9633\u6027\uff08\u4f4e Precision\uff09\uff1b\u4fdd\u5b88\u7cfb\u7edf\u751f\u6210\u5c11\u91cf\u4f46\u51c6\u786e\u7684\u8bc4\u8bba\uff08\u9ad8 Precision\uff09\uff0c\u98ce\u9669\u662f\u9519\u8fc7\u771f\u5b9e\u95ee\u9898\uff08\u4f4e Recall\uff09\u3002\u56fe 3 \u5728\u8be5\u7a7a\u95f4\u4e2d\u7ed8\u5236\u5168\u90e8 12 \u4e2a\u914d\u7f6e\u3002<\/p>\n<p>OpenCodeReview \u914d\u7f6e\u805a\u96c6\u5728\u9ad8 Precision\u3001\u4e2d\u7b49 Recall \u533a\u57df\uff08Precision 25\u201338%\uff0cRecall 12\u201320%\uff09\u3002Claude Code \u914d\u7f6e\u5206\u6210\u4e24\u79cd\u4f53\u5236\uff1aClaude-4.6-Opus \u4e0e Qwen3.7-Max \u53d8\u4f53\u8fbe\u5230\u9ad8 Recall\uff0823\u201329%\uff09\u4f46 Precision \u6781\u4f4e\uff087\u20138%\uff09\uff0c\u800c Claude-4.8-Opus \u4ee5\u4f4e Recall\uff0813%\uff09\u8fbe\u5230\u4e2d\u7b49 Precision\uff0816%\uff09\u3002Codex \u5360\u636e\u7b2c\u4e09\u79cd\u4f53\u5236\uff1a\u6781\u4f4e Recall\uff085%\uff09\u4e0e\u4e2d\u7b49 Precision\uff0828%\uff09\uff0c\u8868\u660e\u5b83\u751f\u6210\u5c11\u91cf\u4f46\u76f8\u5bf9\u51c6\u786e\u7684\u8bc4\u8bba\u2014\u2014\u5f88\u53ef\u80fd\u56e0\u4e3a\u5b83\u7684\u5355 Agent \u5faa\u73af\u5728\u5927\u591a\u6570 PR \u4e0a\u8f83\u65e9\u7ec8\u6b62\u3002<\/p>\n<p>OpenCodeReview \u5728\u8fd9\u4e00\u6743\u8861\u4e2d\u7684\u6709\u5229\u4f4d\u7f6e\u662f\u72ec\u7acb\u53cd\u601d\u6a21\u5757\u7684\u76f4\u63a5\u540e\u679c\u3002\u53cd\u601d\u6a21\u5757\u7684\u8bc1\u4f2a\u4f18\u5148\u8bbe\u8ba1\u2014\u2014\u53ea\u8fc7\u6ee4\u88ab diff \u8bc1\u636e\u76f4\u63a5\u53cd\u9a73\u7684\u8bc4\u8bba\u2014\u2014\u4f18\u5148\u79fb\u9664\u5047\u9633\u6027\uff0c\u800c\u4e0d\u6291\u5236\u5f15\u7528 diff \u4e4b\u5916\u4e0a\u4e0b\u6587\u7684\u771f\u9633\u6027\u3002\u8fd9\u89e3\u91ca\u4e86\u4e3a\u4f55\u5373\u4f7f\u5728\u57fa\u51c6\u4e0a\u751f\u6210 700\u20131,100 \u6761\u8bc4\u8bba\u65f6 OpenCodeReview \u4ecd\u5c06 Precision \u4fdd\u6301\u5728 25% \u4ee5\u4e0a\uff0c\u800c Claude Code \u5728\u76f8\u4f3c\u6216\u66f4\u9ad8\u751f\u6210\u91cf\u4e0b Precision \u964d\u81f3 7\u20138%\u3002<\/p>\n<h2>5 \u8ba8\u8bba<\/h2>\n<p>\u8bc4\u6d4b\u8868\u660e\uff0cOpenCodeReview \u7684\u786e\u5b9a\u6027\u5de5\u7a0b\u2014\u2014\u7b56\u5212\u5de5\u5177\u3001\u6587\u4ef6\u7ea7\u5e76\u884c\u4e0e\u72ec\u7acb\u53cd\u601d\u2014\u2014\u4ee5\u4e3b\u6d41\u7f16\u7801 Agent \u6210\u672c\u7684\u4e00\u5c0f\u90e8\u5206\uff0c\u6301\u7eed\u5e26\u6765\u66f4\u597d\u7684\u8bc4\u5ba1\u8d28\u91cf\u3002\u5728\u5177\u4f53\u6570\u5b57\u4e4b\u5916\uff0c\u6d6e\u73b0\u51fa\u4e09\u9879\u66f4\u5e7f\u7684\u6d1e\u89c1\uff1a<\/p>\n<p><strong>\uff081\uff09\u786e\u5b9a\u6027\u4f5c\u4e3a\u8bbe\u8ba1\u539f\u5219\u3002<\/strong> LLM Agent \u7814\u7a76\u4e2d\u7684\u6d41\u884c\u5047\u8bbe\u662f\uff1a\u66f4\u591a\u81ea\u4e3b\u6027\u5e26\u6765\u66f4\u597d\u7ed3\u679c\u3002\u6211\u4eec\u7684\u7ed3\u679c\u6311\u6218\u8fd9\u4e00\u70b9\uff1aOpenCodeReview \u5728\u4e09\u4e2a\u5c42\u9762\u523b\u610f\u7ea6\u675f Agent\u2014\u2014\u6587\u4ef6\u9009\u62e9\u3001\u52a8\u4f5c\u7a7a\u95f4\u4e0e\u8f93\u51fa\u53ef\u9760\u6027\u2014\u2014\u5374\u5728\u6240\u6709\u6a21\u578b\u540e\u7aef\u4e0a\u4f18\u4e8e\u7ea6\u675f\u66f4\u5c11\u7684 Agent\u3002\u8fd9\u4e0e\u5148\u524d\u53d1\u73b0\u5171\u9e23\uff1a\u5de5\u5177\u63a5\u53e3\u8bbe\u8ba1\u5b9e\u8d28\u5f71\u54cd\u6027\u80fd [25]\uff0c\u65e0\u754c\u63a2\u7d22\u5bfc\u81f4\u300ctoken \u96ea\u7403\u300d\u6548\u5e94 [4]\uff0c\u5de8\u5927\u52a8\u4f5c\u7a7a\u95f4\u5f15\u5165\u975e\u786e\u5b9a\u6027 [24]\u3002\u5bf9\u4ee3\u7801\u8bc4\u5ba1\u8fd9\u7c7b\u8303\u56f4\u660e\u786e\u3001\u91cd\u590d\u6027\u9ad8\u7684\u4efb\u52a1\uff0c\u975e\u786e\u5b9a\u6027\u4e0d\u662f LLM Agent \u7684\u56fa\u6709\u5c5e\u6027\uff0c\u800c\u662f\u53ef\u4ee5\u901a\u8fc7\u6cbf\u7740\u4efb\u52a1\u9a8c\u8bc1\u8fc7\u7684\u8f74\u7ea6\u675f\u52a8\u4f5c\u7a7a\u95f4\u800c\u88ab\u5de5\u7a0b\u5316\u6d88\u9664\u7684\u8bbe\u8ba1\u5931\u8d25\u3002<\/p>\n<p><strong>\uff082\uff09\u53cd\u601d\u7684\u4fe1\u606f\u8fb9\u754c vs. \u6a21\u578b\u8fb9\u754c\u3002<\/strong> \u53cd\u601d\u6a21\u5757\u901a\u8fc7\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u800c\u975e\u4e0d\u540c\u6a21\u578b\u5b9e\u73b0\u72ec\u7acb\u6027\u3002\u4e0e Reflexion [20] \u548c Self-Refine [14] \u4f7f\u7528\u540c\u4e00\u6a21\u578b\u3001\u540c\u4e00\u4e0a\u4e0b\u6587\uff08\u7ee7\u627f\u81ea\u6211\u5f3a\u5316\u504f\u5dee\uff09\uff0c\u6216\u5916\u90e8\u9a8c\u8bc1\u5668 [5] \u4ec5\u8986\u76d6\u7a84\u7c7b\u4e8b\u5b9e\u7c7b\u578b\u4e0d\u540c\uff0cOpenCodeReview \u7684\u53cd\u601d\u5668\u4f7f\u7528\u76f8\u540c LLM\uff0c\u4f46\u4e0a\u4e0b\u6587\u66f4\u5c11\uff08\u5373\u53ea\u770b diff\uff09\uff0c\u5e76\u5e94\u7528\u8bc1\u4f2a\u4f18\u5148\u539f\u5219\u3002\u5176\u6709\u6548\u6027\uff08\u516d\u4e2a\u540e\u7aef\u4e0a Precision 25\u201338%\uff09\u8868\u660e\uff0c\u5bf9\u53cd\u601d\u800c\u8a00\uff0c\u4fe1\u606f\u8fb9\u754c\u53ef\u80fd\u6bd4\u6a21\u578b\u8eab\u4efd\u66f4\u91cd\u8981\uff1b\u8fd9\u4e00\u539f\u5219\u53ef\u80fd\u63a8\u5e7f\u5230\u8f93\u51fa\u53ef\u4ee5\u5bf9\u7167\u8bc1\u636e\u5b50\u96c6\u68c0\u67e5\u7684\u5176\u4ed6 Agent \u4efb\u52a1\u3002<\/p>\n<p><strong>\uff083\uff09\u6210\u672c\u2013\u8d28\u91cf\u524d\u6cbf\u3002<\/strong> \u76f8\u5bf9 Claude Code \u7684 $5text{\u2013}15times$ token \u8282\u7701\u6765\u81ea\u7ed3\u6784\u5316\u63a2\u7d22\uff0c\u800c\u4e0d\u662f\u53d6\u6d88\u63a2\u7d22\uff1a\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\u907f\u514d\u6d6a\u8d39\u7684\u6587\u4ef6\u5206\u8bca\uff0c\u6709\u754c\u5de5\u5177\u9650\u5236\u6bcf\u6b21\u8c03\u7528\u7684\u4e0a\u4e0b\u6587\u589e\u957f\uff0c\u6587\u4ef6\u7ea7\u5e76\u884c\u9632\u6b62\u6574\u4f53\u4e0a\u4e0b\u6587\u7d2f\u79ef\u2014\u2014\u540c\u65f6\u4e0d\u727a\u7272\u8ffd\u8e2a\u8de8\u6587\u4ef6\u4f9d\u8d56\u7684\u80fd\u529b\u3002\u5728\u5de5\u4e1a\u89c4\u6a21\u4e0a\uff0c\u8bc4\u5ba1\u662f\u4e3b\u8981\u74f6\u9888 [19]\uff0c\u8fd9\u79cd\u6210\u672c\u964d\u4f4e\u5c06\u57fa\u4e8e Agent \u7684\u8bc4\u5ba1\u4ece\u6ea2\u4ef7\u529f\u80fd\u8f6c\u53d8\u4e3a\u53ef\u884c\u9ed8\u8ba4\uff0c\u8868\u660e LLM Agent \u7684\u6210\u672c\u2013\u8d28\u91cf\u524d\u6cbf\u4e0d\u662f\u56fa\u5b9a\u7684\uff0c\u800c\u53ef\u4ee5\u901a\u8fc7\u523b\u610f\u5de5\u7a0b\u5411\u5185\u63a8\u79fb\u3002<\/p>\n<h2>6 \u6548\u5ea6\u5a01\u80c1<\/h2>\n<p><strong>\u5185\u90e8\u6548\u5ea6\u3002<\/strong> \u57fa\u4e8e LLM \u7684 Agent \u7cfb\u7edf\u672c\u8d28\u4e0a\u662f\u975e\u786e\u5b9a\u6027\u7684 [24]\u3002OpenCodeReview \u901a\u8fc7\u4e09\u9879\u8bbe\u8ba1\u51b3\u7b56\u7f13\u89e3\u8fd9\u4e00\u70b9\u2014\u2014\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\u3001\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\u4e0e\u72ec\u7acb\u53cd\u601d\u2014\u2014\u6bcf\u4e00\u9879\u5728\u6d41\u6c34\u7ebf\u7684\u4e0d\u540c\u4f4d\u7f6e\u6ce8\u5165\u786e\u5b9a\u6027\u3002\u6240\u6709\u7cfb\u7edf\u8fdb\u4e00\u6b65\u5728\u76f8\u540c\u91c7\u6837\u53c2\u6570\u4e0b\u8bc4\u6d4b\u3002\u4e00\u4e2a\u76f8\u5173\u5a01\u80c1\u6d89\u53ca\u6307\u6807\u8ba1\u7b97\u4e2d\u7528\u4e8e\u8bed\u4e49\u5339\u914d\u7684 LLM \u8bc4\u5224\u5668\u3002\u4e3a\u7f13\u89e3\u8bc4\u5224\u5668\u975e\u786e\u5b9a\u6027\uff0c\u6211\u4eec\u5bf9\u6bcf\u4e2a\u914d\u7f6e\u8fd0\u884c\u8bc4\u5224\u5668\u4e94\u6b21\uff0c\u5e76\u62a5\u544a\u5747\u503c\u6307\u6807\u4f5c\u4e3a\u6700\u7ec8\u7ed3\u679c\u3002\u7531\u4e8e\u6240\u6709\u7cfb\u7edf\u7531\u540c\u4e00\u5339\u914d\u5668\u5728\u540c\u4e00\u534f\u8bae\u4e0b\u8bc4\u6d4b\uff0c\u76f8\u5bf9\u6bd4\u8f83\u4ecd\u7136\u6709\u6548\u3002<\/p>\n<p><strong>\u5916\u90e8\u6548\u5ea6\u3002<\/strong> \u5c3d\u7ba1 AACR-Bench \u65e0\u6cd5\u8986\u76d6\u6240\u6709\u5de5\u4e1a\u4ee3\u7801\u5e93\u2014\u2014\u5c24\u5176\u662f\u9886\u57df\u7279\u5b9a\u8bed\u8a00\u6216\u5177\u6709\u975e\u5e38\u89c4\u7ed3\u6784\u7684\u4ed3\u5e93\u2014\u2014\u5176\u5bf9 10 \u79cd\u7f16\u7a0b\u8bed\u8a00\u4e0e 50 \u4e2a\u4ed3\u5e93\u7684\u8986\u76d6\u4e3a\u8bc4\u6d4b\u4ee3\u7801\u8bc4\u5ba1 Agent \u63d0\u4f9b\u4e86\u6709\u4ee3\u8868\u6027\u7684\u591a\u6837\u6027\u3002\u4e3a\u8fdb\u4e00\u6b65\u589e\u5f3a\u53ef\u63a8\u5e7f\u6027\uff0c\u6211\u4eec\u8de8\u8d8a\u56db\u4e2a\u63d0\u4f9b\u5546\u7684\u516d\u4e2a LLM \u540e\u7aef\u8fdb\u884c\u8bc4\u6d4b\u3002\u5c3d\u7ba1\u53ea\u6bd4\u8f83\u4e86\u4e24\u4e2a\u57fa\u7ebf\uff08Claude Code \u4e0e Codex\uff09\uff0c\u4e8c\u8005\u90fd\u4ee3\u8868\u5f53\u524d\u5de5\u4e1a\u4ea4\u4ed8\u3001\u5e26\u5185\u7f6e\u8bc4\u5ba1\u529f\u80fd\u7684\u7f16\u7801 Agent \u7684\u6700\u5148\u8fdb\u6c34\u5e73\uff0c\u786e\u4fdd\u89c2\u5bdf\u5230\u7684\u7ed3\u679c\u53ef\u9760\u4e14\u6709\u610f\u4e49\u3002<\/p>\n<p><strong>\u6784\u5ff5\u6548\u5ea6\u3002<\/strong> SEM-F1 \u4f5c\u4e3a\u8bed\u4e49\u5339\u914d\u6307\u6807\uff0c\u53ef\u80fd\u65e0\u6cd5\u5b8c\u5168\u523b\u753b\u8bc4\u5ba1\u8bc4\u8bba\u7684\u5b9e\u8df5\u4ef7\u503c\uff1a\u53ef\u64cd\u4f5c\u6027\u3001\u6e05\u6670\u5ea6\u4e0e\u4e25\u91cd\u6027\u7b49\u56e0\u7d20\u672a\u88ab\u6d4b\u91cf\u3002\u76f8\u53cd\uff0c\u4e00\u6761\u771f\u6b63\u6709\u7528\u4f46\u4e0e\u4efb\u4f55 Ground Truth \u9879\u90fd\u4e0d\u5339\u914d\u7684\u8bc4\u8bba\u4f1a\u88ab\u8ba1\u4e3a\u5047\u9633\u6027\u3002\u4e3a\u7f13\u89e3\u8fd9\u4e00\u70b9\uff0c\u6211\u4eec\u91c7\u7528 AACR-Bench \u7684\u4e13\u5bb6\u6838\u9a8c Ground Truth\uff0c\u5b83\u7ecf 80 \u4f59\u540d\u9ad8\u7ea7\u5de5\u7a0b\u5e08\u4e09\u8f6e\u4ea4\u53c9\u9a8c\u8bc1\uff0c\u5b9e\u8d28\u964d\u4f4e\u4e86\u9057\u6f0f\u771f\u5b9e\u95ee\u9898\u7684\u53ef\u80fd\u6027\u3002<\/p>\n<h2>7 \u7ed3\u8bba<\/h2>\n<p>\u6211\u4eec\u63d0\u51fa\u4e86 OpenCodeReview\uff0c\u4e00\u4e2a\u57fa\u4e8e\u300c\u5bf9\u4e0d\u786e\u5b9a Agent \u505a\u786e\u5b9a\u6027\u5de5\u7a0b\u300d\u539f\u5219\u7684 LLM \u4ee3\u7801\u8bc4\u5ba1 Agent\u3002OpenCodeReview \u5728\u4e09\u4e2a\u523b\u610f\u4f4d\u7f6e\u6ce8\u5165\u786e\u5b9a\u6027\uff1a\u89c4\u5219\u5f15\u5bfc\u6d3e\u53d1\uff08\u7528\u4e8e\u6587\u4ef6\u4e0e\u6807\u51c6\u9009\u62e9\u7684\u591a\u5c42\u89c4\u5219\u7cfb\u7edf\uff09\u3001\u6709\u6839\u636e\u7684\u6587\u4ef6\u8bc4\u5ba1\uff08\u5e26\u6709\u754c\u8f93\u51fa\u7684\u7b56\u5212\u5de5\u5177\u96c6\uff0c\u7528\u4e8e\u53d7\u7ea6\u675f\u7684\u63a2\u7d22\uff09\uff0c\u4ee5\u53ca\u72ec\u7acb\u53cd\u601d\uff08\u5e26\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u4e0e\u8bc1\u4f2a\u4f18\u5148\u539f\u5219\u7684\u72ec\u7acb\u53cd\u601d\u6a21\u5757\uff09\u3002<\/p>\n<p>\u5728 AACR-Bench \u4e0a\uff0cOpenCodeReview \u5728\u516d\u4e2a LLM \u540e\u7aef\u4e0a\u6301\u7eed\u4f18\u4e8e\u4e3b\u6d41\u7f16\u7801 Agent\uff0cSEM-F1 \u6700\u9ad8\u53ef\u8fbe $2.17times$\uff0c\u540c\u65f6\u6d88\u8017\u7684 token \u5c11 $5text{\u2013}15times$\u3002\u8bc4\u6d4b\u786e\u8ba4\uff1a\u7cfb\u7edf\u8bbe\u8ba1\u5bf9\u8bc4\u5ba1\u8d28\u91cf\u7684\u8d21\u732e\u5927\u4e8e\u6a21\u578b\u9009\u62e9\uff1b\u7ed3\u6784\u5316\u63a2\u7d22\u540c\u65f6\u53d6\u5f97\u66f4\u597d\u8d28\u91cf\u4e0e\u66f4\u4f4e\u6210\u672c\uff1b\u53cd\u601d\u4e2d\u7684\u72ec\u7acb\u6027\u53ef\u4ee5\u901a\u8fc7\u4fe1\u606f\u8fb9\u754c\u800c\u975e\u6a21\u578b\u8eab\u4efd\u5b9e\u73b0\u3002<\/p>\n<p>\u5c55\u671b\u672a\u6765\uff0c\u6211\u4eec\u770b\u5230\u4e24\u4e2a\u6709\u524d\u666f\u7684\u65b9\u5411\uff1a\u4ece\u5386\u53f2\u8bc4\u5ba1\u6570\u636e\u4e2d\u81ea\u52a8\u53d1\u73b0\u89c4\u5219\u4ee5\u51cf\u5c11\u4eba\u5de5\u7ef4\u62a4\uff0c\u4ee5\u53ca\u5c06\u975e\u5bf9\u79f0\u4fe1\u606f\u8fb9\u754c\u539f\u5219\u63a8\u5e7f\u5230\u8f93\u51fa\u53ef\u4ee5\u5bf9\u7167\u8bc1\u636e\u5b50\u96c6\u90e8\u5206\u6838\u9a8c\u7684\u5176\u4ed6 Agent \u4efb\u52a1\u3002\u6211\u4eec\u5e0c\u671b OpenCodeReview \u7684\u5f00\u6e90\u53d1\u5e03\u53ca\u5176\u786e\u5b9a\u6027\u5de5\u7a0b\u54f2\u5b66\uff0c\u6709\u52a9\u4e8e\u4f7f\u57fa\u4e8e LLM \u7684\u4ee3\u7801\u8bc4\u5ba1\u5bf9\u771f\u5b9e\u4e16\u754c\u843d\u5730\u65e2\u53ef\u9760\u53c8\u7ecf\u6d4e\u3002<\/p>\n<h2>\u53c2\u8003\u6587\u732e<\/h2>\n<p>[1] Alberto Bacchelli and Christian Bird. 2013. Expectations, Outcomes, and Challenges of Modern Code Review. In <em>Proceedings of the 35th International Conference on Software Engineering (ICSE)<\/em>. 712\u2013721.<\/p>\n<p>[2] Kowshik Chowdhury, Dipayan Banik, K M Ferdous, and Shazibul Islam Shamim. 2026. From Industry Claims to Empirical Reality: An Empirical Study of Code Review Agents in Pull Requests. In <em>Proceedings of the 23rd International Conference on Mining Software Repositories (MSR)<\/em>.<\/p>\n<p>[3] Xueying Du, Han Wu, Xiaobing Sun, Jingzhi Gong, Yu Zhang, and Xin Ye. 2022. AUGER: Automatically Generating Review Comments with Pre-trained Models. In <em>Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC\/FSE)<\/em>. 1442\u20131454.<\/p>\n<p>[4] Zhiyu Fan, Kirill Vasilevski, Dayi Lin, Boyuan Chen, Yihao Chen, Zhiqing Zhong, Jie M. Zhang, Pinjia He, and Ahmed E. Hassan. 2025. SWE-Effi: Re-Evaluating Software AI Agent System Effectiveness Under Resource Constraints. <em>arXiv preprint arXiv:2509.09853<\/em> (2025).<\/p>\n<p>[5] Jinyao Guo, Chengpeng Wang, Xiangzhe Xu, Zian Su, and Xiangyu Zhang. 2025. RepoAudit: An Autonomous LLM-Agent for Repository-Level Code Auditing. <em>arXiv preprint arXiv:2501.18160<\/em> (2025).<\/p>\n<p>[6] Md. Asif Haider, Ayesha Binte Mostofa, Sk. Sabit Bin Mosaddek, Anindya Iqbal, and Toufique Ahmed. 2024. Prompting and Fine-tuning Large Language Models for Automated Code Review Comment Generation. <em>arXiv preprint arXiv:2411.10129<\/em> (2024).<\/p>\n<p>[7] Hyunsun Hong and Jongmoon Baik. 2025. Retrieval-Augmented Code Review Comment Generation. <em>arXiv preprint arXiv:2506.11591<\/em> (2025).<\/p>\n<p>[8] Sirui Hong, Mingchen Zhuge, Jonathan Chen, Xiawu Zheng, Yuheng Cheng, Ceyao Zhang, Jinlin Wang, Zili Wang, Steven Ka Shing Yau, Zijuan Lin, Liyang Zhou, Chenyu Ran, Lingfeng Xiao, Chenglin Wu, and Sch\u00fcrmannand Josef. 2024. MetaGPT: Meta Programming for a Multi-Agent Collaborative Framework. In <em>Proceedings of the 12th International Conference on Learning Representations (ICLR)<\/em>.<\/p>\n<p>[9] Kexin Huang, Ying Jin, Ryan Li, Michael Y. Li, Emmanuel Cand\u00e8s, and Jure Leskovec. 2025. Automated Hypothesis Validation with Agentic Sequential Falsifications. <em>arXiv preprint arXiv:2502.09858<\/em> (2025).<\/p>\n<p>[10] Osman \u0130\u00e7\u00f6z and Asaf Biricik. 2026. Context-Aware Code Review Automation: A Retrieval-Augmented Approach. <em>Applied Sciences<\/em> 16, 4 (2026), 1875.<\/p>\n<p>[11] Ziwei Ji, Nayeon Lee, Rita Frieske, Tiezheng Yu, Dan Su, Yan Xu, Etsuko Ishii, Ye Jin Bang, Andrea Madotto, and Pascale Fung. 2023. Survey of Hallucination in Natural Language Generation. <em>Comput. Surveys<\/em> 55, 12 (2023), 1\u201338.<\/p>\n<p>[12] Fang Liu, Ge Li, Yusi Fu, Fei Jin, Wenlin Liu, Xiangxin Tan, and Xin Xia. 2022. Automating Code Review Activities by Large-Scale Pre-training. In <em>Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC\/FSE)<\/em>. 1035\u20131047.<\/p>\n<p>[13] Junyi Lu, Lei Yu, Xiaojia Li, Li Yang, and Chun Zuo. 2023. LLaMA-Reviewer: Advancing Code Review Automation with Large Language Models through Parameter-Efficient Fine-Tuning. In <em>Proceedings of the 34th IEEE International Symposium on Software Reliability Engineering (ISSRE)<\/em>.<\/p>\n<p>[14] Aman Madaan, Niket Tandon, Prakhar Gupta, Skyler Hallinan, Luyu Gao, Sarah Wiegreffe, Uri Alon, Nouha Dziri, Shrimai Prabhumoye, Yiming Yang, Shashank Gupta, Bodhisattwa Prasad Majumder, Katherine Hermann, Shayne Longpre, Stephen Pulman, Suhas Patil, Sharan Narang, Gagan Bansal, Colin Raffel, Adam Hsuan, Yair Carmon, Asli Celikyilmaz, and Ed H. Chi. 2023. Self-Refine: Iterative Refinement with Self-Feedback. In <em>Advances in Neural Information Processing Systems (NeurIPS)<\/em>.<\/p>\n<p>[15] Phattharawin Namprasert, Chanathip Thongtan, Pongsakorn Tantikitti, Vishnu Tudupala, Patanamon Thongtanunam, Alaknantha Surendra, Hao Li, and Narayan Rangaraj. 2024. Fine-Tuning Large Language Models to Improve Accuracy and Consistency of Code Review Comment Generation. <em>ACM Transactions on Software Engineering and Methodology<\/em> (2024). doi:10.1145\/3695993.<\/p>\n<p>[16] Sai Sharanarthi Polineni et al. 2025. Multi-Agent LLM Collaboration for Adaptive Code Review, Debugging, and Security Analysis. In <em>2025 International Conference on Mechatronics, Robotics and Artificial Intelligence (ICMRAI)<\/em>.<\/p>\n<p>[17] Chen Qian, Xin Cong, Wei Liu, Cheng Yang, Weize Chen, Yusheng Su, Yufan Dang, Jiahao Li, Juyuan Xu, Dahai Li, Zhiyuan Liu, and Maosong Sun. 2024. ChatDev: Communicative Agents for Software Development. In <em>Proceedings of the 41st International Conference on Machine Learning (ICML)<\/em>.<\/p>\n<p>[18] Peter C. Rigby and Margaret-Anne Storey. 2013. Understanding Broadcast Based Peer Review on Open Source Software Projects. <em>Empirical Software Engineering<\/em> 18, 2 (2013), 225\u2013261.<\/p>\n<p>[19] Caitlin Sadowski, Emma S\u00f6derberg, Luke Church, Michal Sipko, and Alberto Bacchelli. 2018. Modern Code Review: A Case Study at Google. In <em>Proceedings of the 40th International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP)<\/em>. 181\u2013190.<\/p>\n<p>[20] Noah Shinn, Federico Cassano, Ashwin Gopinath, Karthik Narasimhan, and Shunyu Yao. 2023. Reflexion: Language Agents with Verbal Reinforcement Learning. In <em>Advances in Neural Information Processing Systems (NeurIPS)<\/em>.<\/p>\n<p>[21] Kexin Sun, Yucong Guan, Jiaqi Sun, Hongyu Kuang, Guoping Rong, Dong Shao, He Zhang, Xiaoxing Ma, and Christoph Treude. 2026. Improving LLM-Based Go Code Review through Issue-List Generation and Context Augmentation. <em>arXiv preprint arXiv:2606.01859<\/em> (2026).<\/p>\n<p>[22] Xunzhu Tang, Kisub Kim, Yewei Song, Cedric Lothritz, Bei Li, Saad Ezzini, Haoye Tian, Jacques Klein, and Tegawend\u00e9 F. Bissyand\u00e9. 2024. CodeAgent: Autonomous Communicative Agents for Code Review. In <em>Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing (EMNLP)<\/em>. 11279\u201311313.<\/p>\n<p>[23] Ningning Wang, Xavier Hu, Pai Liu, He Zhu, Yue Hou, Heyuan Huang, Shengyu Zhang, Jian Yang, Jiaheng Liu, Ge Zhang, Changwang Zhang, Jun Wang, Yuchen Eleanor Jiang, and Wangchunshu Zhou. 2025. Efficient Agents: Building Effective Agents While Reducing Cost. <em>arXiv preprint arXiv:2508.02694<\/em> (2025).<\/p>\n<p>[24] Abel Yagubyan. 2026. How Consistent Are LLM Agents? Measuring Behavioral Reproducibility in Multi-Step Tool-Calling Pipelines. <em>arXiv preprint arXiv:2605.28840<\/em> (2026).<\/p>\n<p>[25] John Yang, Carlos E. Jimenez, Alexander Wettig, Kilian Lieret, Shunyu Yao, Karthik Narasimhan, and Ofir Press. 2025. SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering. In <em>Proceedings of the 47th International Conference on Software Engineering (ICSE)<\/em>.<\/p>\n<p>[26] Shunyu Yao, Jeffrey Zhao, Dian Yu, Nan Du, Izhak Shafran, Karthik Narasimhan, and Yuan Cao. 2023. ReAct: Synergizing Reasoning and Acting in Language Models. In <em>Proceedings of the 11th International Conference on Learning Representations (ICLR)<\/em>.<\/p>\n<p>[27] Yongda Yu, Guoping Rong, Haifeng Shen, He Zhang, Dong Shao, Min Wang, Zhao Wei, Yong Xu, and Juhong Wang. 2025. Fine-Tuning Large Language Models to Improve Accuracy and Comprehensibility of Automated Code Review. <em>ACM Transactions on Software Engineering Methodology<\/em> 34, 1 (2025), 14:1\u201314:26.<\/p>\n<p>[28] Yongda Yu, Guohao Shi, Xianwei Wu, Haochuan He, XueMing Gu, Qianqian Zhao, Kui Liu, Qiushi Wang, Zhao Tian, Haifeng Shen, and Guoping Rong. 2025. Fine-Tuning LLMs to Analyze Multiple Dimensions of Code Review: A Maximum Entropy Regulated Long Chain-of-Thought Approach. <em>arXiv preprint arXiv:2509.21170<\/em> (2025).<\/p>\n<p>[29] Fengji Zhang, Bei Chen, Yue Zhang, Jacky Keung, Jin Liu, Daoguang Zan, Yi Mao, Jian-Guang Lou, and Weizhu Chen. 2023. RepoCoder: Repository-Level Code Completion Through Iterative Retrieval and Generation. In <em>Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing (EMNLP)<\/em>. 2471\u20132484.<\/p>\n<p>[30] Lei Zhang, Yongda Yu, Minghui Yu, Xinxin Guo, Zhengqi Zhuang, Guoping Rong, Dong Shao, Haifeng Shen, Hongyu Kuang, Zhengfeng Li, Boge Wang, Guoan Zhang, Bangyu Xiang, and Xiaobin Xu. 2026. AACR-Bench: Evaluating Automatic Code Review with Holistic Repository-Level Context. <em>arXiv preprint arXiv:2601.19494<\/em> (2026).<\/p>\n<p>[31] Yuntong Zhang, Haifeng Ruan, Zhiyu Fan, and Abhik Roychoudhury. 2024. AutoCodeRover: Autonomous Program Improvement. In <em>Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA)<\/em>.<\/p>\n<p>[32] Yuxin Zhang, Yuxia Zhang, Zeyu Sun, Yanjie Jiang, and Hui Liu. 2025. LAURA: Enhancing Code Review Generation with Context-Enriched Retrieval-Augmented LLM. In <em>Proceedings of the 40th IEEE\/ACM International Conference on Automated Software Engineering (ASE)<\/em>.<\/p>\n<div class=\"footnote\">\n<hr \/>\n<ol>\n<li id=\"fn:1\">\n<p>https:\/\/www.anthropic.com\/claude-code&#160;<a class=\"footnote-backref\" href=\"1\" title=\"Jump back to footnote 1 in the text\" target=\"_blank\"  rel=\"nofollow\" >&#8617;<\/a><\/p>\n<\/li>\n<li id=\"fn:2\">\n<p>https:\/\/openai.com\/index\/codex\/&#160;<a class=\"footnote-backref\" href=\"2\" title=\"Jump back to footnote 2 in the text\" target=\"_blank\"  rel=\"nofollow\" >&#8617;<\/a><\/p>\n<\/li>\n<li id=\"fn:3\">\n<p>https:\/\/www.cursor.com&#160;<a class=\"footnote-backref\" href=\"3\" title=\"Jump back to footnote 3 in the text\" target=\"_blank\"  rel=\"nofollow\" >&#8617;<\/a><\/p>\n<\/li>\n<li id=\"fn:4\">\n<p>https:\/\/github.com\/sst\/opencode&#160;<a class=\"footnote-backref\" href=\"4\" title=\"Jump back to footnote 4 in the text\" target=\"_blank\"  rel=\"nofollow\" >&#8617;<\/a><\/p>\n<\/li>\n<\/ol>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Meta Data \u53d1\u8868\u65f6\u95f4\uff1a2026-08-10 \u4f5c\u8005\uff1aZhengfeng Li, Lei Zhang, Xianwei Wu, &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"emotion":"","emotion_color":"","title_style":"","license":"","footnotes":""},"categories":[60,41],"tags":[],"class_list":["post-1660","post","type-post","status-publish","format-standard","hentry","category-paper_read","category-learning_note"],"_links":{"self":[{"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/posts\/1660","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/comments?post=1660"}],"version-history":[{"count":0,"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/posts\/1660\/revisions"}],"wp:attachment":[{"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/media?parent=1660"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/categories?post=1660"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lingbo.online\/index.php\/wp-json\/wp\/v2\/tags?post=1660"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}