OpenAI 推出 SWE-bench Verified 提升 AI 在軟件工程任務中的評估準確性
8月13日,OpenAI 發布了全新版本的代碼生成評估基準 SWE-bench Verified,以解決此前基準在評估人工智能模型軟件工程任務表現時存在的局限性。通過這一改進,OpenAI 希望更準確地評估大語言模型(LLM)在解決真實軟件問題中的能力,進一步推動 AI 在軟件開發領域的應用。
SWE-bench 是一個專為評估 LLM 在解決 GitHub 上真實軟件問題中的表現而設計的基準測試數據集。它收集了來自12個流行的 Python 倉庫的2294個 Issue-Pull Request 對。測試時,LLM 會接收一個代碼庫及其 issue 描述,并生成一個補丁以解決所描述的問題。
SWE-bench 基準使用了兩種類型的測試來評估 LLM 的表現:其中,FAIL_TO_PASS 測試用于檢查生成的補丁是否成功解決了問題。而PASS_TO_PASS 測試用于確保補丁不會破壞代碼的現有功能。
盡管 SWE-bench 在評估 LLM 代碼生成能力方面取得了一定進展,但 OpenAI 也指出了該基準存在的幾個主要問題:SWE-bench 中用于評估解決方案正確性的單元測試有時過于具體,甚至與問題無關,從而導致正確的解決方案被拒絕。許多樣本中的問題描述不夠具體,導致 LLM 在理解問題及其解決方案時出現困難。在某些情況下,SWE-bench 的開發環境難以可靠設置,導致單元測試失敗的風險增加。
為了應對上述問題,OpenAI 推出了 SWE-bench Verified。新版本的主要改進之一是引入了基于容器化 Docker 環境的新評估工具包,這使得評估過程更加一致和可靠,減少了與開發環境設置相關的問題。
這一改進顯著提升了 AI 模型在軟件工程任務中的評估準確性。以 GPT-4 為例,使用 SWE-bench Verified 進行評估時,GPT-4 成功解決了 33.2% 的樣本問題。而在開源代理框架中表現最佳的 Agentless 也取得了顯著進步,得分翻了一番,達到 16%。
這些性能提升表明,SWE-bench Verified 能夠更好地捕捉 LLM 在軟件工程任務中的實際能力,為研究人員和開發者提供了更可靠的工具來評估和優化 AI 模型。