產品

Bugbot 現在可透過學得的規則自我改進

Michael Zhao閱讀時間 1 分鐘

當我們在 2025 年 7 月將 Bugbot 結束測試版正式推出 時,它識別出的錯誤中,有 52% 在相關 PR 合併前就已解決,這也表示其餘為誤報。

如今,解決率已接近 80%,比排名第二的 AI 程式碼審查產品高出 15 個百分點。

AI 程式碼審查產品解決率已分析的 PR
Cursor Bugbot78.13%50,310
Greptile63.49%11,419
CodeRabbit48.96%33,487
GitHub Copilot46.69%24,336
Codex45.07%19,384
Gemini Code Assist30.93%21,031

我們僅分析公開儲存庫。對於 AI 程式碼審查產品產生的每則留言, 我們都使用 LLM 評審者檢查它在合併前是否已被處理。

直到現在,這些改進完全仰賴離線實驗推動:我們調整 Bugbot、進行測試以確認這項變更是否能提升解決率,如果可以,就會發布。

即使 Bugbot 找出更多錯誤,它的解決率仍持續上升即使 Bugbot 找出更多錯誤,它的解決率仍持續上升

但純粹依賴離線方法,會讓許多訓練潛力無法被充分利用。Bugbot 每天審查數十萬個 PR,而每一次審查都是一次自然實驗,Bugbot 可以根據開發者是否對它的回報採取行動來自我改進。

為了運用這些即時訊號,我們現在讓 Bugbot 能從過去的執行中學習,將即時程式碼審查流程中的意見回饋轉化為學得的規則。規則可作為額外指示,讓 Bugbot 的執行具備更高的自訂彈性,幫助 Bugbot 專注在特定議題、業務上下文等更多面向。

自從以測試版推出 學得的規則 以來,已有超過 110,000 個儲存庫啟用學習,產生超過 44,000 條學得的規則。

學得的規則的運作方式

每個已合併的 PR 都包含各種訊號,Bugbot 可利用這些訊號自我改進,並將其整理成規則。三個重要訊號如下:

  1. 對 Bugbot 註解的反應:倒讚表示 Bugbot 的發現沒有幫助。
  2. 對 Bugbot 註解的回覆:開發者會說明問題出在哪裡,或這項建議還能如何改進。
  3. 來自人工審查者的註解:用來標示 Bugbot 遺漏的議題。
Bugbot 的學習流程Bugbot 的學習流程

Bugbot 會將這些訊號處理成候選規則,並持續根據新進的 PR 評估這些規則。

隨著訊號持續累積,Bugbot 可以將候選規則提升為啟用狀態,開始影響後續的審查。相對地,如果某條啟用中的規則開始持續產生一致的負面訊號,Bugbot 也可以將其停用。你也可以直接在 UI 中編輯或刪除規則。

開始使用

我們希望 Bugbot 能找出每一個真正的錯誤,而這需要對你的程式碼庫、既有模式,以及團隊的優先順序有深入了解。學得的規則是朝這個方向邁出的一大步,也是我們持續讓 Bugbot 自我改進的整體工作之一。

請在 Cursor Dashboard 管理 Bugbot 的學習;你可以在那裡啟用學得的規則,並針對近期的 PR 執行回填,或在我們的 文件 中了解更多。

分類於: 產品

作者: Michael Zhao