WecoAI/aideml
AIDE: an LLM agent for machine learning engineering - the research Weco grew out of. Referenced in OpenAI MLE-bench.
AIDE ML – 由LLM驱动的机器学习工程师
是什么 – AIDE ML 是一个开源 Python 包,实现了 AIDE 算法:一个由 LLM 指导的树搜索代理,它负责编写、调试和基准测试机器学习任务的 Python 代码,直到用户指定的性能指标最大化(或最小化)。该仓库提供了一个简洁的、面向研究的参考实现、CLI、Streamlit UI,以及用于可视化解决方案树的实用工具。
适用对象
- 探索代理架构的研究人员(可替换搜索启发式、评估器或 LLM 后端)。
- 希望从数据集和自然语言目标自动生成高性能 ML 管道的实践者。
主要特性
| 特性 | 提供的功能 |
|---|---|
| 自然语言任务指定 | aide data_dir=… goal="Predict churn" eval="AUROC" – 无需 YAML。 |
| 代理式树搜索 | 每个生成的脚本是一个节点;LLM 生成的补丁成为子节点;指标反馈修剪树。 |
| 模型无关的基础设施 | 支持 OpenAI、Anthropic、Gemini 或任何遵循 OpenAI API 的自托管 LLM(例如 Ollama)。 |
| HTML 可视化器与 Streamlit UI | 检查整个解决方案树、实时日志和最佳代码。 |
| 可配置的步骤和草稿 | agent.steps、agent.search.num_drafts、温度、令牌预算、推理努力等。 |
| Docker 和本地 LLM 支持 | 通过 OPENAI_BASE_URL 完全在本地模型(例如 qwen2.5)上运行。 |
快速上手
- 安装包:
pip install -U aideml。 - 导出 LLM API 密钥(
OPENAI_API_KEY或ANTHROPIC_API_KEY)。 - 使用数据集文件夹、目标和评估指标运行 CLI。运行会创建
logs/<run_id>/目录,其中包含最佳脚本(best_solution.py)和交互式tree_plot.html。
Web UI – 克隆仓库,安装可编辑包,然后在 aide/webui 中运行 streamlit run app.py。上传数据,输入目标/指标,观察树的演化。
可扩展性 – 该仓库有意保持简洁:核心的 Experiment 类编排三个阶段(代码生成、反馈/评估、报告)。每个阶段接受模型 ID、提供商、温度、令牌预算和可选的推理努力,使得插入新的 LLM 或自定义评估器变得容易。
研究影响 – 该算法在 arXiv 论文 AIDE: AI-Driven Exploration in the Space of Code (arXiv:2502.13138) 中有所描述。它已被多个知名基准(MLE-Bench、RE-Bench、AI-Scientist-v2、Meta 的 speed-runner 等)引用,其中树搜索版本比线性代理有显著优势。
安装与测试 – 除了常规的 pip 安装外,该仓库还提供了 Dockerfile、实时端到端测试(在 Ames 住房数据集上运行几步)以及可以使用真实 API 密钥执行测试的 CI。
引用 – 如果您在论文中使用 AIDE ML,请引用 README 末尾提供的 2025 年 arXiv 文章。
相关
- 项目
- 项目
- 项目
- 项目
- 项目