Как перенести проект с OpenAI на TokenMaster: замена base_url и ключа

· миграция openai api разработка

Перенести проект с OpenAI на совместимый шлюз TokenMaster проще, чем кажется: код менять почти не нужно. Достаточно заменить адрес API (base_url) на https://tokenmaster.ru/v1 и подставить новый ключ sk-… — дальше запросы пойдут к моделям DeepSeek, GLM и Qwen через тот же OpenAI-совместимый интерфейс. В этой статье разберём миграцию по шагам: от замены настроек до проверки работы.

Что понадобится

  • Проект, который уже работает с OpenAI API (официальный SDK или прямые HTTP-запросы).
  • API-ключ TokenMaster вида sk-… (создаётся в разделе «Ключи» после регистрации на tokenmaster.ru).
  • Название модели, которую будете использовать (например, deepseek-chat, glm-4-plus или qwen-max).
  • Доступ в интернет, чтобы проверить первый запрос после миграции.

Пошаговая миграция

Главное изменение — адрес API. У OpenAI он выглядит как https://api.openai.com/v1, у TokenMaster — https://tokenmaster.ru/v1. Ключ при этом остаётся прежним по формату: начинается с sk-.

В официальном Python-клиенте openai достаточно указать оба параметра при создании клиента:

from openai import OpenAI

client = OpenAI(
    base_url="https://tokenmaster.ru/v1",
    api_key="sk-ваш-ключ",
)

response = client.chat.completions.create(
    model="deepseek-chat",
    messages=[
        {"role": "user", "content": "Привет! Как дела?"},
    ],
)

print(response.choices[0].message.content)

В Node.js с пакетом openai то же самое делается через baseURL:

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://tokenmaster.ru/v1",
  apiKey: "sk-ваш-ключ",
});

const completion = await client.chat.completions.create({
  model: "deepseek-chat",
  messages: [{ role: "user", content: "Привет! Как дела?" }],
});

console.log(completion.choices[0].message.content);

Если вы работаете без SDK и шлёте запросы напрямую по HTTP, достаточно поменять хост в URL:

import requests

response = requests.post(
    "https://tokenmaster.ru/v1/chat/completions",
    headers={"Authorization": "Bearer sk-ваш-ключ"},
    json={
        "model": "deepseek-chat",
        "messages": [{"role": "user", "content": "Привет!"}],
    },
)

print(response.json()["choices"][0]["message"]["content"])

Удобный приём — не хардкодить адрес и ключ в коде, а вынести их в переменные окружения. Официальный SDK openai сам подхватывает OPENAI_BASE_URL и OPENAI_API_KEY, поэтому в проекте можно ничего не менять, а задать значения в окружении:

export OPENAI_BASE_URL="https://tokenmaster.ru/v1"
export OPENAI_API_KEY="sk-ваш-ключ"

Что проверить после замены:

  • Названия моделей. Модели OpenAI (gpt-4o, gpt-3.5-turbo) на TokenMaster не существуют. Замените их на актуальные: deepseek-chat, glm-4-plus, qwen-max и другие из каталога на tokenmaster.ru/pricing.
  • Эндпоинт чата. Запросы идут на /v1/chat/completions — ровно как у OpenAI, поэтому менять путь в самом запросе не нужно.
  • Параметры. Стандартные поля messages, temperature, max_tokens, stream работают без изменений.

Подключение TokenMaster

TokenMaster — это AI-шлюз с OpenAI-совместимым API. Подключение сводится к двум значениям:

  • Base URL: https://tokenmaster.ru/v1
  • API Key: ваш ключ вида sk-…

Через один ключ и один баланс доступны модели DeepSeek, GLM (Zhipu) и Qwen. Оплата — из России, без привязки к зарубежной карте, поэтому не нужны посредники для пополнения зарубежного аккаунта OpenAI. Актуальный список моделей и цены — на tokenmaster.ru/pricing, документация по API — на tokenmaster.ru/docs.

Проверка работы

Запустите скрипт из примера выше. Если в ответ пришёл текст модели — миграция завершена. Если появилась ошибка, вот типичные случаи:

  • 401 / invalid api key — ключ скопирован не полностью или неверно; проверьте, что он начинается с sk- и взят из раздела «Ключи».
  • connection error — Base URL указан неправильно. Он должен быть ровно https://tokenmaster.ru/v1, без лишнего /chat/completions в конце.
  • insufficient quota — на балансе недостаточно средств; пополните его в личном кабинете.

Частые вопросы

Нужно ли переписывать весь код при переходе с OpenAI? Нет. OpenAI-совместимый API принимает те же форматы запросов и ответов, поэтому меняются только base_url, ключ и названия моделей.

Какие модели использовать вместо gpt-4o? Ближайшие по назначению аналоги — deepseek-chat, glm-4-plus, qwen-max. Полный актуальный список — на tokenmaster.ru/pricing.

Работает ли потоковая генерация (streaming)? Да. Параметр stream: true поддерживается, так что чат-интерфейсы и ассистенты продолжат выдавать ответ по мере генерации.

Можно ли вернуться обратно на OpenAI? Да, в любой момент. Поскольку код не менялся, достаточно вернуть прежний base_url, ключ и названия моделей — проект снова заработает с OpenAI без правок логики.

Итог

Миграция с OpenAI на TokenMaster — это замена двух строк конфигурации, а не переписывание проекта. Укажите Base URL https://tokenmaster.ru/v1, подставьте ключ sk-…, обновите названия моделей — и ваш код продолжит работать без изменений логики, но уже с моделями DeepSeek, GLM и Qwen и оплатой из России. Единый ключ, привычный OpenAI-совместимый API и понятный баланс делают переход быстрым и безопасным: после первого успешного запроса проект полностью готов к работе.

Подключите модели через TokenMaster

Один ключ sk-… и base URL https://tokenmaster.ru/v1 — доступ к DeepSeek, GLM, Qwen и другим моделям. Зарегистрироваться →