Преобразует скриншоты, макеты, дизайны Figma и записи экрана в код интерфейса на HTML, Tailwind, React, Vue и других технологиях с помощью AI-моделей.
algorithmicsuperintelligence/openevolve
Эволюционный агент для генерации кода с открытым исходным кодом: он итеративно изменяет и оценивает программы с помощью LLM, чтобы находить более эффективные алгоритмы, реализуя подход AlphaEvolve.
- Звёзды
- 7,603
- Форки
- 1,190
- Открытые issues
- 95
- Последний коммит
- 15 часов назад
Что это?
OpenEvolve запускает эволюционный цикл над исходным кодом: LLM предлагает изменения программы, написанный вами оценщик проверяет каждый вариант, а лучшие варианты переходят в следующий раунд. Программы хранятся в сетке MAP-Elites, которая сочетает качество и разнообразие, на нескольких островах. Благодаря этому поиск сохраняет разные решения, а не сходится к одному локальному оптимуму. Подход предназначен для задач, где корректность и производительность можно измерить скриптом: например, минимизации функции, упаковки кругов, настройки GPU-ядер или алгоритмов сортировки.
Проект можно установить из PyPI или запустить в Docker, а также вызывать как библиотеку Python с помощью функций вроде run_evolution и evolve_function. В качестве бэкенда для LLM подойдёт любой API, совместимый с OpenAI, включая Gemini, OpenAI и локальные серверы, например Ollama и vLLM. Можно задавать веса для ансамблей моделей. Также доступны бэкенды Claude Code CLI и Codex app-server — для тех, у кого нет API-ключа. Настройки задаются в YAML: можно указать начальные варианты, включить каскадную оценку, передавать модели артефакты с ошибками и использовать собственные шаблоны промптов.
В репозитории есть примеры на Python, Rust, R и шейдерах Metal, а также визуализатор дерева эволюции и сетки MAP-Elites. Если зафиксировать seed, результаты будут воспроизводимыми; во время запусков сохраняются контрольные точки.
Ключевые возможности
- 01Эволюционирует код: LLM предлагает изменения, а оценщик, написанный пользователем, оценивает варианты.
- 02Использует сетки MAP-Elites для поиска решений с разными сочетаниями качества и разнообразия на нескольких островах.
- 03Работает с любым API, совместимым с OpenAI, а также с локальными моделями и бэкендами Claude Code или Codex CLI.
- 04Поддерживает взвешенные ансамбли LLM и каскадную оценку, которая позволяет отсеивать слабые варианты на раннем этапе.
- 05Предоставляет интерфейс библиотеки Python и CLI; доступны образы Docker.
- 06Включает визуализатор деревьев эволюции и сеток MAP-Elites.
Сценарии использования
- Настройка численных функций или ядер, производительность которых можно автоматически измерить.
- Поиск более эффективных конструктивных решений математических задач, например упаковки кругов.
- Эволюционная доработка промптов или небольших программ по результатам измеримых тестов.
- Эксперименты с поиском алгоритмов на основе LLM и локальных моделей.
Быстрый старт
- 1
Установите OpenEvolve из PyPI
pip install openevolve - 2
Настройте ключ API LLM (в примере по умолчанию используется Google Gemini; получите ключ в Google AI Studio)
export OPENAI_API_KEY="your-gemini-api-key" - 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, которая может накапливаться при большом количестве итераций.
- Для запусков эволюции требуется API LLM, совместимый с OpenAI, или CLI Claude Code, поэтому необходимо предоставить доступ к модели.
Темы
Частые вопросы
- Что такое openevolve?
- Эволюционный агент для генерации кода с открытым исходным кодом: он итеративно изменяет и оценивает программы с помощью LLM, чтобы находить более эффективные алгоритмы, реализуя подход AlphaEvolve. OpenEvolve запускает эволюционный цикл над исходным кодом: LLM предлагает изменения программы, написанный вами оценщик проверяет каждый вариант, а лучшие варианты переходят в следующий раунд. Программы хранятся в сетке MAP-Elites, которая сочетает качество и разнообразие, на нескольких островах. Благодаря этому поиск сохраняет разные решения, а не сходится к одному локальному оптимуму. Подход предназначен для задач, где корректность и производительность можно измерить скриптом: например, минимизации функции, упаковки кругов, настройки GPU-ядер или алгоритмов сортировки.
- openevolve можно использовать бесплатно? Какая у него лицензия?
- openevolve распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- openevolve всё ещё поддерживается?
- Активно поддерживается. Последний коммит в openevolve — 19 окт. 2026 г..
- Для чего можно использовать openevolve?
- Настройка численных функций или ядер, производительность которых можно автоматически измерить. Поиск более эффективных конструктивных решений математических задач, например упаковки кругов. Эволюционная доработка промптов или небольших программ по результатам измеримых тестов. Эксперименты с поиском алгоритмов на основе LLM и локальных моделей.
- Как установить openevolve?
- Установите OpenEvolve из PyPI: pip install openevolve Настройте ключ API LLM (в примере по умолчанию используется 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
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Открытый self-improving agent harness для задач с заданным результатом — например, отчётов, разбора почты и интеграций; работает в терминале с любой LLM.
Единый фреймворк для эффективной тонкой настройки более 100 LLM и VLM через CLI и веб-интерфейс без написания кода.
Преобразует Git-репозиторий или локальную папку в единый текстовый дайджест, удобный для передачи LLM.
Эталонная реализация NLWeb на Python — протокола и набора инструментов для добавления на сайты разговорных интерфейсов на естественном языке с поддержкой клиентов MCP.
Apache Maka (Incubating) — рабочее пространство для агентов с интерфейсами Desktop, TUI и CLI, которое записывает каждое сообщение модели, вызов инструмента и решение о разрешении в журнал событий только для добавления.