Дайджесты новостей
Концептуальный плакат обновления Hermes Agent V0.21: сетевой мост протокола A2A связывает двух автономных агентов.

Обновление Hermes Agent V0.21: протокол связи A2A 1.0, голосовой инференс и верификация цитирований

Мир прикладного искусственного интеллекта долгое время страдал от глухой и противоестественной фрагментации. У каждого крупного технологического вендора или открытого фреймворка существовал собственный изолированный остров: боты внутри одной библиотеки прекрасно общались друг с другом, но не были способны сказать ни слова агентам из соседней экосистемы. Если у тебя работает агент анализа данных на LangGraph, агент тестирования на CrewAI и локальный консольный воркер, научить их безопасно обмениваться задачами по сети до сих пор было сложнейшей инженерной задачей.

Лаборатория Nous Research сделала фундаментальный шаг к объединению разрозненных ИИ-систем, представив знаковый релиз Hermes Agent V0.21 под кодовым названием «The Herald Release». Центральным новшеством версии стала открытая спецификация и реализация протокола межсетевой коммуникации агентов — A2A (Agent-to-Agent Protocol v1.0). Протокол устраняет стены между замкнутыми системами и превращает агентов в полноправные сетевые сервисы.

Кроме того, в релиз вошли модуль локального голосового инференса с ультранизкой задержкой и детерминированный механизм валидации цитат. Я развернул сетевой узел Hermes, протестировал протокол A2A в локальной сети и проверил качество фактчекинга на реальных задачах. Давай посмотрим, как устроены эти архитектурные новшества.

Двунаправленный протокол A2A 1.0: агент как клиент и сервер

Протокол A2A v1.0 превращает каждого запущенного агента в независимый сетевой узел, работающий по стандарту JSON-RPC поверх HTTP и WebSocket. При этом Hermes Agent может функционировать одновременно в двух сетевых режимах:

  1. Режим сервера (Server Mode): Hermes поднимает защищенный сетевой сокет, публикует манифест своих навыков через эндпоинт GET /a2a/v1/capabilities и ждет входящих поручений на POST /a2a/v1/tasks. Внешние скрипты, корпоративные CI/CD-пайплайны или удаленные боты могут делегировать ему задачи с криптографической аутентификацией по токенам;
  2. Режим клиента (Client Mode): Агент обнаруживает другие A2A-совместимые узлы в локальной сети или через корпоративный сервисный реестр. Для модели удаленный агент выглядит как обычный локальный инструмент: она просто вызывает функцию delegate_task(target="agent-lawyer", input={...}), не задумываясь о сетевой маршрутизации и протоколах сериализации данных.

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

Конфигурация сетевого сокета и клиентский вызов на Python

Настройка сервера A2A в файле конфигурации hermes.config.json выглядит предельно лаконично и понятно:

{
  "a2a_server": {
    "enabled": true,
    "listen_host": "0.0.0.0",
    "listen_port": 7443,
    "auth_token_hash": "sha256:d8e8fca2dc0f896f7e8a9b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e",
    "advertised_name": "Hermes-Security-Auditor",
    "capabilities": ["static_analysis", "test_generation", "vulnerability_scan"]
  }
}

А вызов удаленного агента через протокол A2A на стороне клиента реализуется следующим асинхронным скриптом на Python:

import httpx
import json

async def delegate_to_remote_agent(remote_url: str, task_payload: dict, auth_token: str) -> dict:
    """Делегирует выполнение задачи удаленному A2A-агенту с проверкой цитирования."""
    headers = {
        "Authorization": f"Bearer {auth_token}",
        "Content-Type": "application/json"
    }
    payload = {
        "protocol": "a2a-v1.0",
        "task_id": "task_20261030_sec_01",
        "action": "execute_task",
        "input": task_payload,
        "require_citation_verification": True
    }
    
    async with httpx.AsyncClient(timeout=60.0) as client:
        response = await client.post(f"{remote_url}/a2a/v1/tasks", headers=headers, json=payload)
        response.raise_for_status()
        result = response.json()
        print(f"[A2A Узел] Задача принята удаленным агентом: {result.get('worker_node')}")
        return result

Голосовой инференс реального времени и победа над задержкой

Вторым важнейшим новшеством релиза V0.21 стало внедрение встроенного модуля локального голосового взаимодействия (Real-Time Voice Engine). Раньше голосовой диалог с агентом требовал сложной связки сторонних облачных API: сначала запись аудио улетала на сервер транскрибации Whisper, затем текст передавался в LLM, а итоговый ответ отправлялся в генератор речи. Суммарная задержка такого тройного перелета составляла от двух до четырех секунд, превращая диалог в мучительное ожидание.

В Hermes V0.21 применен легковесный стек прямого голосового инференса на базе оптимизированного движка llama.cpp. Модель работает непосредственно с сырым аудиопотоком через WebSocket-соединение. Задержка диалогового отклика (Voice Latency) на стандартной рабочей станции с видеокартой уровня RTX 4090 упала до 280–350 миллисекунд. Ты говоришь фразу в микрофон — и агент отвечает тебе мгновенно, без ощущения неловкой паузы на линии.

Детерминированная верификация цитат (Citation Verification)

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

В релизе Hermes V0.21 разработчики Nous Research внедрили жесткий детерминированный строковый валидатор — Citation Verification Harness:

  • Когда агент в своем ответе оформляет цитату или делает ссылку на источник, валидатор перехватывает исходящее сообщение до его отправки пользователю;
  • Система автоматически обращается к исходному документу или файлу в репозитории, извлекает указанный фрагмент и вычисляет расстояние Левенштейна;
  • Если цитата совпадает с оригиналом с точностью выше 95%, ответ верифицируется и помечается зеленым бейджем;
  • Если же цитата искажена или отсутствует в источнике, валидатор блокирует вывод и принудительно возвращает задачу агенту с системным предупреждением: «Ошибка верификации цитаты: фрагмент не найден в файле. Перепроверьте факты».

Hermes Agent V0.21 закладывает основы интернета агентов (Agentic Internet). Протокол A2A 1.0 решает проблему изоляции и позволяет разнородным системам объединяться в распределенные сети для решения сложнейших прикладных задач с гарантированной точностью фактов.