Переход с OpenAI

В большинстве приложений, совместимых с OpenAI, достаточно изменить три параметра конфигурации:

  1. Заменить ключ API.
  2. Задать базовый URL https://getrouter.ai/v1.
  3. Выбрать идентификатор модели, доступной в GetRouter.

Python

До:

from openai import OpenAI

client = OpenAI(api_key="OPENAI_API_KEY")

После:

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://getrouter.ai/v1",
)

response = client.chat.completions.create(
    model="MODEL_ID",
    messages=[{"role": "user", "content": "Привет"}],
)

Node.js / TypeScript

До:

const client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY })

После:

const client = new OpenAI({
  apiKey: process.env.GETROUTER_API_KEY,
  baseURL: 'https://getrouter.ai/v1',
})

const response = await client.chat.completions.create({
  model: 'MODEL_ID',
  messages: [{ role: 'user', content: 'Привет' }],
})

Переменные окружения

Если приложение читает стандартные переменные окружения OpenAI, зачастую достаточно изменить конфигурацию среды выполнения, не затрагивая исходный код:

export OPENAI_API_KEY="YOUR_API_KEY"
export OPENAI_BASE_URL="https://getrouter.ai/v1"

Точные имена переменных окружения зависят от приложения. Убедитесь, что ваш SDK или инструмент поддерживает пользовательский базовый URL.

Проверьте совместимость возможностей

Поддерживаются форматы запросов, совместимые с OpenAI, но доступные возможности зависят от выбранной модели и эндпоинта. Проверьте функции, которые использует ваше приложение:

  • Chat Completions или Responses API
  • Потоковая передача
  • Вызов инструментов или функций
  • Структурированный вывод
  • Распознавание изображений или другой мультимодальный ввод
  • Эмбеддинги, изображения или аудио
Tip

Начните переход с короткого непотокового запроса. Затем по очереди включайте потоковую передачу, инструменты, рассуждение и другие расширенные поля.

Распространённые проблемы при переходе

Запрос отправляется исходному провайдеру

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

URL содержит /v1/v1

Возможно, приложение добавляет /v1 автоматически. Используйте формат базового URL, который требуется конкретному клиенту.

Модель отклоняется

Замените название модели исходного провайдера точным идентификатором со страницы GetRouter Models.

Chat работает, а Responses — нет

Эти API используют разные эндпоинты и форматы событий ответа. Убедитесь, что модель и интеграция поддерживают POST /v1/responses.

Дальнейшие действия