(Натисніть на зображення вище, щоб переглянути відео цього уроку)
Як тільки ви починаєте працювати над проєктом, який включає кілька агентів, вам потрібно розглянути шаблон багатозадачності. Однак може бути не відразу зрозуміло, коли слід перейти до багатьох агентів і які переваги це дає.
У цьому уроці ми хочемо відповісти на такі питання:
Після цього уроку ви повинні бути здатні:
Яка більша картина?
Багато агентів — це шаблон дизайну, який дозволяє кільком агентам працювати разом для досягнення спільної мети.
Цей шаблон широко використовується у різних сферах, включаючи робототехніку, автономні системи та розподілені обчислення.
То які сценарії є хорошим випадком для використання багатьох агентів? Відповідь полягає в тому, що є багато сценаріїв, де використання кількох агентів корисне, особливо у наступних випадках:
Система з одним агентом може добре працювати для простих завдань, але для складніших завдань використання багатьох агентів має кілька переваг:
Розглянемо приклад: забронюємо поїздку для користувача. Система з одним агентом мала б обробляти всі аспекти процесу бронювання — від пошуку авіарейсів до бронювання готелів і оренди автомобілів. Щоб досягти цього з одним агентом, агент повинен мати інструменти для обробки всіх цих завдань. Це може призвести до складної і монолітної системи, яку важко підтримувати і масштабувати. Система з багатьма агентами, натомість, може мати різних агентів, спеціалізованих на пошуку авіарейсів, бронюванні готелів і оренді автомобілів. Це зробить систему більш модульною, легкою в підтримці та масштабованою.
Порівняйте це з туристичним бюро, яке працює як маленький сімейний магазин, на відміну від туристичного бюро, яке працює як франшиза. Маленький магазин матиме одного агента, який опікується всіма аспектами процесу бронювання, тоді як франшиза відповідно матиме різних агентів для різних аспектів процесу.
Перш ніж впроваджувати шаблон багатозадачного дизайну, потрібно зрозуміти складові, які утворюють цей шаблон.
Зробимо це більш конкретним, знову розглянувши приклад бронювання поїздки для користувача. У цьому випадку складові включають:
Важливо мати видимість того, як кілька агентів взаємодіють один з одним. Ця видимість є важливою для налагодження, оптимізації і забезпечення загальної ефективності системи. Для цього потрібні інструменти і методи відстеження діяльності агентів і їх взаємодії, такі як інструменти логування і моніторингу, візуалізації та метрики продуктивності.
Наприклад, у випадку бронювання поїздки можна створити панель керування, яка показує стан кожного агента, вподобання і обмеження користувача, а також взаємодії між агентами. Ця панель може показувати дати подорожі користувача, рекомендації агентів по авіарейсах, готелях і оренді автомобілів. Це дозволить чітко бачити, як агенти взаємодіють і чи задовольняються вимоги та вподобання користувача.
Розглянемо кожен із цих аспектів докладніше.
Інструменти логування та моніторингу: Потрібно вести журнал для кожної дії агента. Запис у журналі може містити інформацію про агента, який здійснив дію, саму дію, час виконання і результат. Ця інформація допоможе при налагодженні, оптимізації тощо.
Інструменти візуалізації: Візуалізація допомагає на інтуїтивному рівні бачити взаємодії між агентами. Наприклад, можна мати граф, що показує потік інформації між агентами. Це допоможе виявити вузькі місця, неефективності та інші проблеми в системі.
Метрики продуктивності: Метрики допомагають відстежувати ефективність багатозадачної системи. Наприклад, можна відслідковувати час на виконання завдання, кількість завдань за одиницю часу та точність рекомендацій агентів. Ця інформація допоможе знаходити точки покращення і оптимізувати систему.
Розглянемо конкретні шаблони, які можна використовувати для створення багатозадачних додатків. Ось деякі цікаві шаблони, які варто розглянути:
Цей шаблон корисний, якщо потрібно створити додаток групового чату, де кілька агентів можуть спілкуватися між собою. Типові випадки використання – це командна співпраця, підтримка клієнтів і соціальні мережі.
У цьому шаблоні кожен агент представляє користувача в груповому чаті, а повідомлення обмінюються між агентами за допомогою протоколу обміну повідомленнями. Агенти можуть надсилати повідомлення в груповий чат, отримувати повідомлення з групи і відповідати іншим агентам.
Цей шаблон може бути реалізований з централізованою архітектурою, де всі повідомлення проходять через центральний сервер, або децентралізованою архітектурою, де повідомлення обмінюються безпосередньо.

Цей шаблон корисний, коли потрібно створити додаток, де кілька агентів передають завдання один одному.
Типові випадки використання – підтримка клієнтів, управління завданнями і автоматизація робочих процесів.
В цьому шаблоні кожен агент представляє завдання або крок у робочому процесі, а агенти можуть передавати завдання іншим агентам на основі заздалегідь визначених правил.

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

Розглянемо сценарій, де клієнт намагається отримати повернення за товар. У цьому процесі може бути задіяно досить багато агентів, але розділимо їх на спеціалізованих агентів для цього процесу і загальних агентів, які можуть використовуватись і в інших процесах.
Агенти, специфічні для процесу повернення коштів:
Ось деякі агенти, які можуть брати участь у процесі повернення коштів:
Загальні агенти:
Ці агенти можуть використовуватися в інших частинах вашого бізнесу.
Зазначено багато агентів, як для специфічного процесу повернення, так і для загальних агентів, що можуть використовуватися в інших частинах бізнесу. Сподіваюся, це дає вам уявлення, як вирішувати, які агенти потрібні у вашій багатозадачній системі.
Розробіть багатозадачну систему для процесу підтримки клієнтів. Визначте агенти, які будуть брати участь у процесі, їх ролі та обов’язки, а також як вони взаємодіють між собою. Розгляньте як специфічних агентів для процесу підтримки, так і загальних агентів, що можуть використовуватися в інших частинах вашого бізнесу.
Подумайте перед тим, як читати наступне рішення, можливо, вам знадобиться більше агентів, ніж ви думаєте.
ПІДКАЗКА: Подумайте про різні етапи процесу підтримки клієнтів, а також врахуйте агентів, необхідних для будь-якої системи.
Який сценарій найкраще підходить для системи з кількома агентами?
Коли один агент зазвичай є кращим вибором?
У цьому уроці ми розглянули патерн дизайну з кількома агентами, включаючи сценарії, де застосовні мульти-агенти, переваги використання мульти-агентів замість одиночного агента, базові елементи реалізації патерну мульти-агента та як мати видимість взаємодії кількох агентів між собою.
Приєднуйтесь до Microsoft Foundry Discord, щоб зустріти інших учнів, відвідати години офісу та отримати відповіді на свої питання про AI-агентів.
Відмова від відповідальності: Цей документ було перекладено за допомогою сервісу штучного інтелекту для перекладу Co-op Translator. Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ рідною мовою слід вважати авторитетним джерелом. Для критично важливої інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникли внаслідок використання цього перекладу.