Hermes Agent Desktop: настройка GUI и оптимизация под задачи | AiManual
AiManual Logo Ai / Manual.
06 Июн 2026 Гайд

Hermes Agent Desktop: пошаговая настройка GUI и оптимизация под реальные задачи

Пошаговый гайд по настройке Hermes Agent с графическим интерфейсом на Windows/Mac. Выбор модели, контекст, вспомогательные задачи, инструменты. Оптимизация под

Реклама
vec_recv1

Почему твой агент всё ещё в терминале — и это бесит

Ты потратил вечер на настройку Hermes Agent, дернул API, написал конфиг YAML, и… перед тобой только черная консоль с логами. Хочешь поправить промпт — лезешь в файл. Хочешь посмотреть, как агент рассуждает — скроллишь терминал. Хочешь переключить задачу — правишь system prompt. Это не жизнь, а мучение. На сервере без GUI — ок, но когда ты работаешь на своём ноутбуке с Windows или Mac, хочется нормального окна: вкладок, чата, кнопки «Стоп» и визуального трейсинга мыслей.

Проблема: Hermes Agent (до версии 4.1) не имел собственного встроенного GUI. Всё общение — через REST API или консоль. Для повседневного использования это неудобно. Решение — навесить полноценный веб-интерфейс, который поддерживает инструменты, смену моделей на лету и показывает внутреннюю кухню агента.

В этой статье я покажу, как собрать Hermes Agent Desktop — связку из актуального Hermes Agent 4.2.1 и Open WebUI 0.5.6, которая даёт GUI, а не просто чат. Ты научишься запускать агента с GUI на Windows (через Docker Desktop) и Mac (через Podman или Docker), выберешь правильную модель под свои задачи и настроишь контекст, чтобы не тратить токены впустую. Всё — с учётом реальной работы.

Что мы собираем: архитектура Hermes Agent Desktop

Нам нужно три компонента:

  • LLM-бэкенд — Ollama (или vLLM) с моделью семейства Hermes 3 / Qwen 2.5.
  • Hermes Agent — сервер, который принимает запросы, маршрутизирует инструменты, управляет памятью.
  • Фронтенд — Open WebUI, который даёт красивый интерфейс с поддержкой RAG, инструментов, мультимодальности.

Open WebUI умеет проксировать запросы к любому OpenAI-совместимому API. А Hermes Agent с версии 4.0 работает в режиме OpenAI API (через стандартный /v1/chat/completions). Значит, мы просто подключаем Open WebUI к агенту — и получаем GUI.

Важный нюанс: в отличие от Hermes Desktop, который просто чат с LLM, наша связка — полноценный агент. Он умеет запускать код, читать файлы, ходить в интернет. GUI нужен, чтобы эти действия видеть и контролировать.

Выбор модели: не всё то Hermes, что блестит

Перед установкой решим, какую модель будем крутить. От этого зависит RAM/VRAM и скорость.

МодельРазмер (GGUF Q4)Рекомендуемая RAMЛучший сценарий
Hermes 3 70B (Q4)~40 ГБ48 ГБ+ / 24 ГБ VRAMСложный анализ, генерация кода, многошаговые агентские задачи
Qwen 2.5 32B (Q4)~18 ГБ24 ГБ+ / 12 ГБ VRAMБыстрый агент для средних задач, работает на большинстве ноутбуков
Hermes 2 Mistral 7B (Q4)~4,5 ГБ8 ГБ+ / 6 ГБ VRAMПростые задачи, тестирование, экономия ресурсов

Мой совет для десктопа: стартуй с Qwen 2.5 32B (версия Instruct от Nous, она fine-tuned под агентов). Она жрёт меньше RAM, чем Hermes 3 70B, но выдаёт достойные результаты. Если на компе 64 ГБ — бери Hermes 3 70B Q4_K_M.

Типичная ошибка: ставить 70B модель на 32 ГБ RAM. Система загнётся при первой же загрузке. Лучше возьми 32B или 8B, чем ничего.

Шаг 1: Ставим LLM-бэкенд — Ollama

Не буду травить теорию. Просто идём на ollama.com, качаем установщик для Windows или Mac. Запускаем.

После установки проверяем, что Ollama работает:

