hubris

Миграция с OpenAI

Как переключиться с OpenAI на Hubris — что меняется, что 1-в-1.

Если у вас уже есть код, работающий через OpenAI API, для перехода на Hubris достаточно изменить базовый URL и API-ключ. Остальное — формат запросов, имена параметров, структура ответа — идентично.

Что меняется

1. Базовый URL

Замените базовый URL OpenAI на https://api.hubris.pw/v1. Например, если у вас был стандартный OpenAI base URL — замените его на адрес выше.

2. API-ключ

OpenAI-ключ (sk-...) → Hubris-ключ (sk-gw-...). Получите на /keys.

- api_key = os.environ["OPENAI_API_KEY"]
+ api_key = os.environ["HUBRIS_API_KEY"]

3. Имена моделей

OpenAI принимает короткие имена (например, gpt-4o-mini). Hubris использует полные идентификаторы вида provider/model — например, openai/gpt-4o-mini. Замените короткое имя на полный идентификатор провайдера.

Полный список — в каталоге моделей.

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

  • Формат тела запроса (messages, tools, temperature, и т. д.).
  • Формат ответа (choices[0].message.content, usage.prompt_tokens, id, created).
  • Стриминг через stream: true и Server-Sent Events.
  • Инструменты (tool calling) — tools, tool_choice, tool_calls.
  • JSON-режим — response_format: { type: "json_object" } или json_schema.
  • Vision (multimodal входы) — image_url в content.
  • OpenAI SDK работает без изменений — нужно только два параметра.

Минимальный diff кода

Python (с OpenAI SDK)

from openai import OpenAI

client = OpenAI(
    base_url="https://api.hubris.pw/v1",            # was OpenAI base URL
    api_key=os.environ["HUBRIS_API_KEY"],           # was OPENAI_API_KEY
)

response = client.chat.completions.create(
    model="openai/gpt-4o-mini",                     # was "gpt-4o-mini"
    messages=[{"role": "user", "content": "Привет"}],
)

Node.js (с OpenAI SDK)

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.hubris.pw/v1",              // was OpenAI base URL
  apiKey: process.env.HUBRIS_API_KEY,               // was OPENAI_API_KEY
});

const response = await client.chat.completions.create({
  model: "openai/gpt-4o-mini",                      // was "gpt-4o-mini"
  messages: [{ role: "user", content: "Привет" }],
});

Что доступно дополнительно

В Hubris вы получаете модели не только OpenAI, через тот же API:

  • Anthropic Claude — например, anthropic/claude-haiku-4.5.
  • Google Gemini — например, google/gemini-2.5-flash.
  • OpenAI GPT — например, openai/gpt-4o-mini.

Полный актуальный список — в каталоге моделей. Все они отвечают в том же OpenAI-формате chat.completion, поэтому код менять не нужно.

Различия в биллинге

  • Цены в ₽, не в USD. Списание происходит за каждый успешный запрос; стоимость возвращается в usage и логируется на /usage.
  • Минимальный баланс для запуска запроса — 1 ₽. Реальная стоимость списывается после успешного ответа и зависит от модели и числа токенов.
  • Без подписок и тарифов — pay-as-you-go. Подробнее — на странице Биллинг.

Какие эндпоинты поддерживаются

Все эндпоинты ниже работают по тому же адресу https://api.hubris.pw/v1 и с тем же ключом — для переезда достаточно сменить baseURL:

ЭндпоинтМетод SDKДокументация
POST /v1/chat/completionsclient.chat.completions.create()Chat Completions
POST /v1/responsesclient.responses.create()Responses
POST /v1/embeddingsclient.embeddings.create()Эмбеддинги
POST /v1/images/generationsclient.images.generate()Генерация картинок
POST /v1/audio/speechclient.audio.speech.create()Озвучка текста
POST /v1/audio/transcriptionsclient.audio.transcriptions.create()Распознавание речи
GET /v1/modelsclient.models.list()Модели

Сверх OpenAI-набора есть POST /v1/messages в формате Anthropic, генерация видео и расшифровка видео по ссылке.

Пока не поддерживаются: пакетная обработка (Batch API), загрузка файлов (Files API), перевод аудио (client.audio.translations) и редактирование картинок (client.images.edit()). Такие вызовы вернут ошибку — для них пока используйте провайдера напрямую.

Assistants API (/v1/assistants, /v1/threads) не поддерживается: OpenAI отключил его 26 августа 2026 года и рекомендует вместо него Responses API. В Hubris он доступен — POST /v1/responses.

Что дальше

Обновлено: