← к ленте

От вайб-кодинга к AI-инжинирингу: методология разработки агентов

N@new_yorko_timesAI-инженер
3 нед

Разбор подхода к разработке AI-агентов через структурированные этапы: от спеки и планирования до тестирования и ревью с использованием agent-skills.

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

  • Структурированный процесс (Spec-Plan-Build-Test) снижает количество ошибок в AI-агентах.
  • Автоматизация документации и тестов упрощает дальнейшую поддержку проекта.
  • Метод требует значительных затрат времени и токенов, поэтому не подходит для быстрых прототипов.
От вайб-кодинга к AI-инжинирингу на примере простого агента #diy #ai Я в целом не особо силен во всяких кастомных обвязках и супер-навороченных практиках AI инжиниринга. Моя роль позволяет в целом быдлокодить делать прототипы, особо не считать токены и в целом обычно хватало просто спеки Spec.md и агента в виде чата. Так что я решил поиграться с чем-то более продуманным и заодно тут рассказать. Для примера взял скиллы Addy Osmani, чисто из-за предвзятости, это очень крутой чел, его суждениям я доверию (но в целом наверняка можно было взять и Superpowers либо скиллы Matt Pocock). Суть в том, что это не просто набор скиллов, а изменение всего подхода к agentic разработке. Что-то вроде Spec -> Plan -> Build -> Test -> Review -> Simplify -> Ship. Слишком томить не буду, дам наводку, а дальше LLM сама лучше расскажет-покажет. В последнее время я новые прикладные темы изучаю генерацией короткого мини-тьюториала в нашем либимом формате HTML. В данном случае я взял идею простенького агента-консультанта по путешествиям и попросил Gemini создать тьюториал о том, как разработать такого агента в стиле Addy Osmani: I've got a high-level idea of a travel assistant agent. Create an HTML course illustrating the development of such an agent with https://github.com/addyosmani/agent-skills and agents-cli, create sub-pages for each meaningful chapter (e.g. Spec -> Plan -> Build -> Test -> Review -> Simplify -> Ship), write code and make it copy-pastable so that I can follow the tutorial and go through the whole development process myself. Сначала gemini сам реализовал простенького агента, затем использовал это решение как референс для мини-курса. Далее мини-курс сам тебя ведет через все этапы разработки: 1) Определяем спеку, отвечаем на вопросы агента, что мы вообще хотим от продукта. Спека появляется не одна, а несколько – по одной на каждый компонент будущего решения /spec Build a travel concierge agent with Google ADK, scaffolded and evaluated with agent-cli. It must... <high-level idea pitch> После ответов на вопросы появится Spec.md и spec-*.md для компонентов. 2) Далее запускаем планирование /plan Use SPEC.md and the architecture we just agreed Появляются plan.md и конкретный todo.md со списком всех задач, acceptance criteria, плана проверки и файлов на выходе. Все в стиле TDD, то есть начиная с тестов. 3) Далее Build, либо вдумчиво по одной фиче из списка todo.md, либо сразу /build auto и почитывать, как он сам все по очереди реализует, тестирует и обновляет Todo. 4) И в конце финальные проверки и еще пара скиллов для упрощения кода. До Ship в данном случае не дошло 👨‍🦳 Что понравилось - так на выходе, конечно, решение куда более продуманное, с кучей тестов, покрытыми корнер-кейсами (например, а что если ты путешествуешь с мелким ребенком, наверное не надо советовать маршрут с прогулками дольше 10 минут). И документация получается сама собой, попутно с разработкой - далее улучшать решение тоже понятно как – спека уже лежит, фичи детально описаны, надо просто в том же формате добавлять новые фичи и следовать тому же процессу, что описан выше Ограничения - уходит больше времени и токенов, конечно. В моем случае 3 часа вместо 5 минут (хотя да, решение сильно более продуманное на выходе). - На эвалах может много токенов погореть. Да, агент сам помимает, где какие тесты нужны (юнит/интеграционные, а где LLM-as-a-Judge), но также из-за какой-то банальной мелочи типа несовпадающих сигнатур функций у tools может решить перезапустить весь LLM-as-a-Judge для какой-то фичи, а это и генерация синтетических данных, например, и эвал, то есть лекто минут 20 и 120 тыс токенов на один этап - Душновато получается, все же спеки, планы и todo – это много текста, который надо проверять. Для большого проекта на всю команду – да, можно даже продакта посадить, вместе отвечать на вопросы LLM. Но для мелких одноразовых вещей типа кастомного UI или демки навыброс я по-прежнему буду вайбкодить 😮‍💨
От вайб-кодинга к AI-инжинирингу: методология разработки агентов

Кратко (AI)

Автор делится опытом перехода от хаотичного прототипирования («вайб-кодинга») к системному AI-инжинирингу. Используя методологию Addy Osmani, он описывает процесс создания AI-агента через последовательные этапы: спецификация, планирование, сборка, тестирование и ревью. Метод позволяет создавать более качественные решения с документацией, но требует больше времени и токенов.

Обсуждение

0
В

Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