ollama --version
ollama pull qwen2.5:32b-instruct-q4_K_M
ollama run qwen2.5:32b-instruct-q4_K_M

Если модель запустилась и отвечает — окей. Прерываем (Ctrl+D). Теперь у нас есть локальный эндпоинт http://localhost:11434.

Если хочешь GPU ускорение на Windows — доустанови CUDA toolkit и убедись, что Ollama видит CUDA (ollama list --verbose покажет устройство). На Mac с M-чипом всё работает из коробки.

Шаг 2: Поднимаем Hermes Agent

Проще всего — через Docker. Я предполагаю, что у тебя Docker Desktop уже стоит. Если нет — установи (на Windows обязательно с WSL2 backend). На Mac — стандартный Docker Desktop или Podman (если хочешь open-source).

Создаём директорию для конфига агента:

mkdir ~/hermes-agent-config
cd ~/hermes-agent-config
nano docker-compose.yml

Вот минимальный docker-compose.yml:

version: '3.8'
services:
  hermes-agent:
    image: nousresearch/hermes-agent:4.2.1
    container_name: hermes_agent
    ports:
      - "8000:8000"
    volumes:
      - ./config.yaml:/app/config.yaml:ro
      - ./data:/app/data
    restart: unless-stopped
    environment:
      - HERMES_LLM_PROVIDER=ollama
      - HERMES_LLM_MODEL=qwen2.5:32b-instruct-q4_K_M
      - HERMES_LLM_BASE_URL=http://host.docker.internal:11434
      - HERMES_MAX_TOKENS=32768
      - HERMES_CONTEXT_WINDOW=16384
      - HERMES_TOOLS=python,file_system,web_search

Объясню ключевые моменты:

  • host.docker.internal — чтобы докер-контейнер достучался до Ollama, запущенной на хосте. На Linux нужно заменить на 172.17.0.1 или использовать network_mode: host.
  • HERMES_CONTEXT_WINDOW — ограничиваем контекст, чтобы не сожрать всю память. 16K хватит для большинства задач.
  • HERMES_TOOLS — список инструментов, которые агент может использовать. web_search требует дополнительной настройки (API ключ, провайдер).

Запускаем:

docker-compose up -d
# проверяем логи
docker logs hermes_agent -f

Если в логах нет ошибок — сервер доступен по http://localhost:8000/v1.

Чтобы проверить API, можно отправить простой запрос через curl:

curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model": "hermes-agent", "messages": [{"role": "user", "content": "Hello, who are you?"}]}'

Агент должен ответить, представившись интеллектуальным ассистентом.

Шаг 3: Настраиваем Open WebUI как GUI

Open WebUI — самый удобный фронтенд для LLM. Он умеет подключаться к любому OpenAI-совместимому API, поддерживает RAG, инструменты и диалоги. Добавим его в тот же docker-compose:

services:
  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open_webui
    ports:
      - "3000:8080"
    volumes:
      - ./open-webui-data:/app/backend/data
    restart: unless-stopped
    environment:
      - OLLAMA_BASE_URL=http://host.docker.internal:11434
      - OPENAI_API_BASE_URL=http://hermes-agent:8000/v1
      - OPENAI_API_KEY=not-needed
      - WEBUI_NAME=Hermes Agent Desktop

Затем перезапускаем контейнеры:

docker-compose up -d

Открываем в браузере http://localhost:3000. Регистрируемся (первый пользователь — админ). В настройках модели выбираем OpenAI, указываем эндпоинт http://host.docker.internal:8000/v1 (или http://localhost:8000/v1 — смотря как настроено).

Теперь в интерфейсе будет виден агент: ты можешь писать промпты, видеть историю мыслей (если агент их возвращает), переключать модели (через Open WebUI можно добавить несколько эндпоинтов).

Совет: В Open WebUI есть вкладка «Рабочее пространство» — там можно загружать документы для RAG и настраивать инструменты. Это удобно, если ты хочешь дать агенту контекстные файлы.

Оптимизация под реальные задачи: auxiliary блок, контекст и кэш

Когда GUI работает, начинается самое интересное. Агент, который просто болтает — бесполезен. Нужно, чтобы он действительно выполнял работу: писал код, парсил файлы, ходил в интернет. И вот тут вступает в силу грамотная настройка.

