Skip to Content
Руководство для пользователейВозможностиАрена агентов

Agent Arena

Запускайте несколько AI-моделей одновременно для выполнения одной задачи, сравнивайте их решения бок о бок и выбирайте лучший результат для применения в вашем рабочем пространстве.

[!warning] Agent Arena находится в экспериментальной стадии. У неё есть известные ограничения в режимах отображения и управлении сессиями.

Agent Arena позволяет запустить несколько AI-моделей в соревновании за выполнение одной задачи. Каждая модель работает как полностью независимый агент в своём изолированном Git worktree, поэтому файловые операции никогда не пересекаются. Когда все агенты завершают работу, вы сравниваете результаты и выбираете победителя, чьи изменения будут объединены в основное рабочее пространство.

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

На этой странице рассматриваются:

Когда использовать Agent Arena

Agent Arena наиболее эффективна, когда вам нужно оценить или сравнить, как разные модели решают одну и ту же задачу. Лучшие сценарии использования:

  • Бенчмаркинг моделей: Оценка возможностей разных моделей на реальных задачах в вашей кодовой базе, а не на синтетических тестах
  • Выбор лучшего из N: Получение нескольких независимых решений и выбор лучшей реализации
  • Исследование подходов: Наблюдение за тем, как разные модели рассуждают и решают одну проблему — полезно для обучения и получения инсайтов
  • Снижение рисков: Для критических изменений убедитесь, что несколько моделей сходятся на схожем подходе перед коммитом

Agent Arena потребляет значительно больше токенов, чем одна сессия (у каждого агента своё контекстное окно и вызовы модели). Она оправдана, когда ценность сравнения превышает затраты. Для рутинных задач, где вы доверяете модели по умолчанию, одна сессия будет эффективнее.

Запуск сессии Arena

Для запуска сессии используйте слэш-команду /arena. Укажите модели для соревнования и задачу:

/arena --models qwen3.5-plus,glm-5,kimi-k2.5 "Refactor the authentication module to use JWT tokens"

Если опустить --models, появится интерактивное окно выбора моделей, где можно выбрать из настроенных провайдеров.

Что происходит при запуске

  1. Настройка worktree: Qwen Code создаёт изолированные Git worktree для каждого агента в ~/.qwen/arena/<session-id>/worktrees/<model-name>/. Каждый worktree точно отражает состояние вашего текущего рабочего каталога — включая staged, unstaged изменения и untracked файлы.
  2. Запуск агентов: Каждый агент стартует в своём worktree с полным доступом к инструментам и настроенной моделью. Агенты запускаются последовательно, но выполняются параллельно.
  3. Выполнение: Все агенты работают над задачей независимо, без общего состояния или обмена данными. Вы можете отслеживать их прогресс и взаимодействовать с любым из них.
  4. Завершение: Когда все агенты завершают работу (или завершаются с ошибкой), начинается фаза сравнения результатов.

Взаимодействие с агентами

Режимы отображения

В настоящее время Agent Arena поддерживает in-process mode, где все агенты работают асинхронно в одном терминальном процессе. Панель вкладок внизу терминала позволяет переключаться между агентами.

[!note] Режимы отображения с разделением панелей запланированы на будущее. Мы планируем поддержку макетов с разделением панелей на основе tmux и iTerm2, где каждый агент получит собственную терминальную панель для настоящего просмотра бок о бок. В данный момент доступно только переключение вкладок в процессе.

Навигация между агентами

В in-process mode используйте горячие клавиши для переключения между представлениями агентов:

Горячая клавишаДействие
RightПереключиться на следующую вкладку агента
LeftПереключиться на предыдущую вкладку агента
UpПеревести фокус в поле ввода
DownПеревести фокус на панель вкладок агентов

Панель вкладок отображает текущий статус каждого агента:

ИндикаторЗначение
Выполняется или ожидает
Успешно завершён
Завершён с ошибкой
Отменён

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

При просмотре вкладки агента вы можете:

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

Каждый агент представляет собой полноценную независимую сессию. Всё, что вы можете делать с основным агентом, доступно и для агента Arena.

Сравнение результатов и выбор победителя

Когда все агенты завершают работу, Arena переходит в фазу сравнения результатов. Вы увидите:

  • Сводка статусов: Какие агенты успешно завершили работу, завершились с ошибкой или были отменены
  • Метрики выполнения: Длительность, раунды рассуждений, использование токенов и количество вызовов инструментов для каждого агента
  • Сводка сравнения Arena: Общие изменённые файлы vs. уникальные для одного агента, количество изменённых строк, эффективность использования токенов и краткое описание подхода, сгенерированное на основе diff, метрик и истории диалога каждого агента

Диалог выбора предлагает успешных агентов. Выберите одного, чтобы применить его изменения в основное рабочее пространство, или отклоните все результаты. Нажмите p для быстрого просмотра выделенного агента или d для просмотра детального diff перед выбором победителя.

Что происходит при выборе победителя

  1. Изменения победившего агента извлекаются в виде diff относительно базовой версии
  2. Diff применяется к вашему основному рабочему каталогу
  3. Все worktree и временные ветки автоматически очищаются

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

Конфигурация

Поведение Arena можно настроить в settings.json:

{ "arena": { "worktreeBaseDir": "~/.qwen/arena", "maxRoundsPerAgent": 50, "timeoutSeconds": 600 } }
ПараметрОписаниеЗначение по умолчанию
arena.worktreeBaseDirБазовый каталог для worktree Arena~/.qwen/arena
arena.maxRoundsPerAgentМаксимальное количество раундов рассуждений на агента50
arena.timeoutSecondsТаймаут для каждого агента в секундах600

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

