Підходи до розробки з AI
Методології роботи з AI-агентами: Plan and Act, TDD, SDD, Spec as Source, SGR
📎ОФІЦІЙНА ДОКУМЕНТАЦІЯ
Підходи до розробки з AI
Огляд ключових методологій, що допомагають ефективно працювати з AI-агентами.
Plan and Act
Агенти часто помиляються та "губляться", коли намагаються одночасно продумувати логіку та писати код для комплексних багатокрокових задач. Тому процес розробки розділяється на дві фази.
Plan Mode
- AI-агент переводиться у режим "тільки для читання"
- Досліджує кодову базу, аналізує контекст, виявляє можливі граничні випадки
- Відсутність можливості вносити зміни захищає код від імпульсивних, помилкових рішень AI
Act / Build / Code Mode
- Зберігаючи весь контекст та домовленості з фази планування, AI застосовує свої інструменти строго за затвердженою стратегією
1 хвилина на планування та написання технічної специфікації економить 10 хвилин на зневадження.
| Масштаб задачі | Рекомендований підхід |
|---|---|
| Дрібні правки | Тільки Act Mode |
| Середні задачі | Цикл Plan -> Act |
| Великі архітектурні зміни | Глибоке планування |
Test-Driven Development (TDD)
У поєднанні з AI-агентами створює потужний цикл зворотного зв'язку. TDD забезпечує структуру та дисципліну, а агенти -- швидкість.
Переваги
- Точні промпти: Тест виступає промптом, що фокусує AI на конкретній поведінці
- Запобігання "підгонці" тестів: Тести пишуться до імплементації
- Захист від регресій: Кожна зміна перевіряється автоматично
Проблеми
- AI-агенти за замовчуванням не люблять працювати короткими ітераціями Red-Green-Refactoring
- Звичайні текстові промпти з проханням "використовувати TDD" часто ігноруються
- Агенти ще недостатньо добре вміють писати тести до логіки
Стратегії реалізації
- Ізоляція контексту
- Ручне ревью тестів
- Автоматизований контроль (hooks або TDD guard)
- Спеціалізовані workflows
Spec Driven Development (SDD)
SDD -- підхід, де специфікації (а не код) стають головним джерелом істини.
Рівні
| Рівень | Опис |
|---|---|
| Spec-first | Специфікація пишеться для спрямування початкової AI-розробки |
| Spec-anchored | Специфікація підтримується разом із кодом |
Workflow SDD
- Specify: Опис ЩО потрібно побудувати
- Plan: Опис ЯК будувати: стек, архітектура
- Tasks: AI розбиває план на дрібні кроки
- Implement: Агент пише код за кожною задачею
Spec as Source
У цій парадигмі специфікація є єдиним артефактом, з яким безпосередньо працює людина, а роль класичного написання коду повністю делегується AI.
Принципи
- Заборона на ручне редагування коду -- код повністю генерується зі специфікації
- Усунення розсинхронізації -- специфікація завжди відповідає коду
- Еволюція Model-Driven Development -- наступний крок у розвитку MDD
SGR (Schema-Guided Reasoning)
SGR -- підхід, що поєднує Structured Output та Chain-of-Thought.
Принцип
| Підхід | Переваги | Недоліки |
|---|---|---|
| Chain-of-Thought | Розумна відповідь | Важко парсити |
| Structured Output | Легко парсити | AI часто помиляється |
| SGR | Строга схема + міркування | Потребує проєктування схеми |
Приклад схеми відповіді агента
analyzed_context-- коротка вибірка ключових фактівapplicable_rules-- перелік застосовних бізнес-правилreasoning-- логічне зіставлення фактів та правилtool_to_use-- вибір інструментуtool_parameters-- дані для обраного інструменту
SGR спирається на Constrained Decoding. Порядок полів має вирішальне значення -- модель генерує їх послідовно, тому міркування повинні передувати фінальній відповіді.