Mixture of Agents (MoA)
Смесь агентов (MoA) объединяет несколько LLM, которые отвечают на запрос, после чего модели-агрегаторы анализируют все ответы и формируют лучший. Разбираем принцип работы и затраты.
Mixture of Agents (MoA) — это метод инференса, при котором несколько больших языковых моделей (LLMs) отвечают на один и тот же запрос, а одна или несколько моделей-агрегаторов анализируют все ответы и составляют единый улучшенный ответ. Джунлинь Ван и его коллеги из Together AI представили этот метод в статье 2024 года Mixture-of-Agents Enhances Large Language Model Capabilities. В основе метода лежит эффект, который авторы называют способностью к сотрудничеству: LLM обычно даёт более качественный ответ, если видит ответы других моделей на тот же вопрос, даже если эти модели слабее неё. MoA не требует обучения или дообучения — нужны только вызовы API и промпты, поэтому метод позволяет сочетать модели разных поставщиков.
Как работает Mixture of Agents#
В MoA модели организованы по слоям. В первом слое несколько моделей-предложителей независимо отвечают на запрос. Каждый следующий слой получает исходный запрос вместе со всеми ответами предыдущего слоя через промпт для агрегирования и синтеза. Промпт предлагает модели критически оценить ответы, учитывая, что некоторые из них могут быть предвзятыми или неверными, и составить один уточнённый ответ. В последнем слое находится единственная модель-агрегатор, результат которой становится ответом системы. В этих ролях модели показывают себя по-разному: в экспериментах статьи WizardLM отлично формировала предложения, но плохо справлялась с агрегацией, тогда как GPT-4o и Qwen1.5 хорошо работали в обеих ролях.
В основной конфигурации статьи использовались три слоя по шесть моделей с открытым исходным кодом: Qwen1.5-110B-Chat, Qwen1.5-72B-Chat, WizardLM-8x22B, Llama-3-70B-Instruct, Mixtral-8x22B и DBRX-Instruct. Финальным агрегатором была Qwen1.5-110B-Chat. В бенчмарке AlpacaEval 2.0 для оценки следования инструкциям бенчмарк показал результат 65,1% с контролем длины ответа — на тот момент выше 57,5% у GPT-4o. Более дешёвая версия MoA-Lite с двумя слоями и Qwen1.5-72B-Chat в роли агрегатора набрала 59,3%. Авторы опубликовали эталонную реализацию метода.
Mixture of Agents и родственные методы#
- Смесь экспертов (MoE): архитектура внутри одной нейронной сети, в которой обученный маршрутизатор активирует для каждого токена несколько экспертных подслоёв, а все эксперты обучаются совместно. MoA объединяет отдельные полноценные модели во время инференса с помощью промптов.
- Ансамбли моделей: ансамбль усредняет прогнозы своих моделей или выбирает результат голосованием. Агрегатор MoA генерирует новый текст на основе всех вариантов, поэтому может объединить правильные фрагменты ответов, каждый из которых частично неверен.
- Маршрутизация моделей: маршрутизатор направляет каждый запрос модели, которая с наибольшей вероятностью хорошо на него ответит с минимальными затратами. MoA отправляет каждый запрос нескольким моделям.
- Дебаты ИИ: в дебатах нескольких агентов модели читают ответы друг друга и пересматривают собственные в нескольких раундах. MoA передаёт информацию между слоями и завершает работу одним агрегатором.
- Оркестрация ИИ-агентов: оркестрация координирует агентов, обычно выполняющих разные подзадачи. MoA — это один из параллельных подходов в рамках оркестрации, при котором все модели работают с одним и тем же запросом.
Примеры применения в реальных условиях#
- Генерация текста: открытые задачи на написание текстов, анализ и следование инструкциям — именно их измеряет AlpacaEval — больше всего выигрывают от синтеза нескольких черновиков.
- Агентное программирование: несколько моделей предлагают решения одной задачи программирования, а агрегатор объединяет лучшие идеи. При противоречивых предложениях выбор делают модульные тесты.
- Генерация синтетических данных: команды используют результаты MoA как высококачественные целевые данные для обучения небольших моделей, оплачивая дополнительные затраты на инференс один раз.
Тот же подход применим к мультимодальному ИИ: несколько визуально-языковых моделей описывают одно изображение, а агрегатор согласует их описания. Интерфейс LLM Ultralytics обращается к OpenAI и совместимым с OpenAI поставщикам, таким как DeepSeek, Kimi, Z.AI и OpenRouter, через один класс LLM(). Поэтому один скрипт может отправить изображение нескольким моделям-предложителям, а затем передать их ответы агрегатору.
Преимущества и ограничения#
MoA обменивает вычислительные ресурсы на качество. Основная конфигурация выполняет более дюжины вызовов моделей для каждого запроса. Поскольку агрегатор не может выдать первый токен, пока не завершится последний слой, в статье отмечается высокое время до первого токена, что мешает интерактивному использованию. Поэтому задержка инференса и стоимость ограничивают применение MoA задачами, где качество ответа важнее скорости.
Сочетание разных моделей тоже оказалось не столь полезным, как могло показаться: добавление более слабых моделей-предложителей снижает среднее качество ответов, которые получает агрегатор. В исследовании Self-MoA, проведённом Вэньчжэ Ли и его коллегами, выяснилось, что агрегация нескольких сэмплов, полученных только от лучшей модели, превосходит стандартную смесь разных LLM на 6,6% в AlpacaEval 2.0 и в среднем на 3,8% в таких бенчмарках, как MMLU, CRUX и MATH.










