Чого я навчився, запускаючи ШІ-агентів у продакшені
Я створюю ШІ-системи. Я спілкуюся з інженерами, які випускають код. Між яскравими демо-версіями та реальними продакшен-системами існує прірва.
Зараз люди називають агентом усе підряд. Скрипт із циклом — це агент. Чат-бот із пам'яттю — це агент. Ця помилка призводить до поганого інжинірингу.
Команди переускладнюють прості завдання. Вони додають складну оркестрацію робочим процесам, яким потрібен лише один хороший промпт.
Агент повинен мати мету, а не просто інструкцію. Він має вирішувати, що робити далі. Він має вміти обробляти помилки. Він має знати, коли він завершив роботу.
Усе інше — це просто виклик функції.
• Якщо людина має керувати кожним кроком, це чат-інтерфейс. • Якщо система відновлюється після невдалого виклику інструменту, це агент. • Якщо система розбиває ціль на підзавдання, це справжній агент.
Реальне розгортання агентів є вузькоспеціалізованим. Вони добре виконують одну річ, наприклад, вилучення даних із документів або рев'ю коду. Вони не є універсальними двигунами міркування.
Успішні команди зосереджуються на трьох речах:
- Проєктування інструментів: чисті інтерфейси для того, що викликає агент.
- Обробка помилок: що відбувається, коли інструмент нічого не повертає.
- Спостережуваність (Observability): відстеження того, чому агент прийняв конкретне рішення.
Фреймворки на кшталт LangChain або CrewAI змінюються щомісяця. Фреймворк менш важливий, ніж патерни.
Використовуйте ці патерни для успіху:
- Планування, а потім виконання: використовуйте один крок для планування та окремий крок для виконання.
- Розділяйте retrieval і міркування: отримання контексту та використання контексту — це різні завдання.
- Явна передача завдань: використовуйте структуровані логи, коли один агент передає роботу іншому.
RAG є стандартом, але більшість людей помиляються з чанкуванням (chunking). Якщо ви погано розбиваєте текст, модель втрачає контекст. Якщо ваші результати RAG марні, перевірте метадані та стратегію чанкування, перш ніж звинувачувати модель.
Моделі ставатимуть кращими та дешевшими. Це не змінює основної інженерної проблеми. Ви повинні будувати системи, які поводяться правильно, коли ви за ними не спостерігаєте.
Зосередьтеся на управлінні (governance) та спостережуваності. Важливими будуть ті інженери, які створюють системи, яким інші можуть довіряти. Це системний дизайн, а не дослідження моделей.
Джерело: https://dev.to/aibughunter/what-i-learned-after-running-ai-agents-in-production-for-a-year-49n
