返回首頁

AI 程式開發/評測

Alibaba OpenCodeReview 登上 GitHub 熱門榜,以確定式管線約束程式審查代理

Alibaba 內部使用的 OpenCodeReview 本週形成明顯開源採用熱度,把檔案選取、規則匹配與留言定位交給確定式程式,再讓 LLM 代理處理脈絡搜尋。官方基準顯示它較通用 coding agent 節省約九成 token,但代價是較低召回率。

The original uploader was Snow storm in Eastern Asia at English Wikipedia. · CC BY 3.0 · Image source
zh-Hant

OpenCodeReview 於 9 月 14 日躍上 GitHub 熱門項目;Alibaba 表示,這套工具此前已在內部服務數萬名開發者。它不是單靠提示詞要求模型「審查所有程式」,而是把流程拆成可重現的工程層與具彈性的代理層:前者精確決定要讀哪些 diff 與檔案、套用哪些語言規則,再把相關檔案組成獨立工作單元;後者才使用全文讀取、程式庫搜尋及跨檔案工具補充脈絡。

每個檔案組合可由隔離的子代理並行處理,外部 positioning 模組把意見重新對準實際行號,reflection 模組則二次檢查內容。內建規則涵蓋 null pointer、執行緒安全、XSS 與 SQL injection,也能連接 OpenAI 或 Anthropic 相容端點。CLI 可檢查工作區、commit、分支範圍或整個目錄,中斷後可續跑,並輸出 JSON 供其他 coding agent 或 CI 消費。核心程式採 Apache 2.0。

隨附的 AACR‑Bench 包含 50 個開源專案、200 個 PR、10 種語言與 1,505 項專家驗證問題,並標記偵測每個問題所需的是 diff、完整檔案或 repository 級脈絡。Alibaba 聲稱,在相同底層模型下,OpenCodeReview 的 precision 與 F1 高於 Claude Code 類通用代理,token 用量約為九分之一;但官方也明確承認 recall 較低,代表較少誤報是用漏掉更多真實缺陷換來的。

此外,基準標註本身由多款 LLM 產生候選、再交給專家核驗,語意比對亦可能使用 LLM judge,仍可能偏向相似的審查風格。導入前應在自家歷史 PR 上同時計算 precision、recall 與嚴重度加權漏報率;若使用外部模型端點,還要確認完整檔案及跨檔案脈絡是否會離開企業邊界。

來源

  1. Alibaba OpenCodeReview repository
  2. OpenCodeReview: Determinism over Non-Determinism for Cost-Effective Agent-Based Code Review
  3. AACR-Bench dataset