📝 Впечатления от ИИ агентов для написания кода и тестов


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

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

ИИ агентом у меня был Codex от ChatGPT.

Раньше я писал в чатике ChatGPT свои запросы по тому, что хотел бы добавить на сайт, затем копировал ответ, вставлял его в код и смотрел, работает или нет. Получалось много рутины, и у ИИ не всегда был полный контекст проекта.

С ИИ агентами же такой рутины стало меньше.

Задаешь агенту правила. Затем пишешь задачу, что нужно разработать. И наблюдаешь за магией, как Codex в редакторе кода изучает файлы проекта и выдает изменения с новым функционалом с учетом нюансов проекта.

Также можно попросить агента запускать тесты и проверять, чтобы новый код не ломал существующую логику. Если ломает, то агент сам это исправляет.

Кроме тестов в коде, есть еще и тесты в браузере, так называемые UI тесты / e2e тесты / сквозные тесты. Обычно такие тесты пишут тестировщики-автоматизаторы. Автоматизированный тест открывает браузер, нажимает кнопки, заполняет поля и выполняет проверки.

Не секрет, что на каком-то этапе моего пути в IT я сам создавал такие автоматизированные тесты как часть своей работы. Тогда, конечно, никаких ИИ не было, и написание таких тестов могло быть времязатратным занятием, особенно при незрелой архитектуре автоматизации. Но для качества проекта в целом такие тесты - это всегда полезно.

Когда Codex выдал мне набор автоматизированных тестов, которые, к слову, были весьма неплохо написаны, я немного опешил. У ИИ агента это заняло 8 минут. Да, я понимаю, что мой сайт не что-то сложное, но тем не менее.

Совершенно другой уровень осознания действительности, когда то, что ты раньше делал кропотливо руками в коде, теперь может делать ИИ агент за меньшее время прямо у тебя на глазах.

Не говоря уже о том, что ИИ сам себя проверяет и исправляет код, когда нужно.

Все равно, как бы ИИ ни создавал ощущение магии, человеческий взгляд все еще нужен для подтверждения адекватности результата. К слову, в первой пачке UI тестов некоторые сценарии были слабыми логически, и пришлось указать агенту на это, подсказав, что лучше тестировать.

Опять же, мой сайт относительно простенький. Размер проекта около 200 файлов. С такими объемами ИИ пока справляется.

С проектами на порядки сложнее, скорее всего, начнут сказываться ограничения размера контекста ИИ. А именно, сколько файлов проекта и какого объема он способен держать “в уме” одновременно, чтобы учитывать все нюансы и давать действительно верный результат.

Прогресс технологий даже в небольших масштабах впечатляет. И неудивительно - инвестиции исторически колоссальные.

Будут ли эти технологии масштабироваться для по-настоящему сложных приложений? Трудно сказать.

Особенно когда постепенно начинает вырисовываться реальная цена использования ИИ.

Компании начинают заменять субсидированные демо-подписки на модель ценообразования на основе использования. Другими словами, сколько токенов сожгли, столько и оплатили.

И вполне возможно, что подписка за условные 20$ в месяц перестанет покрывать нужды использования ИИ при серьезных объемах разработки.

Магия магией, но есть и ограничения, которые становятся все очевиднее для тех, кто работает с технологиями.

Такая получается развилка.

Если со временем техническое масштабирование удастся и цена за ИИ не станет космической, то возможно многое из действительно интересного.

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

🥑