Repolode
algorithmicsuperintelligence

algorithmicsuperintelligence/openevolve

开源的进化式代码智能体,利用大语言模型迭代改写并评估代码,以发现更优算法,是 AlphaEvolve 思路的开源实现。

Star
7,603
Fork
1,190
未关闭 Issue
95
最近提交
20小时前

这是什么?

OpenEvolve 对源代码执行进化循环:大语言模型提议对程序的修改,用户编写的评估器为每个候选打分,表现最好的候选进入下一轮。程序保存在跨多个岛屿的 MAP-Elites 质量-多样性网格中,使搜索能保留多种解法,而不是收敛到单一局部最优。它适用于能够用脚本衡量正确性和性能的问题,例如函数最小化、圆形填充、GPU 内核调优和排序算法。

项目可通过 PyPI 安装或使用 Docker 运行,也可以作为 Python 库调用,如 run_evolution 和 evolve_function。大模型后端兼容任何 OpenAI 兼容接口,包括 Gemini、OpenAI 以及 Ollama、vLLM 等本地服务。支持按权重组合多个模型,并提供 Claude Code CLI 和 Codex app-server 后端,无需 API Key。配置通过 YAML 完成,可设置随机种子、级联评估、将错误信息反馈给模型,以及自定义提示词模板。

仓库提供 Python、Rust、R 和 Metal shader 等示例,并附带可视化工具,用于查看进化树和 MAP-Elites 网格。固定随机种子时结果可复现,运行过程中会写入检查点。

核心功能

  • 01由大语言模型提议代码修改,并由用户编写的评估器打分。
  • 02在多个岛屿上使用 MAP-Elites 质量-多样性网格,保持种群多样性。
  • 03兼容任何 OpenAI 兼容接口,也支持本地模型以及 Claude Code、Codex CLI 后端。
  • 04支持加权模型集成和级联评估,尽早筛掉较差的候选程序。
  • 05提供 Python 库接口和命令行工具,并可使用 Docker 镜像运行。
  • 06附带可视化工具,展示进化树和 MAP-Elites 网格。

适用场景

  • 对可自动基准测试的数值例程或计算内核进行性能调优。
  • 为圆形填充等数学构造问题寻找更优解。
  • 针对可量化的测试集演化提示词或小型程序。
  • 在本地模型上试验大语言模型驱动的算法发现。

快速上手

  1. 1

    从 PyPI 安装 OpenEvolve

    pip install openevolve
  2. 2

    设置你的 LLM API 密钥(示例默认使用 Google Gemini,密钥可从 Google AI Studio 获取)

    export OPENAI_API_KEY="your-gemini-api-key"
  3. 3

    运行第一个示例进化任务

    python openevolve-run.py examples/function_minimization/initial_program.py examples/function_minimization/evaluator.py --config examples/function_minimization/config.yaml --iterations 50

使用前须知

  • 每次迭代都会调用 LLM,进行大量迭代时 API 费用可能较高。
  • 进化运行需要 OpenAI 兼容的 LLM API 或 Claude Code CLI,因此必须自行提供模型访问权限。

标签

常见问题

openevolve 是什么?
开源的进化式代码智能体,利用大语言模型迭代改写并评估代码,以发现更优算法,是 AlphaEvolve 思路的开源实现。 OpenEvolve 对源代码执行进化循环:大语言模型提议对程序的修改,用户编写的评估器为每个候选打分,表现最好的候选进入下一轮。程序保存在跨多个岛屿的 MAP-Elites 质量-多样性网格中,使搜索能保留多种解法,而不是收敛到单一局部最优。它适用于能够用脚本衡量正确性和性能的问题,例如函数最小化、圆形填充、GPU 内核调优和排序算法。
openevolve 可以免费使用吗?用的什么许可证?
openevolve 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
openevolve 还在维护吗?
活跃维护中。openevolve 最近一次提交是在 2026年10月19日。
openevolve 适合用来做什么?
对可自动基准测试的数值例程或计算内核进行性能调优。 为圆形填充等数学构造问题寻找更优解。 针对可量化的测试集演化提示词或小型程序。 在本地模型上试验大语言模型驱动的算法发现。
openevolve 怎么安装和运行?
从 PyPI 安装 OpenEvolve: pip install openevolve 设置你的 LLM API 密钥(示例默认使用 Google Gemini,密钥可从 Google AI Studio 获取): export OPENAI_API_KEY="your-gemini-api-key" 运行第一个示例进化任务: python openevolve-run.py examples/function_minimization/initial_program.py examples/function_minimization/evaluator.py --config examples/function_minimization/config.yaml --iterations 50
在哪里获取 openevolve?
源代码和安装说明在 GitHub 上:https://github.com/algorithmicsuperintelligence/openevolve

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目