Обзор архитектуры

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

Обзор

В основе Hermes лежит цикл «Мысль-Действие-Результат», который позволяет агенту анализировать текущее состояние, принимать решение о следующем шаге и выполнять его с помощью доступных инструментов.

Основные компоненты

Архитектура Hermes состоит из трех ключевых уровней:

  1. Оркестратор (Orchestrator): Центральный мозг Hermes, который управляет ходом беседы, хранит историю контекста и принимает решения о вызове инструментов.
  2. Интерфейс LLM (LLM Interface): Уровень абстракции, который унифицирует взаимодействие с различными провайдерами (OpenRouter, OpenAI, Ollama). Он отвечает за формирование промптов и парсинг ответов.
  3. Уровень выполнения инструментов (Tool Execution Layer): Система, обеспечивающая выполнение команд в терминале, операций с файловой системой, запуск браузера и работу через протокол MCP.

Поток данных

Поток данных в Hermes следует строгому циклу:

  • Ввод: Получение сообщения от пользователя (текст или голос) и сбор текущего контекста (файлы, переменные окружения).
  • Анализ: Отправка контекста в LLM и получение решения.
  • Действие: Если LLM запрашивает вызов инструмента, Оркестратор проверяет безопасность и выполняет запрос.
  • Цикл: Результат действия возвращается в LLM для анализа успеха и формирования следующего шага или финального ответа пользователю.

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