Автор инструкции: @dezart5
Спасибо ему [цитирую его]
если у вас будут проблемы с hermes, то закиньте этот текст - пусть проверит. У меня такая проблема была
Проблема: баг в httpx 0.28.1
Letaido — OpenRouter-совместимый прокси. Он шлёт SSE heart-beat комментарии в стриме:
: OPENROUTER PROCESSING
Hermes для каждого запроса инжектирует кастомный httpx-клиент с TCP keepalive:
httpx.Client(transport=httpx.HTTPTransport(socket_options=[SO_KEEPALIVE, TCP_KEEPIDLE, ...]))
Когда transport передаётся явно — httpx 0.28.1 получает статус 200, но тело стрима не доходит до iter_lines(). Зависает на 30-60 сек, потом ReadTimeout / RemoteProtocolError. Отсюда и APIConnectionError в Hermes.
При этом httpx.Client() без явного transport — работает нормально, хотя внутри строит тот же HTTPTransport через _init_transport(). Точная причина в httpx не установлена, но воспроизведено чисто.
Решение: пропатчил run_agent.py — метод _build_keepalive_http_client теперь проверяет base_url. Для letaido.app, openrouter.ai, freemodel.dev возвращает plain httpx.Client() вместо клиента с explicit transport. Для всех остальных провайдеров поведение не изменилось.
UPD: Вроде уже пофиксили абуз
📌 Чаты с халявой ⚡ — удобно закрепить
😎 GIG AI - подписаться Отзывы