title: Provider Routing description: Configure OpenRouter provider preferences to optimize for cost, speed, or quality. sidebar_label: Provider Routing sidebar_position: 7 lang: ru


Маршрутизация провайдера

При использовании OpenRouter в качестве поставщика LLM агент Hermes поддерживает маршрутизацию поставщика — детальный контроль над тем, какие базовые поставщики ИИ обрабатывают ваши запросы и как им распределяются приоритеты.

OpenRouter маршрутизирует запросы многим провайдерам (например, Anthropic, Google, AWS Bedrock, Together AI). Маршрутизация поставщика позволяет оптимизировать затраты, скорость, качество или обеспечить соблюдение конкретных требований поставщика.

Конфигурация

Добавьте раздел provider_routing в свой ~/.hermes/config.yaml:

provider_routing:
  sort: "price"           # How to rank providers
  only: []                # Whitelist: only use these providers
  ignore: []              # Blacklist: never use these providers
  order: []               # Explicit provider priority order
  require_parameters: false  # Only use providers that support all parameters
  data_collection: null   # Control data collection ("allow" or "deny")

:::информация Маршрутизация поставщика применяется только при использовании OpenRouter. Это не имеет никакого эффекта при прямом подключении к поставщику (например, при прямом подключении к Anthropic API).

Опции

sort

Управляет тем, как OpenRouter ранжирует доступных поставщиков по вашему запросу.

Значение Описание
"price" Сначала самый дешевый провайдер
"throughput" Самое быстрое количество токенов в секунду
"latency" Самое низкое время первого токена
provider_routing:
  sort: "price"

only

Белый список имен провайдеров. Если установлено, будут использоваться только эти поставщики. Все остальные исключены.

provider_routing:
  only:
    - "Anthropic"
    - "Google"

ignore

Черный список имен провайдеров. Эти провайдеры никогда не будут использоваться, даже если они предлагают самый дешевый или быстрый вариант.

provider_routing:
  ignore:
    - "Together"
    - "DeepInfra"

order

Явный порядок приоритетов. Поставщики, перечисленные первыми, являются предпочтительными. Поставщики, не включенные в список, используются в качестве резервных.

provider_routing:
  order:
    - "Anthropic"
    - "Google"
    - "AWS Bedrock"

require_parameters

При true OpenRouter будет маршрутизироваться только к поставщикам, которые поддерживают все параметры вашего запроса (например, temperature, top_p, tools и т. д.). Это позволяет избежать бесшумного сброса параметров.

provider_routing:
  require_parameters: true

data_collection

Определяет, могут ли поставщики использовать ваши подсказки для обучения. Возможные варианты: "allow" или "deny".

provider_routing:
  data_collection: "deny"

Практические примеры

Оптимизация затрат

Перейдите к самому дешевому доступному провайдеру. Подходит для массового использования и разработки:

provider_routing:
  sort: "price"

Оптимизация для скорости

Отдайте приоритет поставщикам с низкой задержкой для интерактивного использования:

provider_routing:
  sort: "latency"

Оптимизация пропускной способности

Лучше всего подходит для генерации длинных форм, где имеет значение количество токенов в секунду:

provider_routing:
  sort: "throughput"

Привязка к конкретным поставщикам

Убедитесь, что все запросы проходят через определенного поставщика для обеспечения согласованности:

provider_routing:
  only:
    - "Anthropic"

Избегайте конкретных поставщиков

Исключите поставщиков, которых вы не хотите использовать (например, в целях конфиденциальности данных):

provider_routing:
  ignore:
    - "Together"
    - "Lepton"
  data_collection: "deny"

Предпочтительный порядок с резервными вариантами

Сначала попробуйте предпочитаемых вами поставщиков, а если они недоступны, вернитесь к другим:

provider_routing:
  order:
    - "Anthropic"
    - "Google"
  require_parameters: true

Как это работает

Настройки маршрутизации поставщика передаются в API OpenRouter через поле extra_body.provider при каждом вызове API. Это касается обоих:

Конфигурация маршрутизации считывается из config.yaml и передается в качестве параметров при создании AIAgent:

providers_allowed  ← from provider_routing.only
providers_ignored  ← from provider_routing.ignore
providers_order    ← from provider_routing.order
provider_sort      ← from provider_routing.sort
provider_require_parameters ← from provider_routing.require_parameters
provider_data_collection    ← from provider_routing.data_collection

:::совет Вы можете комбинировать несколько вариантов. Например, можно отсортировать по цене, но исключить определенных поставщиков и потребовать поддержку параметров:

provider_routing:
  sort: "price"
  ignore: ["Together"]
  require_parameters: true
  data_collection: "deny"

Поведение по умолчанию

Если раздел provider_routing не настроен (по умолчанию), OpenRouter использует собственную логику маршрутизации по умолчанию, которая обычно автоматически балансирует стоимость и доступность.

💡 Tip

Маршрутизация поставщика и резервные модели Поставщики контролируют маршрутизацию, которые **суб-провайдеры в OpenRouter** обрабатывают ваши запросы. Для автоматического переключения на совершенно другого поставщика в случае сбоя основной модели см. раздел [Резервные поставщики](/docs/user-guide/features/fallback-providers).