openevolve

GitHub
5.9k 943 简单 7 次阅读 今天Apache-2.0Agent开发框架语言模型
AI 解读 由 AI 自动生成,仅供参考

OpenEvolve 是一款基于大语言模型的开源进化式代码代理,旨在将 LLM 转化为自主的代码优化引擎。它能够自动迭代代码,甚至发现人类未曾设想的全新算法,从而解决传统手动优化效率低、探索范围受限的难题。相比人工调试,OpenEvolve 能将优化周期从数周缩短至数小时,并在真实硬件上实现显著的性能提升。

这款工具非常适合追求极致性能的开发者、算法研究人员以及需要进行科学计算优化的工程师。它支持 Python、Rust、Metal 等多种语言,具备科研级的可复现性和确定性评估流程。独特的进化机制允许它在无人工干预的情况下,通过并行演化探索无限的可能性,已在 GPU 内核优化、数学问题求解等领域取得突破性成果。无论是快速原型验证还是深度算法挖掘,OpenEvolve 都能提供强大的自动化支持,让代码进化变得简单高效。

使用场景

某视频流媒体公司的后端工程师团队正在负责优化实时图像处理中的高斯模糊滤镜核心函数,目标是显著降低服务器端渲染延迟以提升整体用户体验。

没有 openevolve 时

  • 手动重构代码逻辑往往耗时数天,且很难保证能找到全局最优解而非陷入局部最优。
  • 严重依赖工程师个人经验,容易陷入思维定势,从而错过潜在的关键性能提升点。
  • 在不同硬件环境下的性能表现极不稳定,难以验证和优化效果是否真正具有可复现性。
  • 需要在执行速度和图像精度之间反复权衡,人工调整参数效率极低且极易引入新错误。

使用 openevolve 后

  • 自动运行进化算法,在短短几小时内就能发现比人工手写更快的代码结构变体。
  • 利用大模型的创造力探索无限代码变体,生成人类未曾设想的创新优化解决方案。
  • 内置全自动化评估流程,确保生成的优化代码在不同硬件环境下都能稳定可复现。
  • 自动进行多目标帕累托优化,直接输出速度与精度平衡的最佳版本无需人工反复干预。

openevolve 不仅将原本需要数周的代码调优工作压缩至小时级,更能通过自主进化挖掘出超越人类经验的性能突破,彻底改变传统优化模式。

运行环境要求

操作系统
  • 未说明
GPU

未说明

内存

未说明

依赖
notes必须配置 LLM API Key(支持 OpenAI、Google Gemini 或本地模型如 Ollama/vLLM);支持 Docker 容器化运行;运行成本取决于迭代次数及所选 LLM 提供商;可结合 OptiLLM 优化推理成本与性能。
python3.10+
未说明
openevolve hero image

快速开始

OpenEvolve

OpenEvolve Logo

🧬 最先进的开源进化编码智能体

将您的大语言模型 (LLMs) 转变为能够发现突破性算法的自主代码优化器

GitHub stars PyPI version PyPI downloads License

🚀 快速开始示例系统消息讨论

从随机搜索到最先进 (State-of-the-art):实时见证您的代码进化


为什么选择 OpenEvolve?

自主发现

LLM 不仅仅是优化——它们能发现全新的算法。无需人工指导。

已验证的成果

在真实硬件上实现 2-3 倍加速最先进的圆打包问题。突破性优化。

研究级标准

完全可复现,内置广泛的评估流程和科学严谨性。

OpenEvolve 与手动优化对比:

Aspect Manual Optimization OpenEvolve
Time to Solution Days to weeks Hours
Exploration Breadth Limited by human creativity Unlimited LLM creativity
Reproducibility Hard to replicate Fully deterministic
Multi-objective Complex tradeoffs Automatic 帕累托 (Pareto) 优化
Scaling Doesn't scale Parallel evolution across islands

已验证的成果

领域 成就 示例
GPU 优化 Hardware-optimized kernel discovery MLX Metal Kernels
数学 State-of-the-art circle packing (n=26) Circle Packing
算法设计 Adaptive sorting algorithms Rust Adaptive Sort
科学计算 Automated filter design Signal Processing
多语言 Python, Rust, R, Metal shaders All Examples

🚀 快速开始

从零开始进化代码仅需 30 秒

# Install OpenEvolve
pip install openevolve

# The example uses Google Gemini by default (free tier available)
# Get your API key from: https://aistudio.google.com/apikey
export OPENAI_API_KEY="your-gemini-api-key"  # Yes, use OPENAI_API_KEY env var

