ai-agents-for-beginners

Multi-Agent Design

(Натисніть на зображення вище, щоб переглянути відео цього уроку)

Шаблони багатозадачного дизайну

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

Вступ

У цьому уроці ми хочемо відповісти на такі питання:

Навчальні цілі

Після цього уроку ви повинні бути здатні:

Яка більша картина?

Багато агентів — це шаблон дизайну, який дозволяє кільком агентам працювати разом для досягнення спільної мети.

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

Сценарії, де багатозадачність є застосовною

То які сценарії є хорошим випадком для використання багатьох агентів? Відповідь полягає в тому, що є багато сценаріїв, де використання кількох агентів корисне, особливо у наступних випадках:

Переваги використання багатьох агентів порівняно з одним агентом

Система з одним агентом може добре працювати для простих завдань, але для складніших завдань використання багатьох агентів має кілька переваг:

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

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

Складові реалізації шаблону багатозадачного дизайну

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

Зробимо це більш конкретним, знову розглянувши приклад бронювання поїздки для користувача. У цьому випадку складові включають:

Видимість взаємодій між агентами

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

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

Розглянемо кожен із цих аспектів докладніше.

Шаблони багатозадачності

Розглянемо конкретні шаблони, які можна використовувати для створення багатозадачних додатків. Ось деякі цікаві шаблони, які варто розглянути:

Груповий чат

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

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

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

Group chat

Передача завдань

Цей шаблон корисний, коли потрібно створити додаток, де кілька агентів передають завдання один одному.

Типові випадки використання – підтримка клієнтів, управління завданнями і автоматизація робочих процесів.

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

Hand off

Колаборативна фільтрація

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

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

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

Recommendation

Сценарій: процес повернення коштів

Розглянемо сценарій, де клієнт намагається отримати повернення за товар. У цьому процесі може бути задіяно досить багато агентів, але розділимо їх на спеціалізованих агентів для цього процесу і загальних агентів, які можуть використовуватись і в інших процесах.

Агенти, специфічні для процесу повернення коштів:

Ось деякі агенти, які можуть брати участь у процесі повернення коштів:

Загальні агенти:

Ці агенти можуть використовуватися в інших частинах вашого бізнесу.

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

Завдання

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

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

ПІДКАЗКА: Подумайте про різні етапи процесу підтримки клієнтів, а також врахуйте агентів, необхідних для будь-якої системи.

Рішення

Рішення

Перевірка знань

Питання 1

Який сценарій найкраще підходить для системи з кількома агентами?

Питання 2

Коли один агент зазвичай є кращим вибором?

Рішення тесту

Підсумок

У цьому уроці ми розглянули патерн дизайну з кількома агентами, включаючи сценарії, де застосовні мульти-агенти, переваги використання мульти-агентів замість одиночного агента, базові елементи реалізації патерну мульти-агента та як мати видимість взаємодії кількох агентів між собою.

Є ще питання про патерн дизайну з кількома агентами?

Приєднуйтесь до Microsoft Foundry Discord, щоб зустріти інших учнів, відвідати години офісу та отримати відповіді на свої питання про AI-агентів.

Додаткові ресурси

Попередній урок

Проектування планування

Наступний урок

Метакогніція в AI-агентах


Відмова від відповідальності: Цей документ було перекладено за допомогою сервісу штучного інтелекту для перекладу Co-op Translator. Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ рідною мовою слід вважати авторитетним джерелом. Для критично важливої інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникли внаслідок використання цього перекладу.