Как создать своего помощника по написанию кода: быстрый результат и избегание ошибок

 Creating your own code writing agent. How to get results fast and avoid the most common pitfalls

“`html





Creating your own code writing agent

Ваш персональный агент по написанию кода: оптимизация и эволюция

В этом блог-посте мы расскажем о нашем пути создания агента по написанию кода на основе LLM с нуля – настроенного под ваши потребности и процессы, и поделимся опытом по его итеративному улучшению.

Введение

Эта статья является второй частью в нашей серии о Кодирующих Агентах. Первая часть предоставляет подробный обзор существующих решений, изучая их уникальные особенности и врожденные ограничения. Мы рекомендуем начать с неё, чтобы получить полную картину.

Оценка

Для измерения и сравнения нашего открытого AI агента и других мы подготовили набор бенчмарк-задач. Мы оценили агенты по написанию кода на семи проектах по маломасштабной науке о данных, включая задачи, такие как:

  • Обнаружение номеров автомобилей на изображении (CV)
  • Суммирование текста (NLP)
  • Классификация жанров на Spotify (табличные данные)

Однажды агенты завершили свои задачи, мы оценили результаты проектов, которые они сгенерировали. Оценка проводилась в два этапа:

  1. Мы оценили количественные аспекты, такие как:
    • Может ли код быть выполнен без каких-либо проблем/сбоев.
    • Стоимость генерации кода и время, затраченное на это.
  2. Затем мы провели человеческий обзор для оценки:
    • Количества и сложности работы, необходимой для выполнения сгенерированного кода или исправления каких-либо проблем.
    • Является ли решение разумным, полным и полностью решает проблему.
    • Стиль кода, чтобы убедиться, что он соответствует лучшим практикам.

Выводы

Мы выявили MetaGPT и 3-ю итерацию нашего подхода A как лучших исполнителей в создании высококачественного кода, с небольшим отставанием GPT Engineer.

Наше решение блестит в планировании благодаря эффективной подготовке запросов с небольшим числом примеров. План надежен, обеспечивая модель постоянно производит правильный JSON, что другие решения не всегда могут гарантировать. В некоторых случаях другие агенты изначально терпели неудачи уже на этапе планирования. Более того, создание предварительных условий обогащает план полезным контекстом.

В плане эффективности затрат наша модель не справилась так хорошо, как GPT Engineer и MetaGPT, с относительно незначительной разницей (всё же мы имеем дело с очень небольшими цифрами).

Лимитации

Хотя AI агенты проявляют удивительную автономию в выполнении задач по кодированию, у них все же есть несколько ограничений, включая недостаточно точный выбор оптимального инструмента для задачи, приводящий к сбоям в решении проблем; несовершенства существующих реализаций памяти в агентах, особенно в предоставлении обширной информации LLM из-за ограниченной длины контекста; трудности при столкновении с вариациями или нестандартными форматами данных.

Извлеченные уроки

Мы хотим поделиться некоторыми нашими идеями и полезными трюками, которые мы узнали из наших экспериментов, и которые могут быть вам полезны при экспериментировании с вашими собственными AI агентами.

  • GPT-4 – лучшая модель для генерации кода, но также одна из самых дорогих.
  • Специализация превосходит обобщение – попробуйте использовать специализированные роли в вашем агенте: рецензент кода, писатель кода, менеджер проекта и т.д.
  • Структурированные ответы лучше обычного текста: некоторые проблемы легче/намного дешевле, когда просто реализованы в коде.

Узнайте, как ИИ может изменить ваши процессы с решениями от AI Lab itinai.ru. Будущее уже здесь!



“`

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