Nika Gateway

Модели и провайдеры

Доступные модели, slug'и вида провайдер/модель и каталог GET /v1/models

Модели и провайдеры

Адресация моделей

Модель указывается slug'ом вида провайдер/модель:

{
  "model": "deepseek/deepseek-v4-pro",
  "messages": [{ "role": "user", "content": "Привет!" }]
}

Алиас auto выбирает самую дешёвую подходящую модель автоматически.

Провайдеры

ПровайдерПрефикс slugФормат APIТарификация
OpenAIopenai/OpenAI Chat Completionsтокены (input/output, кэш)
Anthropicanthropic/Messages API (конвертируется шлюзом)токены (input/output, cache read/write)
Kimi (Moonshot)kimi/OpenAI-совместимыйтокены
DeepSeekdeepseek/OpenAI-совместимыйтокены (cache hit/miss)
Xiaomi MiMomimo/OpenAI-совместимыйтокены
GLM (Zhipu)glm/OpenAI-совместимыйтокены (cache hit/miss)
Qwen (Alibaba)qwen/OpenAI-совместимыйтокены
Grok (xAI)grok/OpenAI-совместимыйтокены
Google Geminigemini/OpenAI-совместимыйтокены / изображения
Deepgramdeepgram/REST (prerecorded)секунды аудио
fal.ai (в разработке)fal/REST + очередь + webhooksмегапиксели / изображения / секунды видео

Примеры slug'ов: openai/gpt-5, anthropic/claude-sonnet-4.5, deepseek/deepseek-v4-pro, kimi/kimi-k2.6, glm/glm-5.2, qwen/qwen3-max, grok/grok-4, gemini/gemini-2.5-flash, mimo/mimo-v2.5-pro, deepgram/nova-3.

Каталог моделей

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

curl https://nikagateway.ru/v1/models \
  -H "Authorization: Bearer sk-tunnel-..."

Ответ совместим с форматом OpenAI GET /v1/models и дополнительно содержит тип модели, размер контекста, модальности (capabilities) и цены.

Каталог возвращает только доступные модели: у каждой есть поле status"active" (модель доступна) или "unavailable" (временно недоступна: сбой у провайдера или ручная пометка администратора). Модели без розничной цены и скрытые администратором в каталог не попадают вовсе — как и на лэндинг и в калькулятор стоимости.

Модальности модели (capabilities в ответе каталога):

  • text — текст (чат/эмбеддинги);
  • vision — изображения на входе (image-to-text);
  • audio-in — аудио на входе в чат (speech-to-text);
  • image-gen — генерация изображений (text-to-image);
  • image-edit — редактирование изображений (image-to-image).

Эндпоинты

  • POST /v1/chat/completions — единый OpenAI-совместимый endpoint для всех chat-моделей;
  • POST /v1/messages — нативный Anthropic Messages API (для клиентов вроде Claude Code), см. Claude (Anthropic);
  • POST /v1/audio/transcriptions — распознавание речи (Deepgram, multipart), см. Распознавание речи;
  • POST /v1/listen — нативный прокси Deepgram prerecorded;
  • прокси fal.ai: fal.run/{model}, queue.fal.run/{model} — в разработке.

Кэш-токены

Провайдеры тарифицируют повторное использование контекста дешевле. Шлюз учитывает это транзитом:

  • OpenAI: чтение из кэша — 0.25–0.5× от цены входных токенов;
  • Anthropic: запись в кэш — 1.25×, чтение — 0.1×;
  • DeepSeek / GLM: свои ставки cache hit/miss.

Скидка по кэшу отражается в usage ответа, а фактическая стоимость — в usage.cost_rub.

PII-маскирование

Для всех chat-моделей (включая /v1/messages) доступно автоматическое вырезание персональных данных из запросов с восстановлением в ответах — настраивается на API-ключ или пер-запросно полем pii.mode. Подробнее — PII-маскирование.

Надёжность

При ошибках апстрима (5xx, 429 от провайдера) шлюз выполняет повторные попытки и следит за health-check провайдеров. Ошибка провайдера не стоит вам денег: резерв возвращается полностью — см. Биллинг.

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

Ошибки, связанные с моделью

Запрос к скрытой или несуществующей модели отклоняется с 400 model_not_found:

{
  "error": {
    "message": "Модель не найдена или недоступна",
    "type": "invalid_request_error",
    "code": "model_not_found"
  }
}

Запрос к временно недоступной модели (status: "unavailable" в каталоге) отклоняется с 503 model_unavailable:

{
  "error": {
    "message": "Модель временно недоступна",
    "type": "server_error",
    "code": "model_unavailable"
  }
}

На 503 model_unavailable запрос к провайдеру не уходит и резерв не удерживается — безопасно повторить позже или выбрать другую модель из каталога. Общий список кодов — в Коды ошибок.