Резервные модели (Model Fallbacks)

Автоматическое перенаправление запросов на альтернативные модели при перегрузке или сбое основного провайдера.

Когда в продакшене основной апстрим внезапно возвращает ошибку 500 Overloaded или 429 Rate Limit Exceeded, обычное приложение падает с ошибкой перед пользователем. Функция Model Fallbacks в Api Router решает эту проблему прозрачно: вы указываете список запасных моделей, и шлюз переключается на них за доли секунды.

Схема конфигурации резервных цепочек

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

Ключевые технические возможности

  • Бесшовное переключение: Клиентское приложение получает успешный ответ HTTP 200 даже в момент аварии у основного поставщика.
  • Сохранение формата сообщений: Шлюз автоматически нормализует форматы промптов между моделями разных провайдеров.
  • Диагностический заголовок: В ответе передается заголовок x-router-fallback: true, указывающий, какая модель сработала.
  • Снижение потерь конверсий: Пользователи в чатах и приложениях не сталкиваются с прерыванием обслуживания.

Пример интеграции в коде

Ниже представлен базовый пример отправки запроса с использованием стандартного клиента. Убедитесь, что ваш токен создан в разделе Ключи управления API:


import OpenAI from "openai";

// Инициализация стандартного SDK с базовым URL Api Router
const client = new OpenAI({
  baseURL: "https://api-router.velar.plus/v1",
  apiKey: process.env.API_ROUTER_KEY, // Ваш ключ от сервиса
});

async function run() {
  const response = await client.chat.completions.create({
    model: "anthropic/claude-sonnet", // Семейство модели без жесткой привязки к устаревающим номерам
    messages: [
      { role: "system", content: "Вы профессиональный инженер-архитектор." },
      { role: "user", content: "Как настроить надежную маршрутизацию запросов?" }
    ],
    temperature: 0.2,
  });

  console.log("Ответ модели:", response.choices[0].message.content);
}

run();
  

Связанные разделы документации

Для глубокого погружения в тему изучите следующие материалы: