Блог

Асистент, агент чи чатбот? Чому всі плутаються в AI-термінах і як це розкласти по поличках

Раніше щоб заплутати розробника ПЗ потрібно було запитати чим інтерфейс відрізняється від абстрактного класу. Зараз таким питанням — у чому різниця між асистентом і агентом? А якщо додати ще сюди «копілот», «система ші», «автоматизація», «воркфлоу», «чатбот», то все стає ще сумніше.

Проблема в тому, що всі ці поняття часто вживають як синоніми, але вони описують різні виміри одного і того ж.

Почнемо з простого. «ІТ система» — будь-яка система, яка використовує інформаційно-комунікаційні технології. ІТ системою може бути сайт, CRM, ERP, API, мобільний застосунок, чатбот. «Система ШІ» — це ІТ система, що використовує технології ШІ. Я би ще додав, де ШІ є головною/основною технологією, але тоді ми змушені будемо посперечатися, що означає «головна/основна», тому просто зійдемося на тому, що система ШІ якось використовує ШІ.

Чат — це інтерфейс взаємодії кількох агентів. Під «агентом» тут маємо на увазі людей. Якщо одним з агентів є бот, то в такому випадку це «чатбот». Чатбот є ІТ системою, якщо там не використовується ШІ, і «системою ШІ», якщо використовується, наприклад, якийсь алгоритми чи технологія з галузі обробки природної мови.

Тут я зупинюся і зроблю акцент. Що чатбот і ШІ ніяк не пов’язані. ШІ може використовуватися, а може й ні — це не впливає на те, що таке чатбот. Таким чином, ми можемо сказати — що ChatGPT — це система ШІ, що реалізована у вигляді чатботу (і тут ви вже зрозуміли, до чого я хилю, бо система ШІ може мати й інші інтерфейси — наприклад, плагін до IDE, браузера або CLI).

Їдемо далі. Асистент — це ІТ система, яка допомагає (асистує) людині для виконання того чи іншого завдання. Таким чином ChatGPT — це система ШІ, що реалізована у вигляді чатботу, і асистент. Простими словами, асистент — тип/різновид/роль ІТ системи.

Термін «копілот» ввела компанія Microsoft — спочатку для GitHub, потім для Microsoft 365 і інших продуктів, пояснивши це тим, що копілот (другий пілот) допомагає, але не приймає ключові рішення. Тобто ідеологічно, копілот == асистенту. Єдине додам, що розрізняю асистент і копілот за тим що, копілот надбудовується поверх іншої системи. Хоча «копілот» Zoom AI Assistant називається Assistant. Тобто в цілому асистент = копілот.

А що ж агент? Асистент може бути агентом, а може не бути. Агент може бути асистентом, а може і не бути. То що їх об'єдную чи відрізняє? Якщо асистент — це «роль», то агент — це «властивість». Ця властивість каже, що наш асистент чи інша ІТ система може працювати з певною автономністю. О! — нове слово — скажете ви — автономність. А давайте скажемо, що асистент — це трохи автономності, а агент — це багато автономності. Хочеться так сказати, але це буде не правильно.

Автономність ІТ систем — це окрема шкала і вимір. ІТ система (або навіть система ШІ), де людина приймає рішення, а ІТ система робить щось за прописаним сценарієм чи алгоритмом, то це просто автоматизація. Ця система може мати вигляд API, асистента, агента, воркфлоу, рішення у вигляді правил if/else, бізнес-логіки тощо.

Далі — це human-in-the-loop системи, де як правило вже агент з ШІ (ШІ тут потрібен для створення ДИНАМІЧНОГО плану виконання) робить якусь частину роботи, але людина втручається в процес виконання. Далі — це human-on-the-loop системи, де людина не втручається у виконання, але робить нагляд і фінальне прийняття рішення.І нарешті, human-out-of-the-loop, коли система ШІ самостійно приймає рішення.

Тобто автономність оцінює не здатність виконувати завдання (це автоматизація), а здатність приймати рішення.

Таким чином, ChatGPT — це система ШІ (асистент), що має агентні режими, які реалізовують human-in-the-loop сценарії, що працює через інтерфейс чатботу. А Claude Code — це система ШІ (асистент), що має звичайний та агентний режими, які реалізують підходи human-in-the-loop та human-on-the-loop, що працює через вебінтерфейс та інтерфейс CLI.

Важливо зазначити, що в різних джерелах пояснення термінів можуть відрізнятися + відбувається постійна еволюція підходів, тому і ці пояснення з часом треба буде корегувати. Як підсумок. Асистент може бути агентом і навпаки. А може і не бути.