WecoAI/aideml

AIDE: an LLM agent for machine learning engineering - the research Weco grew out of. Referenced in OpenAI MLE-bench.

AIDE ML – 一個由大語言模型驅動的 機器學習工程 代理

它是什麼 – AIDE ML 是一個開源的 Python 套件,實作了 arXiv 論文 2502.13138 中描述的 AIDE 算法。該算法將建立機器學習流程視為一個 樹狀搜尋問題:每個節點是一段 Python 程式碼,大語言模型會提出修補(新增子節點),執行產生的程式碼,根據使用者指定的指標測量其表現,並根據此反饋修剪樹狀結構。此過程重複進行,直到指標達到最大值(或最小值)。

主要功能

  • 自然語言任務規格 – 提供資料夾、純英文目標與評估指標(例如 goal="預測流失" eval="AUROC")。無需撰寫 YAML 設定檔。
  • 代理式樹狀搜尋 – 大語言模型自動撰寫、除錯與迭代程式碼;搜尋過程由指標反饋引導。
  • 模型無關 – 可與任何支援 OpenAI 兼容 API 的大語言模型搭配使用(OpenAI、Anthropic、Gemini、本地 Ollama 模型等)。
  • 可視化功能 – 提供 HTML 可視化工具與 Streamlit UI,讓您探索解的樹狀結構,並觀看最佳程式碼的演進過程。
  • 研究就緒 – 倉儲設計輕量,研究者可輕易替換搜尋啟發式、評估模型或底層大語言模型。

如何開始

pip install -U aideml               # 安裝套件
export OPENAI_API_KEY=…            # 或指向本地 Ollama 伺服器
# 執行簡單實驗
aide data_dir="example_tasks/house_prices" \
     goal="預測每棟房子的銷售價格" \
     eval="log-價格之間的 RMSE"

執行後會建立 logs/<run-id>/ 目錄,包含:

  • best_solution.py – 找到的得分最高的程式碼。
  • tree_plot.html – 整個搜尋樹的互動式檢視。

Web UI – 克隆倉儲後,執行 streamlit run aide/webui/app.py 即可啟動瀏覽器介面,您可上傳資料、設定目標/指標,並即時觀看代理的運作。

進階用法 – CLI 參數可讓您變更編碼模型(agent.code.model)、迭代次數(agent.steps),或每步的草稿數量(agent.search.num_drafts)。您也可透過 Docker 執行,或將 OPENAI_BASE_URL 指向 Ollama 端點,在本地完全離線運行。

適合使用者

  • 研究人員:探索新的代理架構、搜尋策略或評估流程。
  • 機器學習工程師:希望快速為新資料集原型化高表現模型,而無需手動撰寫程式碼。

相關研究 – README 列出數篇近期論文,這些論文基於或以 AIDE 為基準進行測試(例如 OpenAI 的 MLE‑Bench、Meta 的 LLM Speedrunning 基準)。這些引用顯示該算法已成為前沿機器學習代理研究的基準。

引用 – 若您使用 AIDE ML 發表研究成果,請引用附帶的 arXiv 論文(詳見 README 中的 BibTeX 資料)。


以上所有資訊均直接取自倉儲的 README;未添加任何額外主張。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案