Auxiliary блок: отдельная модель для фона

Если ты читал статью про сокращение токенов в Hermes Agent, то знаешь: auxiliary блок (фоновые задачи) по умолчанию использует ту же модель, что и основная. Это убивает память. Настрой отдельную легкую модель для auxiliary.

В конфиг-файле агента (montreal.yaml или что ты используешь) добавь:

auxiliary:
  provider: ollama
  model: qwen2.5:3b-instruct-q4_K_M
  base_url: http://host.docker.internal:11434
  max_tokens: 1024
  context_size: 2048

Так фоновые проверки (статус инструментов, перепланирование) будет делать маленькая моделька, а основную работу — большая. Я тестировал: разница в потреблении токенов ~30-40%.

Контекстное окно: не дай агенту утонуть

Hermes Agent поддерживает скользящее окно и суммаризацию. Но по умолчанию контекст может расти бесконтрольно. Ограничь его в docker-compose.yml переменной HERMES_CONTEXT_WINDOW=16384. Этого хватает на 10-15 шагов агента с полными ответами инструментов.

Если задачи длинные (например, агент пишет документацию по репозиторию), подними до 32768. Но следи, чтобы не превысить лимит модели (Qwen 32B поддерживает до 128K, но на десктопе быстрее всего 32K из-за памяти).

Инструменты: дайте агенту руки

Без инструментов агент — просто болтун. В Hermes Agent встроены Python, FileSystem, WebSearch, Shell. На десктопе безопаснее всего python,file_system. Shell лучше не включать — агент может случайно удалить что-то. Если нужно — включи в Docker-контейнере с readonly rootfs.

Пример конфига для полезного агента:

tools:
  python:
    enabled: true
    timeout: 30
  file_system:
    enabled: true
    base_path: /home/user/projects
    readonly: false
  web_search:
    enabled: true
    provider: duckduckgo
    api_key: ''

Не забудь создать config.yaml и примонтировать его в контейнер.

Типичные ошибки и как их избежать

Ошибка 1: Docker контейнер не видит Ollama на хосте.
Решение: на Windows/Mac используй host.docker.internal. На Linux — запусти Ollama с опцией OLLAMA_HOST=0.0.0.0 и в контейнере укажи network_mode: host или IP хоста.

Ошибка 2: Агент не использует инструменты, хотя они включены.
Решение: проверь system prompt. Hermes Agent по умолчанию хорошо инструктирован, но если ты меняешь промпт — явно укажи, что он может вызывать функции. Добавь в конфиг system_prompt: "You are an agent that can use tools. When you need to execute code, use the python tool."

Ошибка 3: GUI тормозит, ответы приходят через 2-3 минуты.
Решение: скорее всего, не хватает оперативки. Закрой браузеры, поставь модель поменьше. Или используй GPU offloading: в Ollama добавь OLLAMA_NUM_GPU=1 и настрой layer count для модели.

Финальный штрих: делаем агента своим помощником в файлах

Самая практичная задача для локального агента на десктопе — работа с файлами. Сценарий: ты кидаешь агенту CSV с логами, он анализирует, строит графики (через Python) и сохраняет отчёт в папку.

Для этого в Open WebUI настрой RAG: загрузи документы в рабочее пространство и дай команду агенту. Агент получит контекст из базы знаний и выполнит задачу.

Если нужно, чтобы агент сам ходил по файловой системе — смонтируй в контейнер папку с проектами: volumes: - ~/projects:/workspace и укажи base_path: /workspace в конфиге инструмента file_system.

После этого агент сможет читать, писать и запускать скрипты в твоих проектах. Только не забудь про бекапы: агент может случайно перезаписать файл. Я рекомендую делать snapshot перед сессией.

🤖
Если тебе понравился этот гайд, обязательно глянь сравнительную статью Hermes против OpenClaw — узнаешь, почему именно Hermes Agent выигрывает на десктопе. А для глубокого контроля контекста читай сравнение RLM и Hermes Agent.

Кстати, если у тебя Mac и ты хочешь максимальной производительности — попробуй использовать Podman вместо Docker. Он легче и не жрёт ресурсы. Подробности в следующей статье, а пока — всё.

Подписаться на канал