# Run your first evolution!
python openevolve-run.py examples/function_minimization/initial_program.py \
  examples/function_minimization/evaluator.py \
  --config examples/function_minimization/config.yaml \
  --iterations 50

注意: 示例配置默认使用 Gemini,但您可以通过修改 config.yaml 使用任何兼容 OpenAI 的服务商。查看 configs 以获取完整配置选项。

库用法

OpenEvolve 可作为库使用,无需任何外部文件:

from openevolve import run_evolution, evolve_function

# Evolution with inline code (no files needed!)
result = run_evolution(
    initial_program='''
    def fibonacci(n):
        if n <= 1: return n
        return fibonacci(n-1) + fibonacci(n-2)
    ''',
    evaluator=lambda path: {"score": benchmark_fib(path)},
    iterations=100
)

# Evolve Python functions directly
def bubble_sort(arr):
    for i in range(len(arr)):
        for j in range(len(arr)-1):
            if arr[j] > arr[j+1]:
                arr[j], arr[j+1] = arr[j+1], arr[j] 
    return arr

result = evolve_function(
    bubble_sort,
    test_cases=[([3,1,2], [1,2,3]), ([5,2,8], [2,5,8])],
    iterations=50
)
print(f"Evolved sorting algorithm: {result.best_code}")

偏好 Docker? 请参阅 安装与设置 部分了解 Docker 选项。

实际演示

圆打包:从随机到最先进

实时观看 OpenEvolve 发现最优圆打包方案:

Generation 1 Generation 190 Generation 460 (Final)
Initial Progress Final
Random placement Learning structure 最先进结果

结果:匹配 n=26 圆打包问题的已发布基准测试。

GPU 内核进化

进化前(基线)

// Standard attention implementation
kernel void attention_baseline(/* ... */) {
    // Generic matrix multiplication
    float sum = 0.0;
    for (int i = 0; i < seq_len; i++) {
        sum += query[tid] * key[i];
    }
}

进化后(快 2.8 倍)

// OpenEvolve discovered optimization
kernel void attention_evolved(/* ... */) {
    // Hardware-aware tiling + unified memory optimization
    threadgroup float shared_mem[256];
    // ... evolved algorithm exploiting Apple Silicon architecture
}

性能影响:在 Apple M1 Pro 上实现 2.8 倍加速,同时保持数值精度。

OpenEvolve 工作原理

OpenEvolve 实现了一个复杂的进化编码流水线 (evolutionary coding pipeline),远超简单的优化:

OpenEvolve Architecture

核心创新:MAP-Elites + LLMs

  • 质量多样性进化:在特征维度上维持多样化的种群
  • 基于岛屿的架构:多个种群防止过早收敛
  • LLM 集成 (Ensemble):多个模型配合智能回退策略
  • 工件侧信道 (Artifact Side-Channel):错误反馈改进后续世代

高级功能

科学可复现性
  • 全面种子设置:每个组件(大语言模型 LLM、数据库、评估)均已进行种子设置
  • 默认种子=42:开箱即用即可立即获得可复现的结果
  • 确定性进化:跨机器运行可实现精确复现
  • 组件隔离:基于哈希的隔离防止交叉污染
