princeton-nlp/SWE-agent

SWE-agent берет задачу с GitHub и пытается автоматически её исправить, используя выбранную вами LLM. Также может применяться для кибербезопасности или решения задач по программированию. [NeurIPS 2024]

Агенты⭐ 20 374Pythonпоследний релиз: v1.1.0
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

SWE-agent — это автономный AI-агент, который самостоятельно анализирует GitHub-задачи и вносит исправления в код, используя выбранные языковые модели.

Зачем нужен

Инструмент автоматизирует процесс исправления багов и реализации фич в репозиториях, снижая нагрузку на разработчиков. Он полезен для ускорения разработки, автоматизации рутинных задач по коду и проведения исследований в области автономных AI-систем.

Что можно реализовать

  • Автоматическое исправление багов в реальных GitHub-репозиториях на основе описания issues.
  • Поиск уязвимостей безопасности и решение задач кибербезопасности (offensive cybersecurity/CTF).
  • Решение конкурсных задач по программированию (competitive coding challenges).
  • Исследование и бенчмаркинг производительности LLM в задачах работы с кодом (SWE-bench).
  • Настройка кастомных AI-агентов для выполнения специфических задач через конфигурацию YAML.

Ключевые возможности

  • State of the art на SWE-bench среди open-source проектов.
  • Гибкая архитектура: максимальная автономия предоставляется выбранной LLM (GPT-4o, Claude Sonnet 4 и др.).
  • Простая конфигурация через единый YAML-файл.
  • Активная разработка и поддержка от исследователей Princeton и Stanford.
  • Наличие упрощенной версии mini-SWE-Agent, которая показывает сопоставимые результаты при меньшем объеме кода.

👤 Кому подойдёт: Исследователи в области AI, разработчики, интересующиеся автономными агентами, и специалисты по кибербезопасности.

Релизы

v1.1.0majorbreaking
🕐 16 мес назад · релиз на GitHub ↗

Выпуск v1.1.0: запуск SWE-smith для генерации данных, поддержка SWE-bench multilingual/multimodal и ряд ломающих изменений в API.

  • Added: Представлен проект SWE-smith для генерации десятков тысяч траекторий обучения; модель SWE-agent-LM-32b достигла SotA на SWE-bench.
  • Added: Добавлена поддержка мультиязычной и мультимодальной оценки в SWE-bench, а также утилита quick-stats.
  • Breaking: Формат данных траекторий изменен: поле messages заменено на query.
  • Breaking: Переименованы бандлы инструментов с «windowed» просмотром файлов; удален бандл review_on_submit (заменен на review_on_submit_m).
  • Fixed: Исправлена работа с путями в Windows, добавлена совместимость с textual 2.0 и улучшена обработка ошибок парсинга JSON.