Выбирайте модели, дополняющие друг друга

Arena наиболее полезна при сравнении моделей с существенно разными сильными сторонами. Например:

/arena --models qwen3.5-plus,glm-5,kimi-k2.5 "Optimize the database query layer"

Сравнение трёх версий одного семейства моделей даст меньше инсайтов, чем сравнение моделей от разных провайдеров.

Делайте задачи самодостаточными

Агенты Arena работают независимо и не обмениваются данными. Задачи должны быть полностью описаны в промпте без необходимости уточнений:

Хорошо: «Рефакторинг модуля оплаты с использованием паттерна Strategy. Обновите все тесты.»

Менее эффективно: «Давайте обсудим, как улучшить модуль оплаты» — это требует диалога, что лучше подходит для одной сессии.

Ограничивайте количество агентов

Одновременно могут работать до 5 агентов. На практике 2–3 агента обеспечивают оптимальный баланс между ценностью сравнения и затратами ресурсов. Больше агентов означает:

  • Более высокие затраты токенов (у каждого агента своё контекстное окно)
  • Увеличение общего времени выполнения
  • Больше результатов для сравнения

Начинайте с 2–3 агентов и увеличивайте количество только тогда, когда ценность сравнения оправдывает затраты.

Используйте Arena для решений с высоким влиянием

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

  • Выбор архитектуры для нового модуля
  • Выбор подхода для сложного рефакторинга
  • Валидация критического исправления бага с разных сторон

Для рутинных изменений, таких как переименование переменной или обновление конфигурационного файла, одна сессия будет быстрее и дешевле.

Устранение неполадок

Агенты не запускаются

  • Убедитесь, что каждая модель в --models правильно настроена с валидными API-ключами
  • Проверьте, что ваш рабочий каталог является Git-репозиторием (worktree требуют Git)
  • Убедитесь, что у вас есть права на запись в базовый каталог worktree (~/.qwen/arena/ по умолчанию)

Ошибка создания worktree

  • Выполните git worktree list, чтобы проверить наличие старых worktree от предыдущих сессий
  • Очистите старые worktree с помощью git worktree prune
  • Убедитесь, что ваша версия Git поддерживает worktrees (git --version, требуется Git 2.5+)

Агент выполняется слишком долго

  • Увеличьте таймаут: задайте arena.timeoutSeconds в настройках
  • Уменьшите сложность задачи — задачи для Arena должны быть сфокусированными и чётко определёнными
  • Уменьшите arena.maxRoundsPerAgent, если агенты тратят слишком много раундов

Ошибка применения победителя

  • Проверьте наличие незакоммиченных изменений в основном рабочем каталоге, которые могут вызвать конфликты
  • Diff применяется как патч — возможны конфликты слияния, если ваш рабочий каталог изменился во время сессии

Ограничения

Agent Arena находится в экспериментальной стадии. Текущие ограничения:

  • Только in-process mode: Отображение с разделением панелей через tmux или iTerm2 пока недоступно. Все агенты работают в одном окне терминала с переключением вкладок.
  • Нет предпросмотра diff до выбора: Вы можете просматривать историю диалога каждого агента, но отсутствует единый просмотрщик diff для сравнения решений бок о бок перед выбором победителя.
  • Без сохранения worktree: Worktree всегда очищаются после выбора. Нет возможности сохранить их для дальнейшего изучения.
  • Нет возобновления сессии: Сессии Arena нельзя возобновить после выхода. Если вы закроете терминал в середине сессии, worktree останутся на диске и должны быть очищены вручную через git worktree prune.
  • Максимум 5 агентов: Жёсткий лимит в 5 одновременных агентов изменить нельзя.
  • Требуется Git-репозиторий: Arena требует Git-репозиторий для изоляции worktree. Её нельзя использовать в каталогах без Git.

Сравнение с другими режимами мультиагентности

Agent Arena — один из нескольких запланированных режимов мультиагентности в Qwen Code. Agent Team и Agent Swarm ещё не реализованы — таблица ниже описывает их предполагаемую архитектуру для справки.

Agent ArenaAgent Team (запланировано)Agent Swarm (запланировано)
ЦельСоревновательный: найти лучшее решение для одной и той же задачиКоллаборативный: совместно решать разные аспекты задачиПакетный параллельный: динамическое создание воркеров для массовых задач
АгентыЗаранее настроенные модели соревнуются независимоУчастники команды сотрудничают с назначенными ролямиВоркеры создаются на лету и уничтожаются после завершения
КоммуникацияОтсутствует обмен данными между агентамиПрямой обмен сообщениями peer-to-peerОдносторонняя: результаты агрегируются родительским процессом
ИзоляцияПолная: отдельные Git worktreesНезависимые сессии с общим списком задачЛёгкий эфемерный контекст для каждого воркера
РезультатОдно выбранное решение применяется в рабочее пространствоСинтезированные результаты с разных точек зренияАгрегированные результаты параллельной обработки
Лучше всего подходит дляБенчмаркинга, выбора между подходами моделейИсследований, сложной коллаборации, кросс-уровневой работыПакетных операций, обработки данных, задач map-reduce

Следующие шаги

Изучите связанные подходы для параллельной и делегированной работы:

  • Лёгкая делегация: Субагенты обрабатывают узкие подзадачи в рамках вашей сессии — лучше подходят, когда сравнение моделей не требуется
  • Ручные параллельные сессии: Запускайте несколько сессий Qwen Code самостоятельно в отдельных терминалах с Git worktrees  для полного ручного контроля
Last updated on