FPT Software AI Center представляет AgileCoder: многоагентная система для создания сложного программного обеспечения, превосходящая MetaGPT и ChatDev

 Researchers at FPT Software AI Center Introduce AgileCoder: A Multi-Agent System for Generating Complex Software, Surpassing MetaGPT and ChatDev

“`html

Введение:

Code Large Language Models (CodeLLMs) продемонстрировали удивительную профессиональную компетентность в создании кода. Однако они испытывают трудности с выполнением сложных инженерных задач, таких как разработка полной программной системы на основе сложных спецификаций. Недавние работы, включая ChatDev и MetaGPT, представили мультиагентные фреймворки для разработки программного обеспечения, где агенты сотрудничают для достижения сложных целей. Однако они склонны слишком упрощать сложную природу разработки программного обеспечения в реальном мире, где программное обеспечение постоянно развивается и улучшается.

Внедрение AgileCoder:

В этой работе команда исследователей из FPT Software AI Center предлагает AgileCoder, новый фреймворк, который имитирует сложный процесс разработки программного обеспечения в реальном мире, черпая вдохновение из Agile методологии, широко используемого подхода в профессиональных командах разработки программного обеспечения. Примерно 70% профессиональных команд используют Agile методологию, которая лучше всего подходит для разработки программного обеспечения в реальном мире. AgileCoder основан на ключевом концепте Agile: программное обеспечение постоянно развивается со временем, и поэтому разработка должна быть структурирована в виде спринтов (фаз).

Роли агентов и сотрудничество:

AgileCoder состоит из нескольких агентов, играющих разные роли: менеджер проекта, скрам-мастер, разработчик, старший разработчик и тестировщик. Эти агенты сотрудничают в течение спринтов для выполнения пользовательских задач в соответствии с Agile методологией. Адаптируя рабочие процессы Agile к мультиагентному фреймворку, AgileCoder подчеркивает динамичную адаптивность и итеративную разработку. Результаты и проблемы предыдущих спринтов наследуются и улучшаются в последующих спринтах, что увеличивает вероятность успеха конечных продуктов.

Генератор динамического кодового графа:

Ключевым новшеством в AgileCoder является генератор динамического кодового графа, который создает граф зависимостей кода (CDG), моделирующий отношения между файлами кода и обновляющийся при изменениях исходного кода. CDG играет решающую роль в формировании рациональных планов тестирования и обеспечении эффективного извлечения кода. Он служит надежным источником для агентов для получения соответствующей и достаточной информации, помогая избежать включения несущественной информации в подсказках.

Оценка и результаты:

Комплексные оценки на бенчмарках, таких как HumanEval, MBPP и ProjectDev, демонстрируют превосходную производительность AgileCoder. На HumanEval и MBPP, которые включают простые проблемы программирования на конкурентном уровне, AgileCoder значительно превосходит CodeLLMs и передовые мультиагентные фреймворки, такие как ChatDev и MetaGPT. Для оценки производительности в более сложных требованиях команда создала набор данных под названием ProjectDev, содержащий требования из реальных проектов программного обеспечения. Результаты оценки показывают, что AgileCoder более эффективен, чем другие базовые варианты в создании программного обеспечения на основе таких сложных требований.

Заключение:

AgileCoder – новый мультиагентный фреймворк разработки программного обеспечения, вдохновленный Agile методологией. Его ключевое новшество, генератор динамического кодового графа, создает граф зависимостей кода, который отражает развивающиеся отношения между кодом для разработки планов тестирования и обеспечения эффективного извлечения кода. Следуя Agile методологии, AgileCoder лучше отражает рабочие процессы реальной разработки программного обеспечения и поддерживает динамичную адаптивность и итеративную разработку. Обширные оценки показывают превосходство AgileCoder над существующими методами, такими как ChatDev и MetaGPT, делая его многообещающим подходом для выполнения сложных задач разработки программного обеспечения с использованием CodeLLMs.

Проверьте статью и GitHub. Вся заслуга за это исследование принадлежит исследователям этого проекта. Также не забудьте подписаться на наш Twitter и присоединиться к нашему Telegram-каналу и группе LinkedIn. Если вам нравится наша работа, вам понравится наша рассылка.

Не забудьте присоединиться к нашему 48k+ ML SubReddit

Найдите предстоящие вебинары по искусственному интеллекту здесь.

Этот пост был опубликован на MarkTechPost.

“`

Полезные ссылки: