ai-agents-for-beginners

Мультиагентный дизайн

(Нажмите на изображение выше, чтобы посмотреть видео этого урока)

Мультиагентные шаблоны проектирования

Как только вы начинаете работать над проектом, который включает несколько агентов, вам нужно рассмотреть мультиагентный шаблон проектирования. Однако может быть не сразу ясно, когда перейти к мультиагентам и каковы преимущества.

Введение

В этом уроке мы постараемся ответить на следующие вопросы:

Цели обучения

После этого урока вы должны уметь:

Какова общая картина?

Мультиагенты — это шаблон проектирования, который позволяет нескольким агентам работать вместе для достижения общей цели.

Этот шаблон широко применяется в различных областях, включая робототехнику, автономные системы и распределённые вычисления.

Сценарии применения мультиагентов

Так какие же сценарии являются хорошим примером использования мультиагентов? Ответ в том, что существует много сценариев, когда использование нескольких агентов полезно, особенно в следующих случаях:

Преимущества использования мультиагентов по сравнению с одним агентом

Система с одним агентом может хорошо работать для простых задач, но для более сложных задач использование нескольких агентов предоставляет несколько преимуществ:

Рассмотрим пример: забронировать поездку для пользователя. Система с одним агентом должна обрабатывать все аспекты бронирования — от поиска рейсов до бронирования отелей и автомобилей в аренду. Для этого одному агенту понадобятся инструменты для выполнения всех этих задач. Это может привести к сложной и монолитной системе, которую сложно поддерживать и масштабировать. Система с мультиагентами могла бы включать разных агентов, специализирующихся на поиске рейсов, бронировании отелей и аренде автомобилей. Это сделало бы систему более модульной, легче поддерживаемой и масштабируемой.

Сравните это с туристическим бюро в виде семейного бизнеса и турбюро во франшизе. Семейный бизнес имеет одного агента, который ведёт все аспекты бронирования, тогда как во франшизе разные агенты управляют разными аспектами бронирования.

Строительные блоки реализации мультиагентного шаблона проектирования

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

Сделаем это более конкретным, снова рассмотрев пример бронирования поездки для пользователя. Строительные блоки в этом случае включают:

Видимость взаимодействия мультиагентной системы

Важно иметь видимость того, как множество агентов взаимодействуют друг с другом. Это необходимо для отладки, оптимизации и обеспечения эффективности системы. Для этого нужны инструменты и методы отслеживания активности и взаимодействия агентов: журналы, мониторинг, визуализации и метрики производительности.

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

Рассмотрим каждый из этих аспектов более подробно.

Мультиагентные шаблоны

Рассмотрим конкретные шаблоны, которые можно использовать для создания мультиагентных приложений. Вот несколько интересных вариантов:

Групповой чат

Этот шаблон полезен, когда нужно создать приложение группового чата, в котором несколько агентов могут общаться друг с другом. Типичные случаи — командное сотрудничество, поддержка клиентов и социальные сети.

В этом шаблоне каждый агент представляет пользователя в групповом чате, а сообщения обмениваются между агентами с использованием протокола обмена сообщениями. Агенты могут отправлять сообщения в чат, получать их и отвечать другим агентам.

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

Групповой чат

Передача задачи

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

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

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

Передача задачи

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

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

Зачем несколько агентов сотрудничают? Потому что каждый может иметь разную экспертизу и вносить вклад в процесс рекомендации по-разному.

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

Рекомендация

Сценарий: процесс возврата денег

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

Агенты, специфичные для процесса возврата:

Ниже перечислены агенты, которые могут участвовать в процессе возврата:

Общие агенты:

Эти агенты могут использоваться в других частях вашего бизнеса.

Выше перечислено немало агентов — и специфичных для возврата, и общих для других бизнес-процессов. Надеюсь, это даст вам представление, как выбрать агентов для вашей мультиагентной системы.

Задание

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

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

СОВЕТ: Подумайте о различных этапах процесса поддержки клиентов, а также учитывайте агентов, необходимых для любой системы.

Решение

Решение

Проверка знаний

Вопрос 1

Какой сценарий лучше всего подходит для системы с множественными агентами?

Вопрос 2

Когда обычно лучше выбрать одного агента?

Решение викторины

Итог

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

Есть еще вопросы о шаблоне проектирования с множественными агентами?

Присоединяйтесь к Microsoft Foundry Discord, чтобы встретиться с другими учащимися, посетить часы приема и получить ответы на ваши вопросы о AI агентах.

Дополнительные ресурсы

Предыдущий урок

Планирование дизайна

Следующий урок

Метапознание в AI агентах


Отказ от ответственности: Этот документ был переведен с использованием сервиса машинного перевода Co-op Translator. Несмотря на наши усилия по обеспечению точности, имейте в виду, что автоматический перевод может содержать ошибки или неточности. Оригинальный документ на его исходном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется обратиться к профессиональному человеческому переводу. Мы не несем ответственности за любые недоразумения или неправильные толкования, возникшие в результате использования этого перевода.