Itinai.com lat lay of a medium sized ai business toolkit on a 9b398cfa c8ca 4b2e 9fc2 dc209a9686b9 0

Как избавиться от блокировки чата: асинхронные субагенты Hermes

Itinai.com lat lay of a medium sized ai business toolkit on a 9b398cfa c8ca 4b2e 9fc2 dc209a9686b9 0

Что изменилось в Hermes Agent?

Nous Research выпустила обновление Hermes Agent, которое переводит делегирование задач в асинхронный режим. Теперь инструмент delegate_task больше не «залипает» в родительском чате. Вы запускаете под‑агентов, получаете task_id и свободно продолжаете работать.

Кратко о субагентах

Субагент — это изолированный дочерний агент, получающий собственный разговор, терминальную сессию и набор инструментов. Он наследует API‑ключ, конфигурацию провайдера и пул учётных данных от родителя, но полностью независим в контексте: все, что нужно передать, делается через поля goal и context.

Синхронное vs асинхронное делегирование

  • Синхронное (delegate_task) – родитель ждёт завершения всех субагентов, чат блокируется.
  • Асинхронное (async_delegation набор инструментов) – сразу возвращается task_id, чат остаётся свободным.

Набор асинхронных инструментов

  • delegate_task_async – запустить субагент в фоне, получить task_id.
  • check_task – проверить статус и увидеть свежий вывод без блокировки.
  • steer_task – «подтолкнуть» уже запущенный субагент новым сообщением.
  • collect_task – дождаться завершения и получить полный результат.
  • cancel_task – принудительно остановить задачу.
  • list_tasks – список всех фоновых задач в текущей сессии.

Когда использовать асинхронный режим?

  • Длительные аналитические задачи (парсинг больших объёмов данных, обучение модели, генерация отчётов).
  • Одновременная работа над несколькими запросами – вы можете задавать новые вопросы родителю, пока субагенты «мелькают» в фоне.
  • Необходимость динамически корректировать процесс (добавить параметры, изменить цель) без перезапуска.

Как включить новую функцию

Для текущих пользователей достаточно выполнить одну команду в терминале:

hermes update

После обновления в конфигурационном файле config.yaml появятся новые эндпоинты async_delegation. При первом запуске рекомендуется проверить версию:

hermes --version

Если вывод показывает v2.4.0+ – всё готово к работе.

Пример использования

Допустим, нужно собрать статистику по 10 000 страниц сайта. Синхронно вы бы ждали час, а в асинхронном режиме:

# Запускаем субагент
task_id = delegate_task_async(
    goal="Собрать метрики SEO",
    context={"urls": ["https://example.com/page1", "..."]},
    tool="web_scraper"
)

# Сразу продолжаем чат
print("Запуск получен, ID задачи:", task_id)

# Периодически проверяем статус
status = check_task(task_id)
print("Статус:", status["state"])

# При необходимости меняем параметры
steer_task(task_id, {"max_depth": 3})

# В конце собираем результат
result = collect_task(task_id)
print("Итоги:", result["summary"])

Лучшие практики

  • Всегда задавайте короткую и чёткую цель (goal) – субагент не «читает» историю родителя.
  • Используйте context для передачи только необходимых данных (URL, параметры, токены).
  • Не храните большие объёмы данных в context – лучше передать ссылку на файл в облаке.
  • Регулярно вызывайте list_tasks и cancel_task для управления ресурсами.
  • Для критически важных задач сохраняйте task_id в базе, чтобы можно было восстановить статус после перезапуска.

Где посмотреть детали?

Официальный анонс в Твиттере от со‑основателя Nous Research Teknium 🪽. Полный код и описание новых методов находятся в репозитории GitHub проекта: github.com/nousresearch/hermes-agent.

Запустите свой ИИ проект бесплатно

ИИ-агенты искусственный интеллект онлайн для бизнеса

Лучший ИИ онлайн