Пошук уроків, статей та іншого контенту
Чим агент відрізняється від звичайного виклику LLM — і чому саме здатність викликати інструменти в циклі робить його агентом.
Базове використання LLM (стаття «Що таке LLM») — одноразовий обмін: користувач надсилає промпт, модель повертає текст, взаємодія завершена. Модель не може сама виконати дію в реальному світі (запустити код, зробити HTTP-запит, прочитати файл) — вона лише генерує текст, який хтось інший (застосунок навколо неї) повинен інтерпретувати.
AI-агент — це не окрема модель, а архітектурний патерн навколо LLM: моделі надають список доступних інструментів (функцій, які застосунок реально може виконати — пошук у базі даних, виклик стороннього API, читання файлу), і замість одноразової відповіді модель працює в циклі:
Модель отримує задачу й список доступних інструментів з описом того, що кожен робить.
Модель вирішує, чи потрібен інструмент для наступного кроку, і якщо так — генерує структурований виклик конкретного інструменту з конкретними аргументами (замість звичайної текстової відповіді).
Застосунок навколо моделі реально виконує цей виклик (наприклад, робить HTTP-запит) і повертає результат назад моделі як частину контексту.
Модель бачить результат виклику й вирішує: чи достатньо цього для фінальної відповіді, чи потрібен ще один виклик інструменту (можливо, зовсім іншого) — і цикл повторюється, доки задача не буде вирішена.
Задача: "Яка зараз погода в місті, де живе користувач?"
1. Модель: викликати get_user_location()
2. Застосунок виконує → результат: "Київ"
3. Модель: викликати get_weather("Київ")
4. Застосунок виконує → результат: "+18°C, хмарно"
5. Модель: "Зараз у Києві +18°C і хмарно" (фінальна відповідь, інструменти більше не потрібні)Ключова відмінність агента — модель сама вирішує, які саме інструменти й у якому порядку викликати, залежно від того, що вона побачила на попередніх кроках, а не йде за наперед прописаним жорстким сценарієм. Це робить агентів гнучкими для непередбачуваних задач, але водночас складнішими для тестування й передбачення поведінки, ніж звичайний детермінований код.
Агент, що виконує реальні дії (списання коштів, видалення файлів, надсилання листів), потребує явних меж дозволеного — модель може помилково інтерпретувати задачу й викликати не той інструмент чи з неправильними аргументами. Критичні дії зазвичай або виносять за межі автономного циклу агента (підтвердження людиною), або обмежують окремим, вузьким набором безпечних інструментів.
Агент і RAG (стаття «RAG: як це працює») — не взаємовиключні підходи: пошук у векторній базі даних сам може бути одним з інструментів, доступних агенту, — модель вирішує звернутись до нього, коли вважає це потрібним для конкретного кроку задачі, замість того щоб отримувати контекст RAG завжди, для кожного запиту без розбору.
Називати агентом будь-який чат-бот з доступом до одного зовнішнього API — суть агента саме в циклі з кількома кроками й самостійним вибором послідовності дій моделлю, а не в самому факті доступу до інструменту.
Давати агенту занадто широкий, слабо описаний набір інструментів — модель частіше плутається у виборі правильного інструменту, коли їх багато й вони погано розмежовані за призначенням.
Довіряти агенту критичні незворотні дії без підтвердження людиною чи додаткових перевірок — модель може викликати правильний інструмент з неправильними аргументами через неточну інтерпретацію задачі, а автономний цикл не має вбудованого «здорового глузду», який зупинив би явно ризиковану дію.
AI-агент — це LLM, якій надано доступ до інструментів і яка працює в циклі «вирішити, чи потрібен інструмент → викликати його → побачити результат → вирішити далі», а не в режимі одноразової відповіді. Це дозволяє вирішувати багатокрокові задачі, непередбачувані наперед, ціною складнішого тестування й потреби в явних обмеженнях для дій із реальними побічними ефектами.