Перейти к содержимому
Команда ClaudexiaИНТЕГРАЦИЯ

Переезд на OpenAI-совместимый формат: одна строка вместо переписывания

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

Если ваш код написан под OpenAI SDK, сменить провайдера обычно можно одной строкой. Разберём, что при этом меняется, а что нет.

Что меняется

Только база и ключ:

from openai import OpenAI

client = OpenAI(
    base_url="https://api.claudexia.tech/v1",
    api_key="sk_cdx_ваш_ключ",
)

Всё остальное в коде остаётся: методы, структура сообщений, обработка стрима, парсинг ответа.

Что не меняется

Формат сообщений с ролями, параметры вроде температуры и максимума токенов, стриминг через server-sent events, структура ответа с массивом вариантов. Библиотеки, написанные под OpenAI, продолжают работать.

Где обычно ломается

Имя модели. Идентификаторы у провайдеров разные. Это самое частое место отказа при переезде, и оно всегда даёт понятную ошибку с кодом 400.

Параметры, которых нет. Некоторые специфичные поля поддерживаются не везде. Если вы использовали что-то экзотическое, проверьте отдельно.

Жёстко зашитый домен. Иногда база указана не в конфиге, а прямо в коде в нескольких местах. Грепните проект по api.openai.com, прежде чем радоваться.

Проверка за две минуты

Самый быстрый способ убедиться, что связь есть:

curl https://api.claudexia.tech/v1/chat/completions \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"claude-sonnet-4.6","messages":[{"role":"user","content":"скажи ok"}]}'

Если пришёл ответ, дальше проблема будет только в именах моделей или в специфичных параметрах.

Почему это важно для выбора провайдера

Совместимость работает в обе стороны. Переехать к провайдеру легко, уйти от него тоже. Тот, кто заставляет переписывать код под свой формат, держит вас издержками смены, а не качеством.

Мы держим оба формата на одном эндпоинте, Anthropic Messages и OpenAI Chat Completions, именно поэтому. Код, написанный под нас, работает и с другими.

Коротко

Смена базы и ключа, потом проверка имён моделей. Если код был написан под стандартный SDK, переезд занимает минуты, а не спринт.