Инженеры из Stripe представили Minions — автономные кодовые агенты, которые в состоянии завершать задания по разработке программного обеспечения от начала и до конца, выполняя это с минимальным участием человека. Теперь Minions генерируют более 1300 запросов на изменения в неделю, увеличив этот объем по сравнению с 1000 во время предыдущих испытаний.
Появление автономных агентов
Система Minions использует большие языковые модели (LLM) и внутренние разработки компании для создания готовых к производству запросов на изменения. Все изменения проверяются людьми, однако код, сгенерированный Minions, не содержит написанного вручную кода. Это важно для управления более чем 1 триллионом долларов в год, которые проходят через платежи Stripe, обеспечивая надежность и соответствие требованиям финансовых учреждений и регуляторов.
Как работают Minions
Minions отличаются от интерактивных помощников, таких как GitHub Copilot, тем, что они способны выполнять задачи от начала до конца. Задания могут поступать из различных источников — от сообщений в Slack до отчетов об ошибках. Описание задачи передается Minion, который организует работу, используя стандартизированные схемы и гибкие циклы агентов для генерации необходимого кода, тестов и документации.
Система Minions была основана на внутреннем форке Goose, одного из первых широко используемых кодовых агентов, разработанного Block. При этом команды Stripe адаптировали технологию под свои нужды, что позволяет agents выполнять хорошо определенные задачи, такие как изменения конфигурации и обновления зависимостей, с высокой эффективностью.
Практическое значение для разработчиков
Агентная природа Minions открывает новые горизонты для автоматизации разработки и может значительно повысить производительность разработчиков. Это также подчеркивает текущую тенденцию в разработке программного обеспечения, когда LLM-агенты интегрируются в среды разработки и процессы CI/CD, позволяя создавать качественный код с минимальным контролем.
Следующим шагом будет дальнейшее совершенствование их алгоритмов для увеличения объема автоматизации и расширение спектра выполняемых задач.