AI News HubLIVE
站内改写

ARM 開源 AI 驅動的安全代碼審查工具 Metis

ARM 產品安全團隊開源了 Metis,一個基於代理式 AI 的深度安全代碼審查框架。它利用 LLM 進行語義理解、RAG 獲取上下文,支持多種語言和插件擴展,旨在檢測複雜代碼庫中的細微漏洞,減少審查疲勞。

文章情報

工程師中級

要點

  • Metis 是 ARM 開源的 AI 安全代碼審查框架,使用 LLM 和 RAG 進行深度推理。
  • 支持 C、C++、Python、Rust、TypeScript 等多種語言,可通過插件擴展。
  • 提供索引、代碼審查、補丁審查、三分類等功能,可集成到 CI/CD 流程。
  • 使用 Apache 2.0 許可,支持多種 LLM 後端,包括 OpenAI 和本地模型。

為甚麼重要

這條新聞值得關注,因為Metis 是 ARM 開源的 AI 安全代碼審查框架,使用 LLM 和 RAG 進行深度推理。

技術影響

可能影響模型選型、推理成本、產品能力和評測基準。

ARM 的產品安全團隊近日宣佈開源 Metis,一個基於代理式 AI 的深度安全代碼審查框架。Metis 以希臘智慧女神命名,旨在幫助工程師發現傳統靜態分析工具難以捕捉的細微漏洞,改善安全編碼實踐,並減輕代碼審查疲勞。

與傳統的 linter 或靜態分析工具不同,Metis 不依賴硬編碼規則,而是利用大型語言模型(LLM)進行語義理解和推理。通過檢索增強生成(RAG)技術,模型能夠訪問更廣泛的代碼上下文和相關邏輯,從而提供更準確和可操作的審查建議。

Metis 採用插件式架構,支持多種編程語言,包括 C、C++、Python、Rust、TypeScript、Go、Solidity、Verilog 等。每種語言都有對應的內置插件,可實現基於 tree-sitter 的語法分析、流分析或結構分析。此外,用户可以通過 Setuptools 入口點輕鬆添加對其他語言的支持。

該工具支持多種向量存儲後端,包括默認的 ChromaDB 和用於規模化索引的 PostgreSQL(帶 pgvector 擴展)。它提供了交互式 CLI 和非交互式模式,可集成到 CI/CD 管道中。核心命令包括:index(索引代碼庫)、review_code(全員安全審查)、review_file(單文件審查)、review_patch(補丁審查)、update(增量更新索引)、ask(問答)和 triage(對 SARIF 結果進行三分類)。

Metis 的配置通過 YAML 文件進行,可自定義 LLM 提供商、引擎行為、數據庫連接等參數。提示模板也支持定製,以適應更嚴格的審計、隱私審查或合規性要求。該工具還支持自定義提示文件(.metis.md),用於注入組織特定的安全策略。

在輸出方面,Metis 可生成 SARIF 格式的報告,並具備內部驗證機制以降低誤報率。它支持多種 LLM 服務,包括 OpenAI、vLLM、Ollama、LiteLLM 等,既可使用雲端模型,也可部署本地模型。

Metis 採用 Apache 2.0 許可,已在 GitHub 上獲得超過 560 顆星和 89 個 fork。ARM 團隊表示,Metis 特別適用於大型、複雜或遺留代碼庫,在這些場景中傳統工具往往力不從心。