Фреймворки
OpenAI SDK для Python
Использовать официальный openai пакет с Hubris — поменяйте base_url и api_key.
OpenAI SDK для Python
Официальный пакет openai от OpenAI работает с Hubris как drop-in replacement: меняете два параметра при инициализации клиента, остальной код не трогаете.
Установка
pip install openai
Минимальная версия — 1.0+ (новый API клиента). Старый stub-стиль (openai.api_key = ...) не поддерживаем.
Подключение
from openai import OpenAI
client = OpenAI(
base_url="https://api.hubris.pw/v1",
api_key="sk-gw-...",
)
Лучше через переменную окружения:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.hubris.pw/v1",
api_key=os.environ["HUBRIS_API_KEY"],
)
Базовый запрос
response = client.chat.completions.create(
model="anthropic/claude-haiku-4.5",
messages=[{"role": "user", "content": "Привет"}],
)
print(response.choices[0].message.content)
Стриминг
stream = client.chat.completions.create(
model="anthropic/claude-haiku-4.5",
messages=[{"role": "user", "content": "Расскажи историю"}],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content
if delta:
print(delta, end="", flush=True)
Tool calling
Обычный OpenAI-API:
tools = [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Текущая погода в городе",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"],
},
},
}]
response = client.chat.completions.create(
model="anthropic/claude-haiku-4.5",
messages=[{"role": "user", "content": "Какая погода в Москве?"}],
tools=tools,
)
print(response.choices[0].message.tool_calls)
Async-клиент
from openai import AsyncOpenAI
client = AsyncOpenAI(
base_url="https://api.hubris.pw/v1",
api_key="sk-gw-...",
)
async def main():
response = await client.chat.completions.create(
model="anthropic/claude-haiku-4.5",
messages=[{"role": "user", "content": "Привет"}],
)
print(response.choices[0].message.content)
Что не работает
client.embeddings.create(), client.images.generate(), client.audio.*, client.files.*, client.batches.* — соответствующих эндпоинтов в Hubris сейчас нет, эти вызовы упадут с 404. Появятся в ближайших обновлениях.
Что дальше
- Каталог моделей — все доступные
provider/modelидентификаторы. - POST /v1/chat/completions — полная схема параметров.
- Аутентификация — про ключи.