Принстонский университет выпустил первый в мире SWE-агент для ИИ-программатора с открытым исходным кодом, который основан на технологии GPT-4 и умеет автоматически исправлять ошибки в репозиториях GitHub. SWE-агент хорошо показал себя на тестовом наборе SWE-стенда, успешно решив 12,29% задач, затрачивая в среднем всего 93 секунды и имея точность, сравнимую с существующими AI-программистами. Открытый исходный код позволил ему быстро привлечь к себе большое внимание, продемонстрировав огромный потенциал ИИ в области разработки программного обеспечения. В этой статье мы углубимся в принцип работы, производительность и влияние SWE-агента на будущую разработку программного обеспечения.
Принстонский университет недавно запустил программу для ИИ под названием SWE-agent, которая является первой в мире программой для ИИ с открытым исходным кодом. Она основана на технологии GPT-4 и может автоматически исправлять ошибки в репозиториях GitHub. Рождение этого интерфейса агент-компьютер знаменует собой важный шаг в применении ИИ в области разработки программного обеспечения. Производительность SWE-агента на тестовом наборе SWE-bench впечатляет. Он успешно решил 12,29% задач, затрачивая в среднем всего 93 секунды, а его точность была сопоставима с ранее запущенным AI-программатором Devin. Открытый исходный код SWE-агента означает, что он быстро получил 1,6 тыс. звезд и 109 форков на GitHub, что свидетельствует о высоком признании и интересе сообщества открытого исходного кода к этой технологии. SWE-агент работает путем взаимодействия со специализированным терминалом, который может открывать, прокручивать и искать файлы, редактировать определенные строки и автоматически выполнять проверку синтаксиса, писать и выполнять тесты. Этот дизайн похож на пользовательский интерфейс, предназначенный для людей, который предотвращает ошибки и обеспечивает обратную связь. Например, при работе с ошибкой работы матрицы SWE-агент может воспроизвести проблему, найти код проблемы, внести изменения и успешно решить проблему. Исследователи Принстонского университета разработали краткий формат инструкций и обратной связи для SWE-агента, упрощающий для модели просмотр репозитория кода, просмотр, редактирование и запуск файлов кода. Рабочий процесс SWE-агента разделен на два этапа: рассуждение и оценка. На этапе обоснования SWE-агент обрабатывает проблемы на GitHub и генерирует решения по исправлению, на этапе оценки он подтверждает, действительно ли решение решает проблему. Основные авторы этого исследования, Джон Янг и Карлос Э. Хименес, являются научными сотрудниками и аспирантами Принстонского университета. Их исследовательские интересы сосредоточены на основах языка, взаимодействии, сравнительном анализе LLM, разработке программного обеспечения и генерации кода. Их работа демонстрирует потенциал ИИ в области разработки программного обеспечения и заставляет задуматься о роли и возможностях ИИ и человека в процессе разработки. С развитием технологий ИИ мы стали свидетелями прогресса ИИ в области программирования. Они могут не только планировать и выполнять сложные инженерные задачи, но также исправлять ошибки и нести ответственность за весь процесс разработки проекта. Однако, несмотря на прогресс, достигнутый ИИ в написании безопасного кода, контроль со стороны человека остается критически важным. Хотя развитие ИИ еще не достигло стадии полной замены инженеров-программистов, оно меняет облик и будущее направление технологической области. Этот программист искусственного интеллекта с открытым исходным кодом из команды Принстона не только открывает новые перспективы исследований и приложений в области разработки программного обеспечения, но также дает нам возможность подумать о сотрудничестве между искусственным интеллектом и людьми для создания будущего. Поскольку технологии продолжают развиваться, мы можем увидеть, что ИИ играет еще более важную роль в области разработки программного обеспечения.Появление SWE-агента знаменует собой новую веху в программировании с использованием искусственного интеллекта. Хотя человеческий контроль все еще необходим, его потенциал в повышении эффективности разработки и качества кода нельзя игнорировать. В будущем совместное сотрудничество между ИИ и программистами-людьми станет основной тенденцией в области разработки программного обеспечения, совместно способствуя технологическому прогрессу.