AIDE

Autonomous Agents 💻 Python ⚖️ MIT 🟢 Actively maintained
1.5k stars

AIDE ML is an open-source Python package implementing the AIDE algorithm, an LLM-driven agent that autonomously writes, evaluates, and improves machine-learning code via tree search. It solves the problem of automating ML pipeline development from a dataset and a natural-language goal, targeting researchers and ML practitioners who want to replicate the paper or prototype solutions.

✨ Key features

  • Natural-language task specification: describe goal and metric in plain English.
  • Iterative agentic tree search: code scripts as nodes, patches as children, metric feedback guides search.
  • Model-neutral: supports OpenAI, Anthropic, Gemini, or any local LLM with OpenAI API.
  • HTML visualizer to inspect solution tree and code.
  • Streamlit web UI for interactive prototyping.
  • CLI and Python API for flexible experimentation.

🎯 Use cases

  • Automatically build a high-performance ML pipeline for a given dataset.
  • Replicate the AIDE paper results or test new search heuristics.
  • Prototype ML solutions interactively via the Streamlit UI.
  • Use as a benchmark for evaluating ML agents (as in MLE-bench).

📦 Installation

🧰 Requirements: Python environment with pip; requires an LLM API key (e.g., OPENAI_API_KEY) or a local LLM endpoint; optional Docker for containerized runs.

pip install -U aideml

For web UI or development:

git clone https://github.com/WecoAI/aideml.git
cd aideml
pip install -e . # adds streamlit

🚀 Usage

export OPENAI_API_KEY=<your-key>
aide data_dir="example_tasks/house_prices" \
     goal="Predict the sales price for each house" \
     eval="RMSE between log-prices"

After run, find logs/<timestamp>/best_solution.py and tree_plot.html.

⚠️ Good to know

The README notes that using fully local models may result in some performance drop; otherwise, no explicit limitations are stated.

❓ FAQ

What is the AIDE algorithm?

AIDE is a tree-search agent that autonomously drafts, debugs, and benchmarks code until a user-defined metric is maximized or minimized, as described in the paper.

Which LLMs can I use?

The tool is model-neutral and supports OpenAI, Anthropic, Gemini, or any local LLM that speaks the OpenAI API, such as Ollama.

How do I run the web UI?

Clone the repo, install with pip install -e ., then run streamlit run app.py from the aide/webui directory.

What outputs does a run produce?

It produces best_solution.py with the best code found and tree_plot.html to inspect the solution tree.

📊 Repository

Stars★ 1,501
Forks🍴 222
Open issues🐛 3
Last commit🕒 Sep 3, 2026
Created📅 Apr 2024
Language💻 Python
License⚖️ MIT
Websiteweco.ai

🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.