高级大语言模型(LLM)集成
  • 通用 API:适用于 OpenAI、Google、本地模型及代理
  • 智能集成(Ensembles):带有复杂回退机制的加权组合
  • 测试时计算(Test-Time Compute):通过代理系统增强推理能力(见 OptiLLM 设置
  • 插件生态系统:支持高级推理插件
进化算法创新
  • 双重选择:针对性能与灵感使用不同的程序
  • 自适应特征维度:自定义质量多样性指标
  • 迁移模式:受控基因流的环状拓扑结构
  • 多策略采样:精英、多样性和探索性选择

适用场景

使用场景 OpenEvolve 为何表现出色
性能优化 发现人类遗漏的硬件特定优化
算法发现 找到经典问题的新颖方法
科学计算 自动化繁琐的手动调优过程
编程竞赛 生成多种解决方案策略
多目标问题 跨维度的帕累托最优(Pareto-optimal)解

🛠 安装与设置

依赖要求

  • Python:3.10+
  • LLM 访问:任何兼容 OpenAI 的 API
  • 可选:Docker 用于容器化运行

安装选项

📦 PyPI(推荐)
pip install openevolve
🔧 开发环境安装
git clone https://github.com/algorithmicsuperintelligence/openevolve.git
cd openevolve
pip install -e ".[dev]"
🐳 Docker
# 拉取镜像
docker pull ghcr.io/algorithmicsuperintelligence/openevolve:latest

# 运行示例
docker run --rm -v $(pwd):/app ghcr.io/algorithmicsuperintelligence/openevolve:latest \
  examples/function_minimization/initial_program.py \
  examples/function_minimization/evaluator.py --iterations 100

成本估算

成本取决于您的 LLM 提供商和迭代次数:

  • o3:每次迭代约 $0.15-0.60(取决于代码大小)
  • o3-mini:每次迭代约 $0.03-0.12(更具成本效益)
  • Gemini-2.5-Pro:每次迭代约 $0.08-0.30
  • Gemini-2.5-Flash:每次迭代约 $0.01-0.05(最快且最便宜)
  • 本地模型:设置后几乎免费
  • OptiLLM:使用更便宜的模型配合测试时计算以获得更好结果

节省成本技巧:

  • 从较少的迭代次数开始(100-200)
  • 使用 o3-mini、Gemini-2.5-Flash 或本地模型进行探索
  • 使用级联评估提前过滤劣质程序
  • 初始配置较小的种群大小

大语言模型提供商设置

OpenEvolve 支持任何兼容 OpenAI 的 API

🔥 OpenAI(直连)
export OPENAI_API_KEY="sk-..."
# 默认使用 OpenAI 端点
🤖 Google Gemini
# config.yaml
llm:
  api_base: "https://generativelanguage.googleapis.com/v1beta/openai/"
  model: "gemini-2.5-pro"
export OPENAI_API_KEY="your-gemini-api-key"
🏠 本地模型(Ollama/vLLM)
# config.yaml
llm:
  api_base: "http://localhost:11434/v1"  # Ollama
  model: "codellama:7b"
⚡ OptiLLM(高级)

为了实现最大灵活性,包括速率限制、模型路由和测试时计算:

# 安装 OptiLLM
pip install optillm

# 启动 OptiLLM 代理
optillm --port 8000

# 将 OpenEvolve 指向 OptiLLM
export OPENAI_API_KEY="your-actual-key"
llm:
  api_base: "http://localhost:8000/v1"
  model: "moa&readurls-o3"  # 测试时计算 + Web 访问

示例画廊

展示项目

项目 领域 成就 演示
函数最小化 优化 随机 → 模拟退火 查看结果
MLX GPU Kernels 硬件 Apple Silicon 优化 基准测试
Rust 自适应排序 算法 数据感知排序 代码进化
符号回归 科学 自动方程发现 LLM-SRBench
Web 爬虫 + OptiLLM AI 集成 测试时计算优化 智能爬取

快速示例:函数最小化

观察 OpenEvolve 从随机搜索进化为复杂的优化算法:

# Initial Program (Random Search)
def minimize_function(func, bounds, max_evals=1000):
    best_x, best_val = None, float('inf')
    for _ in range(max_evals):
        x = random_point_in_bounds(bounds)
        val = func(x)
        if val < best_val:
            best_x, best_val = x, val
    return best_x, best_val

进化过程

# Evolved Program (Simulated Annealing + Adaptive Cooling)
def minimize_function(func, bounds, max_evals=1000):
    x = random_point_in_bounds(bounds)
    temp = adaptive_initial_temperature(func, bounds)
    
    for i in range(max_evals):
        neighbor = generate_neighbor(x, temp, bounds)
        delta = func(neighbor) - func(x)
        
        if delta < 0 or random.random() < exp(-delta/temp):
            x = neighbor
            
        temp *= adaptive_cooling_rate(i, max_evals)  # Dynamic cooling
    
    return x, func(x)

性能:收敛速度提升 100 倍!

高级示例

提示词进化

进化提示词而非代码以获得更好的 LLM 性能。查看 LLM 提示词优化示例 以获取完整的 HotpotQA 案例研究,准确率提升 +23%。

完整示例

🏁 编程竞赛

自动生成解决方案用于编程竞赛:

# Problem: Find maximum subarray sum
# OpenEvolve discovers multiple approaches:

# Evolution Path 1: Brute Force → Kadane's Algorithm

进化路径 2:分治法 → 优化的 Kadane 算法

进化路径 3:动态规划 → 空间优化 DP


[在线判题系统集成](examples/online_judge_programming/)

</details>

## 配置

OpenEvolve 为高级用户提供了广泛的配置选项:

```yaml
# 高级配置示例
max_iterations: 1000
random_seed: 42  # 完全可复现

llm:
  # 集成配置
  models:
    - name: "gemini-2.5-pro"
      weight: 0.6
    - name: "gemini-2.5-flash"
      weight: 0.4
  temperature: 0.7

database:
  # MAP-Elites 质量多样性算法
  population_size: 500
  num_islands: 5  # 并行进化
  migration_interval: 20
  feature_dimensions: ["complexity", "diversity", "performance"]

evaluator:
  enable_artifacts: true      # 向 LLM(大语言模型)提供错误反馈
  cascade_evaluation: true    # 多阶段测试
  use_llm_feedback: true      # AI 代码质量评估

prompt:
  # 复杂的灵感系统
  num_top_programs: 3         # 表现最佳的程序
  num_diverse_programs: 2     # 创造性探索
  include_artifacts: true     # 执行反馈
  
  # 自定义模板
  template_dir: "custom_prompts/"
  use_template_stochasticity: true  # 随机化提示词
🎯 特征工程

控制程序在质量多样性网格中的组织方式:

database:
  feature_dimensions: 
    - "complexity"      # 内置:代码长度
    - "diversity"       # 内置:结构多样性
    - "performance"     # 自定义:来自你的评估器
    - "memory_usage"    # 自定义:来自你的评估器
    
  feature_bins:
    complexity: 10      # 10 个复杂度层级
    performance: 20     # 20 个性能区间
    memory_usage: 15    # 15 个内存使用类别

重要:从评估器返回原始值,OpenEvolve 会自动处理分箱。

🎨 自定义提示词模板

使用自定义模板的高级提示词工程:

prompt:
  template_dir: "custom_templates/"
  use_template_stochasticity: true
  template_variations:
    greeting:
      - "Let's enhance this code:"
      - "Time to optimize:"
      - "Improving the algorithm:"
    improvement_suggestion:
      - "Here's how we could improve this code:"
      - "I suggest the following improvements:"
      - "We can enhance this code by:"

工作原理:在模板中放置 {greeting}{improvement_suggestion} 占位符,OpenEvolve 将在每一代中随机选择变体,为提示词增加多样性。

查看 提示词示例 以获取完整的模板定制说明。

编写有效的系统消息

系统消息是成功进化的关键。 它们指导 LLM(大语言模型)理解你的领域、约束和优化目标。精心设计的系统消息可以决定是产生随机变异还是针对性改进。

为什么系统消息很重要

你的 config.yaml 中的系统消息可以说是进化成功最重要的组件:

  • 领域专业知识:为 LLM 提供关于问题空间的具体知识
  • 约束感知:定义进化过程中可以更改和不可更改的内容
  • 优化重点:引导 LLM 朝向有意义的改进
  • 错误预防:帮助避免常见陷阱和编译错误

迭代创建过程

基于成功的 OpenEvolve 实现,系统消息最好通过迭代创建:

🔄 逐步流程

第一阶段:初始草稿

  1. 从一个描述你目标的基本系统消息开始
  2. 运行 20-50 次进化迭代以观察行为
  3. 记录系统在哪里“卡住”或做出糟糕的选择

第二阶段:细化

  1. 根据观察到的问题添加具体指导
  2. 包含特定领域的术语和概念
  3. 定义清晰的约束和优化目标
  4. 运行另一批迭代

第三阶段:专业化

  1. 添加好坏方法的详细示例
  2. 包含特定的库/框架指导
  3. 添加你观察到的错误避免模式
  4. 根据执行产物反馈进行微调

第四阶段:优化

  1. 考虑使用 OpenEvolve 本身来优化你的提示词
  2. 使用组合分数指标衡量改进

按复杂度分类的示例

简单:通用优化

prompt:
  system_message: |
    You are an expert programmer specializing in optimization algorithms.
    Your task is to improve a function minimization algorithm to find the
    global minimum reliably, escaping local minima that might trap simple algorithms.

中级:特定领域指导

prompt:
  system_message: |
    You are an expert prompt engineer. Your task is to revise prompts for LLMs.

    Your improvements should:
    * Clarify vague instructions and eliminate ambiguity
    * Strengthen alignment between prompt and desired task outcome
    * Improve robustness against edge cases
    * Include formatting instructions and examples where helpful
    * Avoid unnecessary verbosity

    Return only the improved prompt text without explanations.

高级:硬件特定优化

prompt:
  system_message: |
    You are an expert Metal GPU programmer specializing in custom attention
    kernels for Apple Silicon.

    # TARGET: Optimize Metal Kernel for Grouped Query Attention (GQA)
    # HARDWARE: Apple M-series GPUs with unified memory architecture
    # GOAL: 5-15% performance improvement

    # OPTIMIZATION OPPORTUNITIES:
    **1. Memory Access Pattern Optimization:**
    - Coalesced access patterns for Apple Silicon
    - Vectorized loading using SIMD
    - Pre-compute frequently used indices

    **2. Algorithm Fusion:**
    - Combine max finding with score computation
    - Reduce number of passes through data

    # CONSTRAINTS - CRITICAL SAFETY RULES:
    **MUST NOT CHANGE:**
    ❌ Kernel function signature
    ❌ Template parameter names or types
    ❌ Overall algorithm correctness

    **ALLOWED TO OPTIMIZE:**
    ✅ Memory access patterns and indexing
    ✅ Computation order and efficiency
    ✅ Vectorization and SIMD utilization
    ✅ Apple Silicon specific optimizations

最佳实践

🎨 提示词工程模式

结构化你的消息:从角色定义开始 → 定义任务/上下文 → 列出优化机会 → 设置约束 → 成功标准

使用具体示例

# Good: "Focus on reducing memory allocations. Example: Replace `new Vector()` with pre-allocated arrays."
# Avoid: "Make the code faster"

包含领域知识

# Good: "For GPU kernels: 1) Memory coalescing 2) Occupancy 3) Shared memory usage"

避免:“优化算法”


**Set Clear Boundaries:**
```yaml
system_message: |
  MUST NOT CHANGE: ❌ Function signatures ❌ Algorithm correctness ❌ External API
  ALLOWED: ✅ Internal implementation ✅ Data structures ✅ Performance optimizations
🔬 高级技巧

工件 (Artifact) 驱动迭代: 在配置中启用工件 → 在系统消息中包含常见错误模式 → 基于 stderr/警告模式添加指导

多阶段进化: 从广泛开始("探索不同的算法方法"),然后聚焦("鉴于成功的模拟退火,专注于参数调整")

模板随机性: 参见 配置部分 获取完整的模板变体示例。

元进化:使用 OpenEvolve 优化提示词

你可以使用 OpenEvolve 来进化你自己的系统消息! 这种强大的技术让你能够自动优化提示词以获得更好的大语言模型 (LLM) 性能。

参见 LLM 提示词优化示例 以获取完整实现,包括 HotpotQA 案例研究,准确率提升了 +23%。

需要避免的常见陷阱

  • 过于模糊:"让代码更好" → 具体说明"更好"意味着什么
  • 限制过多:过度约束可能会阻止有用的优化
  • 缺少上下文:包含相关的领域知识和术语
  • 缺乏示例:具体的示例比抽象的描述更能引导 LLM
  • 忽略工件:不要根据错误反馈来优化提示词

工件与调试

工件侧信道 (Artifacts side-channel) 提供丰富的反馈以加速进化:

# Evaluator can return execution context
from openevolve.evaluation_result import EvaluationResult

return EvaluationResult(
    metrics={"performance": 0.85, "correctness": 1.0},
    artifacts={
        "stderr": "Warning: suboptimal memory access pattern",
        "profiling_data": {...},
        "llm_feedback": "Code is correct but could use better variable names",
        "build_warnings": ["unused variable x"]
    }
)

下一代提示词将自动包含:

## Previous Execution Feedback
⚠️ Warning: suboptimal memory access pattern
💡 LLM Feedback: Code is correct but could use better variable names
🔧 Build Warnings: unused variable x

这创建了一个反馈循环,其中每一代都从之前的错误中学习!

可视化

实时进化追踪 带有交互式 Web 界面:

# Install visualization dependencies
pip install -r scripts/requirements.txt

# Launch interactive visualizer
python scripts/visualizer.py

# Or visualize specific checkpoint
python scripts/visualizer.py --path examples/function_minimization/openevolve_output/checkpoints/checkpoint_100/

功能:

  • 🌳 进化树 显示父子关系
  • 📈 性能追踪 跨代展示
  • 🔍 代码差异查看器 显示变异
  • 📊 MAP-Elites (网格映射精英算法) 网格 可视化
  • 🎯 多指标分析 带自定义维度

OpenEvolve Visualizer

路线图

🔥 即将推出的功能

  • 多模态进化:图像、音频和文本同时进行
  • 联邦学习:跨多台机器的分布式进化
  • AutoML 集成:超参数和架构进化
  • 基准测试套件:跨领域的标准化评估

🌟 研究方向

  • 自修改提示词:进化修改其自身的提示策略
  • 跨语言进化:Python → Rust → C++ 优化链
  • 神经符号推理:结合神经和符号方法
  • 人机协作:带有人类反馈的交互式进化

想贡献吗?查看我们的 路线图讨论!

常见问题

💰 运行成本是多少?

参见安装与设置部分的 成本估算,了解详细的定价信息和节省成本的技巧。

🆚 与手动优化相比如何?
方面 手动 OpenEvolve
初始学习 数周才能理解领域 几分钟即可开始
解决方案质量 取决于专业知识 持续探索新颖方法
时间投入 每次优化需数天至数周 完整进化仅需数小时
可复现性 难以完全复现过程 通过种子完美复现
扩展性 无法超越人类能力范围扩展 跨岛屿并行进化

OpenEvolve 表现出色 当你需要探索大型解空间或同时优化多个目标时。

🔧 我能使用自己的 LLM 吗?

可以! OpenEvolve 支持任何 OpenAI 兼容 API:

  • 商业:OpenAI, Google, Cohere
  • 本地:Ollama, vLLM, LM Studio, text-generation-webui
  • 高级:OptiLLM 用于路由和测试时计算

只需在配置中设置 api_base 指向你的端点。

🚨 如果进化停滞怎么办?

内置机制可防止停滞:

  • 岛屿迁移 (Island migration):来自其他种群的新鲜基因
  • 温度控制 (Temperature control):探索与利用的平衡
  • 多样性维护:MAP-Elites 防止收敛
  • 工件反馈:错误消息指导改进
  • 模板随机性:随机化提示词打破模式

手动干预:

  • 增加 num_diverse_programs 以增加探索
  • 添加自定义特征维度以多样化搜索
  • 使用模板变体随机化提示词
  • 调整迁移间隔以增加交叉融合
📈 我如何衡量成功?

多种成功指标:

  1. 主要指标:评估器的 combined_score 或指标平均值
  2. 收敛:随时间推移的最佳分数提升
  3. 多样性:MAP-Elites 网格覆盖率
  4. 效率:达到目标性能的迭代次数
  5. 鲁棒性:不同测试用例的性能

使用可视化器 实时跟踪所有指标并识别进化何时已收敛。

贡献者

感谢所有让 OpenEvolve 成为可能的杰出贡献者!

贡献指南

我们欢迎贡献!以下是开始步骤:

  1. 🍴 Fork(仓库分叉) 该仓库
  2. 🌿 创建你的功能分支:git checkout -b feat-amazing-feature
  3. 添加你的更改和测试
  4. 测试所有内容:python -m unittest discover tests
  5. 📝 Commit(提交) 附带清晰的信息
  6. 🚀 Push(推送) 并创建 Pull Request(拉取请求)

开源新手? 请查看我们的 贡献指南,并寻找 good-first-issue 标签!

学术与研究

关于 OpenEvolve 的文章与博客

引用

如果你在研究中使用 OpenEvolve,请引用:

@software{openevolve,
  title = {OpenEvolve: an open-source evolutionary coding agent},
  author = {Asankhaya Sharma},
  year = {2025},
  publisher = {GitHub},
  url = {https://github.com/algorithmicsuperintelligence/openevolve}
}

🚀 准备好进化你的代码了吗?

由 OpenEvolve 社区维护

如果 OpenEvolve 帮助你发现了突破性算法,请考虑为此仓库点亮星标。

版本历史

v0.2.272026/03/18
v0.2.262026/01/28
v0.2.252025/12/23
v0.2.242025/12/18
v0.2.232025/12/11
v0.2.222025/11/26
v0.2.212025/11/25
v0.2.202025/11/18
v0.2.192025/11/01
v0.2.182025/10/13
v0.2.172025/10/07
v0.2.162025/10/05
v0.2.152025/09/16
v0.2.142025/09/14
v0.2.132025/09/06
v0.2.122025/09/04
v0.2.112025/08/30
v0.2.102025/08/30
v0.2.92025/08/29
v0.2.82025/08/26

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|5天前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|6天前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

150k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|昨天
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|昨天
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|4天前
插件开发框架