Андела спонсировала этот пост.
В большинстве реализаций ИИ может возникнуть ощущение, что у вас есть один действительно умный стажер: полезный, но ограниченный одной точкой зрения и склонный к уверенно неверным ответам. Но что, если вместо этого вы могли бы собрать небольшую команду специалистов по искусственному интеллекту, которые по-настоящему спорят друг с другом, прежде чем дать вам окончательные рекомендации?
Именно такие изменения в отрасли происходят прямо сейчас. Организации выходят за рамки базовых чат-ботов и выбирают системы искусственного интеллекта, способные решать реальные и сложные проблемы. Мое внимание привлекла программа Microsoft AutoGen, поскольку она делает такой вид многоагентного сотрудничества удивительно доступным.
Я экспериментировал с AutoGen в течение нескольких месяцев, и разница поразительна. Вместо того, чтобы надеяться, что какая-то модель окажется верной, вы наблюдаете, как агенты бросают вызов рассуждениям друг друга, выявляют ошибки и развивают идеи — что-то вроде подслушивания действительно продуктивного сеанса мозгового штурма.
Этот подход становится важным, когда вы имеете дело с запутанными реальными проблемами: обработка сложных документов, синтез исследований из нескольких источников или генерация кода, который должен действительно работать. Отдельные агенты часто упускают нюансы или делают предположения, которые кажутся разумными по отдельности, но разваливаются при внимательном рассмотрении.
Вот как можно построить простую, но эффективную мультиагентную систему. Вы назначите агентов с разными ролями — один будет сосредоточен на генерировании идей, другой — на их критике — и будете наблюдать, как они работают вместе, чтобы добиться лучших результатов, чем каждый из них мог бы достичь в одиночку.
К концу вы поймете не только, как это реализовать технически, но и почему это представляет собой фундаментальный сдвиг в том, как мы должны думать об ИИ в бизнес-контексте.
Почему важно многоагентное сотрудничество
Традиционные системы модели большого языка (LLM) используют одну модель для ответа на запрос. А что, если эта модель:
- Нужен контекст из предыдущих ответов?
- Упускает важный факт?
- Может ли быть полезен структурированный обзор?
Мультиагентные системы позволяют решить эти проблемы путем назначения ролей:
- Планирует один агент.
- Другой генерирует выходные данные.
- Третья критика.
- Пользовательский прокси собирает и маршрутизирует входные данные.
Реальные примеры
- Второй пилот исследования: агент-аналитик ищет документы, агент-обобщитель обобщает, агент контроля качества проверяет факты.
- Агент кодирования: пользователь определяет спецификации, агент-разработчик генерирует код, агент-критик тестирует или просматривает его.
Пошаговое руководство с AutoGen
1. Установите зависимости
pip установить pyautogen openai
Примечание: При установке пакетов Python рекомендуется использовать виртуальную среду, такую как venv или conda. Это помогает эффективно управлять зависимостями и предотвращает конфликты с другими проектами.
Вам понадобится ключ OpenAI API и доступ к GPT-4 или GPT-3.5 Turbo. Храните ключ в безопасности:
экспортировать OPENAI_API_KEY=»ваш-openai-ключ»
2. Создайте конфигурацию агента.
Агенты AutoGen настраиваются с использованием словарей типа JSON. Вы определяете:
- Роль (например, помощник, пользователь, критик)
- Настройки LLM
- Поведенческие флаги (например, автоответ, включение обратной связи)
llm_config = { «модель»: «gpt-4», «api_key»: os.environ[«OPENAI_API_KEY»]«температура»: 0,5 } 12345 llm_config = { «модель»: «gpt-4», «api_key»: os.environ[«OPENAI_API_KEY»]«температура»: 0,5}
3. Создайте прокси-агент пользователя.
Пользовательский прокси действует как мост между пользователем-человеком и агентами LLM. Он маршрутизирует сообщения и, при необходимости, вводит подсказки.
user_proxy = UserProxyAgent( name=»user», human_input_mode=»НИКОГДА», code_execution_config={«work_dir»: «./autogen_output»}, llm_config=llm_config ) 123456 user_proxy = UserProxyAgent( name=»user», human_input_mode=»НИКОГДА», code_execution_config={«work_dir»: «./autogen_output»}, llm_config=llm_config)
Установите human_input_mode=»ВСЕГДА», если вы хотите, чтобы пользователь участвовал на каждом этапе. В противном случае агенты будут работать автоматически.
4. Создайте агента помощника по задачам.
Этот агент выполняет фактическую задачу (генерацию ответов, кодирование, обобщение).
Assistant = AssistantAgent( name=»assistant», llm_config=llm_config) 1234 Assistant = AssistantAgent( name=»assistant», llm_config=llm_config)
5. Создайте агента-критика (необязательно, но мощно)
Чтобы улучшить качество, введите второго агента для оценки и уточнения результатов помощника.
Critic = AssistantAgent( name=»critic», system_message=»Вы — критик. Улучшайте и проверяйте ответы от других агентов.», llm_config=llm_config ) 12345 Critic = AssistantAgent( name=»critic», system_message=»Вы — критик. Улучшайте и проверяйте ответы от других агентов.», llm_config=llm_config)
6. Настройте совместный рабочий процесс
AutoGen позволяет определять групповые чаты (многоходовые диалоги между агентами) или статическую передачу сообщений. Вот простой диалог с помощником пользователя:
user_proxy.initiate_chat(assistant, message=»Объясните концепцию трансферного обучения в машинном обучении.») 1 user_proxy.initiate_chat(assistant, message=»Объясните концепцию трансферного обучения в машинном обучении.»)
Для привлечения критиков объедините несколько агентов:
def Critic_loop(user_proxy, Assistant, Critic): user_proxy.initiate_chat( получатель=ассистент, message=»Напишите функцию Python для вычисления последовательности Фибоначчи.», summary_method=»last_msg» ) Assistant.initiate_chat(critic, message=»Пожалуйста, просмотрите мой предыдущий ответ.») Critic_loop(user_proxy, Assistant, Critic) 123456789 def Critic_loop(user_proxy, помощник, критик): user_proxy.initiate_chat( получатель=ассистент, сообщение=»Напишите функцию Python для вычисления последовательности Фибоначчи.», summary_method=»last_msg» ) Assistant.initiate_chat(critic, message=»Пожалуйста, просмотрите мой предыдущий ответ.») Critic_loop(user_proxy, Assistant, Critic)
Это имитирует реальное сотрудничество: один агент выполняет задачу, другой просматривает и, при необходимости, направляет выходные данные обратно пользователю.
Дополнительно: Мультиагентный групповой чат
AutoGen поддерживает GroupChatManager, который управляет множеством агентов в пошаговом режиме:
из автоматического импорта GroupChat, GroupChatManager groupchat = GroupChat( Agents=[user_proxy, assistant, critic]сообщения=[]max_round=5 ) менеджер = GroupChatManager(groupchat=groupchat) user_proxy.initiate_chat(manager, message=»Разработать план обучения искусственному интеллекту в старших школах.») 12345678910 из автоматического импорта GroupChat, GroupChatManager groupchat = GroupChat( Agents=[user_proxy, assistant, critic]сообщения=[]max_round=5) менеджер = GroupChatManager(groupchat=groupchat)user_proxy.initiate_chat(manager, message=»Разработать план обучения ИИ в средних школах.»)
Эта структура позволяет каждому агенту увеличивать ценность в течение нескольких раундов, пока не будет сформирован консенсус.
Как это выглядит в действии
- Подсказка: «Разработайте маркетинговую кампанию для экологически чистой зубной пасты».
- Ответ помощника агента: Предлагается трехэтапный план с социальными сетями и поддержкой влиятельных лиц.
- Критик: Отмечает, что бюджетные ограничения не были учтены.
- Окончательный ответ: уточнено с учетом реалистичных затрат и A/B-тестирования.
Вы только что создали самосовершенствующееся, автономное мыслительное партнерство.
Расширенные расширения
- Агенты, использующие инструменты: настройте агентов для запуска кода Python, запросов к API или поиска в Интернете.
- Самоанализ. Позвольте помощникам просмотреть свои ответы перед отправкой.
- Пользовательские роли: определите таких агентов, как «планировщик», «стратег», «кодировщик» или «тестер».
Пример помощника по вызову инструмента:
AssistantAgent(…, code_execution_config={«use_docker»: True}) 1 AssistantAgent(…, code_execution_config={«use_docker»: True})
Бизнес и технические выводы
Выгода
Для руководителей
Для разработчиков
Модульные агенты. Делегируйте обязанности для улучшения интерпретируемости и доверия. Тестируйте и отлаживайте роли независимо. Архитектура, основанная на диалоге. Отражает рабочие процессы человека для проверки и обратной связи. Легко воспроизводить процессы в стиле agile. Готовность к работе Работает с API OpenAI и подключаемыми серверными модулями. Отлично подходит для экспериментов и последующего развертывания.
Заключительные мысли
Работа с одной моделью ИИ часто напоминает работу с блестящим, но изолированным консультантом, поскольку у вас есть одна точка зрения, примите ее или откажитесь. Но что, если бы вы могли собрать целую команду специалистов по искусственному интеллекту, которые действительно общаются друг с другом, обсуждают идеи и выявляют ошибки друг друга?
Именно это обещают мультиагентные системы, такие как Microsoft AutoGen. Вместо того, чтобы скрещивать пальцы и надеяться, что какая-то модель сделает все правильно, вы организуете диалог между различными агентами ИИ, каждый из которых демонстрирует свои сильные стороны.
Я видел, как этот подход решает проблемы, которые ставят в тупик отдельные модели. Когда агенты могут противостоять рассуждениям друг друга, подвергать сомнению предположения и совместно развивать идеи, результаты заметно лучше. Меньше галлюцинаций, больше нюансов мышления и результатов, которые кажутся результатом реальной командной дискуссии.
Практические преимущества трудно игнорировать:
- Решения принимаются быстрее, когда у вас есть несколько точек зрения, работающих параллельно.
- Агенты распознают ошибки друг друга еще до того, как они доберутся до вас.
- Вы можете создать специализированных агентов для разных областей, включая юриспруденцию, финансы и маркетинг, и позволить им объединить свой опыт.
Организации, которые поймут это раньше, получат серьезное преимущество. Мы переходим от «использования ИИ» к «управлению командами ИИ». Компании, которые добьются успеха в этом переходе, будут задавать темп.
Andela предоставляет крупнейшую в мире частную рыночную площадку для талантов удаленных технологий, управляемую платформой на базе искусственного интеллекта для управления полным жизненным циклом найма по контракту. Andela помогает компаниям масштабировать команды и быстрее реализовывать проекты в специализированных областях: разработка приложений, искусственный интеллект, облако, данные и аналитика. Узнайте больше Последние новости от Анделы ТЕНДЕНЦИОННЫЕ ИСТОРИИ YOUTUBE.COM/THENEWSTACK Технологии развиваются быстро, не пропустите ни одной серии. Подпишитесь на наш канал YouTube, чтобы смотреть все наши подкасты, интервью, демонстрации и многое другое. ПОДПИСАТЬСЯ Группа, созданная в Sketch. Оладимеджи Соволе является членом Andela Talent Network, частной торговой площадки для глобальных технологических талантов. Специалист по данным и аналитик данных с более чем 6-летним профессиональным опытом создания визуализаций данных с помощью различных инструментов и прогнозных моделей… Подробнее от Оладимеджи Соволе