Convierte capturas de pantalla, maquetas, diseños de Figma y grabaciones de pantalla en código de front-end con HTML, Tailwind, React, Vue y otros formatos mediante modelos de IA.
algorithmicsuperintelligence/openevolve
Agente de programación evolutiva de código abierto que usa LLM para modificar y evaluar código de forma iterativa, con el objetivo de descubrir mejores algoritmos mediante el enfoque AlphaEvolve.
- Estrellas
- 7,603
- Forks
- 1,190
- Issues abiertos
- 95
- Último commit
- hace 16 horas
¿Qué es?
OpenEvolve ejecuta un ciclo evolutivo sobre código fuente: un LLM propone cambios a un programa, un evaluador que tú escribes puntúa cada candidato y los mejores pasan a la siguiente ronda. Los programas se almacenan en una cuadrícula MAP-Elites de diversidad y calidad, distribuida entre varias islas, para mantener soluciones variadas en lugar de converger en un único óptimo local. Está pensado para problemas cuya corrección y rendimiento puedan medirse con un script, como la minimización de funciones, el empaquetamiento de círculos, el ajuste de kernels para GPU o los algoritmos de ordenamiento.
El proyecto se puede instalar desde PyPI o ejecutar en Docker, y también se puede usar como biblioteca de Python mediante funciones como run_evolution y evolve_function. Cualquier API compatible con OpenAI sirve como backend de LLM, incluidos Gemini, OpenAI y servidores locales como Ollama y vLLM. Se pueden asignar pesos a conjuntos de modelos, y hay un backend para Claude Code CLI o Codex app-server para quienes no tengan una clave de API. La configuración se realiza en YAML e incluye opciones para usar semillas, evaluar en cascada, devolver al modelo artefactos de error y definir plantillas de prompts personalizadas.
El repositorio incluye ejemplos en Python, Rust, R y shaders de Metal, además de un visualizador del árbol de evolución y de la cuadrícula MAP-Elites. Los resultados son reproducibles si se fijan las semillas, y durante las ejecuciones se guardan puntos de control.
Funciones clave
- 01Evoluciona código mediante mutaciones propuestas por un LLM y puntuadas por un evaluador escrito por el usuario.
- 02Usa cuadrículas MAP-Elites de diversidad y calidad en varias islas para mantener poblaciones diversas.
- 03Funciona con cualquier API compatible con OpenAI, además de modelos locales y backends de Claude Code o Codex CLI.
- 04Admite conjuntos de LLM con pesos y evaluación en cascada para filtrar pronto los candidatos de bajo rendimiento.
- 05Ofrece una interfaz de biblioteca de Python y una CLI, además de imágenes de Docker.
- 06Incluye un visualizador de árboles de evolución y cuadrículas MAP-Elites.
Casos de uso
- Ajustar una rutina numérica o un kernel cuyo rendimiento pueda medirse automáticamente.
- Buscar soluciones constructivas mejoradas para problemas matemáticos, como el empaquetamiento de círculos.
- Evolucionar prompts o programas pequeños frente a un conjunto de pruebas medible.
- Experimentar con el descubrimiento de algoritmos mediante LLM en modelos locales.
Inicio rápido
- 1
Instala OpenEvolve desde PyPI
pip install openevolve - 2
Configura tu clave de API de LLM (el ejemplo usa Google Gemini de forma predeterminada; obtén una clave en Google AI Studio)
export OPENAI_API_KEY="your-gemini-api-key" - 3
Ejecuta el primer ejemplo de evolución
python openevolve-run.py examples/function_minimization/initial_program.py examples/function_minimization/evaluator.py --config examples/function_minimization/config.yaml --iterations 50
Antes de usarlo
- Cada iteración llama a un LLM, por lo que las ejecuciones generan costes de API que pueden acumularse tras muchas iteraciones.
- Las ejecuciones de evolución necesitan una API de LLM compatible con OpenAI o la CLI de Claude Code, así que debes proporcionar acceso a un modelo.
Temas
Preguntas frecuentes
- ¿Qué es openevolve?
- Agente de programación evolutiva de código abierto que usa LLM para modificar y evaluar código de forma iterativa, con el objetivo de descubrir mejores algoritmos mediante el enfoque AlphaEvolve. OpenEvolve ejecuta un ciclo evolutivo sobre código fuente: un LLM propone cambios a un programa, un evaluador que tú escribes puntúa cada candidato y los mejores pasan a la siguiente ronda. Los programas se almacenan en una cuadrícula MAP-Elites de diversidad y calidad, distribuida entre varias islas, para mantener soluciones variadas en lugar de converger en un único óptimo local. Está pensado para problemas cuya corrección y rendimiento puedan medirse con un script, como la minimización de funciones, el empaquetamiento de círculos, el ajuste de kernels para GPU o los algoritmos de ordenamiento.
- ¿openevolve es gratuito? ¿Qué licencia tiene?
- openevolve es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿openevolve sigue mantenido?
- Mantenimiento activo. El último commit de openevolve fue el 19 oct 2026.
- ¿Para qué puedo usar openevolve?
- Ajustar una rutina numérica o un kernel cuyo rendimiento pueda medirse automáticamente. Buscar soluciones constructivas mejoradas para problemas matemáticos, como el empaquetamiento de círculos. Evolucionar prompts o programas pequeños frente a un conjunto de pruebas medible. Experimentar con el descubrimiento de algoritmos mediante LLM en modelos locales.
- ¿Cómo se instala openevolve?
- Instala OpenEvolve desde PyPI: pip install openevolve Configura tu clave de API de LLM (el ejemplo usa Google Gemini de forma predeterminada; obtén una clave en Google AI Studio): export OPENAI_API_KEY="your-gemini-api-key" Ejecuta el primer ejemplo de evolución: python openevolve-run.py examples/function_minimization/initial_program.py examples/function_minimization/evaluator.py --config examples/function_minimization/config.yaml --iterations 50
- ¿Dónde consigo openevolve?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/algorithmicsuperintelligence/openevolve
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Entorno de ejecución open source para agentes que mejoran por sí mismos, capaz de realizar tareas basadas en resultados y ejecutarse en una terminal con cualquier LLM.
Infraestructura de memoria nativa para agentes que convierte las conversaciones y ejecuciones de agentes LLM en memoria persistente y estructurada para aplicaciones Python y TypeScript.
Plataforma empresarial de flujos de trabajo con agentes para crear y ejecutar agentes de IA, con gestión de modelos, integración de herramientas MCP y automatización RPA.
SDK de Python para crear agentes sobre Claude Code, con query(), un cliente interactivo, herramientas personalizadas en proceso y hooks.
Asistente de IA de escritorio que entiende el contexto de la app activa y usa varios LLM y herramientas MCP para ayudarte a trabajar en distintas apps.