Гиперагент: универсальные агенты программной инженерии для решения задач кодирования в масштабе
HyperAgent: Generalist Software Engineering Agents to Solve Coding Tasks at Scale
September 9, 2024
Авторы: Huy Nhat Phan, Phong X. Nguyen, Nghi D. Q. Bui
cs.AI
Аннотация
Большие языковые модели (LLM) революционизировали инженерию программного обеспечения (SE), проявив замечательные способности в различных задачах кодирования. В то время как недавние усилия привели к созданию автономных программных агентов на основе LLM для задач разработки end-to-end, эти системы обычно разрабатываются для конкретных задач SE. Мы представляем HyperAgent, новую общую мультиагентную систему, разработанную для решения широкого спектра задач SE на различных языках программирования путем имитации рабочих процессов человеческих разработчиков. Включая четыре специализированных агента - Планировщик, Навигатор, Редактор кода и Исполнитель. HyperAgent управляет полным жизненным циклом задач SE, от начальной концепции до окончательной верификации. Через обширные оценки HyperAgent достигает передового уровня производительности в различных задачах SE: он достигает успеха на уровне 25.01% в SWE-Bench-Lite и 31.40% в SWE-Bench-Verified для разрешения проблем GitHub, превзойдя существующие методы. Более того, HyperAgent демонстрирует передовую производительность в генерации кода на уровне репозитория (RepoExec), а также в локализации ошибок и исправлении программ (Defects4J), часто превосходя специализированные системы. Эта работа представляет собой значительный прогресс в направлении универсальных, автономных агентов, способных обрабатывать сложные, многоэтапные задачи SE в различных областях и языках, что потенциально изменит практики разработки программного обеспечения с помощью искусственного интеллекта.
English
Large Language Models (LLMs) have revolutionized software engineering (SE),
demonstrating remarkable capabilities in various coding tasks. While recent
efforts have produced autonomous software agents based on LLMs for end-to-end
development tasks, these systems are typically designed for specific SE tasks.
We introduce HyperAgent, a novel generalist multi-agent system designed to
address a wide spectrum of SE tasks across different programming languages by
mimicking human developers' workflows. Comprising four specialized agents -
Planner, Navigator, Code Editor, and Executor. HyperAgent manages the full
lifecycle of SE tasks, from initial conception to final verification. Through
extensive evaluations, HyperAgent achieves state-of-the-art performance across
diverse SE tasks: it attains a 25.01% success rate on SWE-Bench-Lite and 31.40%
on SWE-Bench-Verified for GitHub issue resolution, surpassing existing methods.
Furthermore, HyperAgent demonstrates SOTA performance in repository-level code
generation (RepoExec), and in fault localization and program repair
(Defects4J), often outperforming specialized systems. This work represents a
significant advancement towards versatile, autonomous agents capable of
handling complex, multi-step SE tasks across various domains and languages,
potentially transforming AI-assisted software development practices.Summary
AI-Generated Summary