Документация

Smart AIPI предоставляет API, совместимые и с OpenAI, и с Anthropic. Используйте наш сервис с любым существующим SDK, инструментом или приложением OpenAI или Anthropic, просто изменив base URL. Без изменений в коде.

Base URL OpenAI

https://api.smartaipi.com/v1

Base URL Anthropic

https://api.smartaipi.com

CLI и MCP инструменты

Smart AIPI предоставляет два npm-пакета, чтобы помочь разработчикам работать со своими аккаунтами:

smart-aipi — CLI-инструмент для программного управления аккаунтом, API keys и использованием из терминала.
@smart-aipi/mcp — MCP-сервер, который дает AI-агентам прямой доступ к вашему аккаунту Smart AIPI.

Установить оба

Терминал
npm install -g smart-aipi @smart-aipi/mcp

Установить по отдельности

Только CLI
npm install -g smart-aipi
Только MCP
npm install -g @smart-aipi/mcp

Аутентификация

Для всех API-запросов нужен API key. Один и тот же ключ работает с обоими способами аутентификации:

Стиль OpenAI (заголовок Authorization)
Authorization: Bearer YOUR_API_KEY
Стиль Anthropic (заголовок x-api-key)
x-api-key: YOUR_API_KEY

Гид по миграции

Миграция занимает меньше минуты. Наш API на 100% совместим и с endpoint OpenAI, и с endpoint Anthropic.

С OpenAI

1

Получите ваш API key Smart AIPI

Зарегистрируйтесь и создайте API key в вашем dashboard.

2

Измените base URL

Замените https://api.openai.com/v1 на https://api.smartaipi.com/v1

3

Обновите ваш API key

Используйте ваш ключ Smart AIPI вместо ключа OpenAI. И всё!

С Anthropic

1

Получите ваш API key Smart AIPI

Зарегистрируйтесь и создайте API key в вашем dashboard.

2

Измените base URL

Замените https://api.anthropic.com на https://api.smartaipi.com

3

Обновите ваш API key

Используйте ваш ключ Smart AIPI вместо ключа Anthropic. Ваши существующие имена моделей Claude работают как есть.

Ваш существующий код, SDK и приложения, использующие Anthropic Messages API, будут работать без каких-либо изменений в коде. Имена моделей Claude (claude-opus-4-6, claude-sonnet-4-5-20250929, claude-haiku-4-5-20251001) автоматически направляются на высокопроизводительные модели GPT-5.4. Каждый ответ включает x-actual-model заголовок, показывающий реальную backend-модель для полной прозрачности.

Chat Completions

Создает chat completion для переданных messages и модели. Это основной endpoint для взаимодействия с языковыми моделями.

POST /v1/chat/completions

Параметры тела запроса

Параметр Тип Обязательно Описание
model строка Да ID модели для использования (например, "gpt-6-astra", "gpt-5.6-sol")
messages массив Да Массив объектов сообщений с role и content
temperature число Нет Температура сэмплирования (0-2). Выше = случайнее. По умолчанию: 1
max_tokens целое число Нет Максимальное число tokens, генерируемых в ответе
top_p число Нет Nucleus sampling. Учитывает tokens с вероятностью top_p. По умолчанию: 1
frequency_penalty число Нет Штрафует tokens по частоте (-2 до 2). По умолчанию: 0
presence_penalty число Нет Штрафует tokens по наличию (-2 до 2). По умолчанию: 0
stop строка/массив Нет Стоп-последовательности. До 4 последовательностей, на которых генерация останавливается.
stream логический Нет Включить streaming-ответы через SSE. По умолчанию: false

Роли сообщений

  • system - system - Задает поведение/персону ассистента
  • user - user - Сообщения от пользователя
  • assistant - assistant - Предыдущие ответы ассистента

Примеры кода

from openai import OpenAI

client = OpenAI(
    base_url="https://api.smartaipi.com/v1",
    api_key="your-api-key"
)

response = client.chat.completions.create(
    model="gpt-6-astra",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Hello!"}
    ],
    temperature=0.7,
    max_tokens=1000
)

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

Потоковая передача

Включите streaming, чтобы получать tokens по мере их генерации через Server-Sent Events (SSE). Это дает лучший пользовательский опыт для длинных ответов.

Установите "stream": true в вашем запросе, чтобы включить streaming.

Пример Streaming

from openai import OpenAI

client = OpenAI(
    base_url="https://api.smartaipi.com/v1",
    api_key="your-api-key"
)

# Enable streaming
stream = client.chat.completions.create(
    model="gpt-6-astra",
    messages=[{"role": "user", "content": "Write a poem"}],
    stream=True
)

# Process chunks as they arrive
for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="")

Усилие рассуждения

Управляйте глубиной reasoning с помощью параметра reasoning_effort для моделей GPT-5.

По умолчанию Smart AIPI использует reasoning.effort = "high" для всех запросов Responses API.

После обширного тестирования мы выяснили, что high — лучший reasoning effort для практического использования: он дает глубокую, надежную работу с инструментами и анализ без затрат по задержке уровня xhigh. Вы можете переопределить это, явно задав reasoning effort в запросе.

По умолчанию Smart AIPI использует store = false для всех запросов Responses API и WebSocket.

Upstream API требует store: false для GPT-5.4 и более новых моделей. Если вы явно зададите store: true в ваших запросах, вы получите ошибку "Store must be set to false". Уберите это поле или установите его в false.

Поддерживаемые модели

Responses API

gpt-5.4, gpt-5.3, gpt-5.1, gpt-5 и все варианты Codex

Только Chat Completions

gpt-5.4-nano — поддержка reasoning доступна только для /v1/chat/completions .

Уровни Reasoning Effort

  • none - Без reasoning. Полностью пропускает thinking.
  • low - Минимальный reasoning. Отлично подходит для простых задач.
  • medium - Баланс скорости и глубины.
  • high - Глубокий анализ для сложных задач. (Значение по умолчанию в Smart AIPI)
  • xhigh - Экстра-высокий. Максимальная глубина reasoning для самых сложных задач.

Fast Mode (приоритетная обработка)

Используйте service_tier: "priority" для приоритетной обработки с более низкой задержкой. Именно это использует команда /fast в Codex CLI. Это не меняет глубину reasoning — вы получаете то же качество, только быстрее.

Тарификация: Приоритетная обработка тарифицируется по ставке 1.5x от стандартной. Например, output у GPT-5.4 обычно стоит $3.75/1M tokens — с приоритетом это $5.625/1M tokens.

response = client.responses.create(
    model="gpt-6-astra",
    input="Refactor this function",
    service_tier="priority"              # priority processing, lower latency
)

API Chat Completions

response = client.chat.completions.create(
    model="gpt-6-astra",
    messages=[{"role": "user", "content": "Analyze this code for bugs..."}],
    reasoning_effort="high"  # or "xhigh" for maximum depth
)

API ответов

# Reasoning is set via the "reasoning" object
response = client.responses.create(
    model="gpt-6-astra",
    input=[{"role": "user", "content": "Refactor this function..."}],
    reasoning={"effort": "high"}  # defaults to "high" on Smart AIPI
)

Генерация изображений

Генерируйте изображения по текстовым prompts через наш endpoint генерации изображений.

Текущие ограничения: Вариации изображений ( /v1/images/variations ) пока не поддерживаются. Редактирование изображений доступно через /v1/images/edits.
POST /v1/images/generations
Новинка: gpt-image-2.5-flare и gpt-image-2.5-sunburst уже доступны. Новейшие модели изображений OpenAI уже доступны: более высокое качество, чем у gpt-image-2, при задержке до 50% ниже (flare), а также более точный контроль многопроходного редактирования для производственного креатива (sunburst). Тарифы на токены не изменились по сравнению с gpt-image-2, поэтому цены здесь идентичны — обновление не требует дополнительных затрат. Обе поддерживают генерацию, редактирование и восстановление областей по маске по цене 50% от прямых цен OpenAI. Прочитать пост о выпуске.

Параметры тела запроса

Параметр Тип Описание
prompt строка Текстовое описание изображения для генерации (обязательно)
model строка "gpt-image-2.5-flare" (frontier), "gpt-image-2.5-sunburst" или "gpt-image-2". По умолчанию: "gpt-image-2.5-flare"
n целое число Количество изображений для генерации (1-10). По умолчанию: 1
size строка "1024x1024", "1024x1792" или "1792x1024". По умолчанию: "1024x1024"
quality строка "standard" или "hd". По умолчанию: "standard"

Доступные модели

  • gpt-image-2.5-flare - Frontier модель, наивысшее качество (по умолчанию)
  • gpt-image-2.5-sunburst - Точное редактирование и премиальная творческая работа (более медленная генерация)
  • gpt-image-latest - Алиас для gpt-image-2.5-flare
  • gpt-image-2 - Флагман предыдущего поколения
  • gpt-image-1.5 - Более старый флагман (поддерживает прозрачный фон)
  • gpt-image-1 - Генерация изображений в полном качестве
  • gpt-image-1-mini - Быстрее, изображения меньшего размера

Пример

response = client.images.generate(
    model="gpt-image-2.5-flare",
    prompt="A futuristic city at sunset, cyberpunk style",
    size="1024x1024",
    n=1
)

# Response contains base64-encoded image
image_b64 = response.data[0].b64_json

# Save to file
import base64
with open("output.png", "wb") as f:
    f.write(base64.b64decode(image_b64))

Редактирование изображений

Редактируйте существующие изображения с помощью текстового prompt. Поддерживаются и JSON (строка base64), и multipart/form-data (загрузка файла), поэтому OpenAI SDK работают сразу из коробки.

Примечание: Поддерживается только редактирование одного изображения. Входы с несколькими изображениями и поля mask пока недоступны.
POST /v1/images/edits

Параметры тела запроса

Параметр Тип Описание
prompt строка Текстовое описание желаемого редактирования (обязательно)
image строка Изображение в base64 для редактирования (обязательно)
model строка "gpt-image-2.5-flare" (по умолчанию), "gpt-image-2.5-sunburst" или "gpt-image-2"
n целое число Количество редактируемых изображений для генерации (1-10). По умолчанию: 1
size строка "1024x1024", "1024x1792" или "1792x1024". По умолчанию: "1024x1024"
quality строка "low", "medium", "high" или "auto". По умолчанию: "medium"
Multi-reference edits and mask inpainting are supported. Pass image as an array of base64 strings (JSON) or as repeated image / image[] parts (multipart). Add a mask field alongside image to restrict edits to specific regions (white = edit, black = preserve). Works identically to the official OpenAI SDK.

Пример

import base64

response = client.images.edit(
    model="gpt-image-2.5-flare",
    image=open("input.png", "rb"),
    prompt="Change the background to a sunset beach",
    size="1024x1024",
    n=1
)

# Save the edited image
edited_b64 = response.data[0].b64_json
with open("edited.png", "wb") as f:
    f.write(base64.b64decode(edited_b64))

Realtime API с WebSocket

WebSocket-соединения — это широко поддерживаемый API для передачи данных в реальном времени и отличный выбор для подключения к Smart AIPI Realtime API в server-to-server приложениях.

В server-to-server интеграции ваша backend-система подключается по WebSocket напрямую к Realtime API. Используйте стандартный API key для аутентификации соединения, поскольку токен доступен только на вашем защищенном backend-сервере.

WSS wss://api.smartaipi.com/v1/responses

Подключение через WebSocket

Ниже приведено несколько примеров подключения через WebSocket. Помимо использования WebSocket URL, вам нужно передать заголовок аутентификации с вашим API key.

import WebSocket from "ws";

const url = "wss://api.smartaipi.com/v1/responses";
const ws = new WebSocket(url, {
  headers: {
    Authorization: "Bearer " + process.env.SMARTAIPI_API_KEY,
  },
});

ws.on("open", function open() {
  console.log("Connected to server.");

  // Send a response.create event
  ws.send(JSON.stringify({
    type: "response.create",
    response: {

      model: "gpt-6-astra",
      store: false,
      input: [{ role: "user", content: "Hello!" }],
      stream: true,
    },
  }));
});

ws.on("message", function incoming(message) {
  const event = JSON.parse(message.toString());
  console.log(event.type, event);
});

Отправка и получение событий

Сессии управляются через отправляемые клиентом и сервером JSON-события по WebSocket-соединению. Оберните ваш запрос в envelope response.create :

Событие Направление Описание
response.create Клиент Отправить запрос (оборачивает вашу модель, input и параметры)
response.created Сервер Сессия принята, обработка началась
response.output_text.delta Сервер Потоковый фрагмент текста
response.completed Сервер Финальное событие с полным ответом и данными использования
response.failed Сервер Финальное событие, указывающее на ошибку
Важно: WebSocket-запросы должны включать "store": false в response envelope. Соединение сохраняется между несколькими turn — отправляйте дополнительные кадры response.create без повторного подключения.

Список моделей

Получите список всех доступных моделей. Используйте этот endpoint, чтобы динамически определять, какие модели доступны для вашего аккаунта.

GET /v1/models

Формат ответа

{
    "object": "list",
    "data": [
        {
            "id": "gpt-6-astra",
            "object": "model",
            "created": 1700000000,
            "owned_by": "smart-aipi"
        },
        {
            "id": "gpt-5.3-codex",
            "object": "model",
            "created": 1700000000,
            "owned_by": "smart-aipi"
        },
        // ... more models
    ]
}

Пример

from openai import OpenAI

client = OpenAI(
    base_url="https://api.smartaipi.com/v1",
    api_key="your-api-key"
)

# List all available models
models = client.models.list()

for model in models.data:
    print(model.id)

Доступные модели

Серия GPT

  • gpt-6-astra Последнее
  • gpt-5.6-sol
  • gpt-5.6-terra
  • gpt-5.6-luna
  • gpt-5.5
  • gpt-5.4-pro
  • gpt-5.4
  • gpt-5.4-mini
  • gpt-5.4-nano только completions

Серия Codex

  • gpt-5.3-codex
  • gpt-5.2-codex
  • gpt-5.2
  • gpt-5.1

Anthropic Messages API

Полная совместимость с Anthropic Messages API. Используйте любой SDK Anthropic, Claude Code или приложение, которое работает по протоколу Anthropic — просто измените base URL.

POST /v1/messages

Поддерживаемые возможности

  • Streaming (полный протокол событий Anthropic SSE)
  • Использование инструментов / вызов функций
  • System messages (форматы string и array)
  • Входные изображения (base64 и URL)
  • Подсчет tokens (/v1/messages/count_tokens)
  • Расширенное thinking / reasoning effort

Примеры кода

from anthropic import Anthropic

client = Anthropic(
    base_url="https://api.smartaipi.com",
    api_key="your-api-key"
)

response = client.messages.create(
    model="claude-sonnet-4-5-20250929",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Hello!"}
    ]
)

print(response.content[0].text)

Сопоставление моделей

Имена моделей Claude принимаются и автоматически направляются на GPT-5.4 с многоуровневым reasoning effort. Каждый ответ включает заголовок x-actual-model , показывающий реальную backend-модель.

Модель Claude Бэкенд Рассуждение Лучше всего для
claude-opus-4-6 gpt-5.4 Высокий Сложное reasoning, архитектура
claude-sonnet-4-5-20250929 gpt-5.4 Средний Повседневное программирование, сбалансированное качество
claude-haiku-4-5-20251001 gpt-5.4 Низкий Быстрые ответы, простые задачи

Claude Code

Используйте Claude Code с Smart AIPI в качестве backend. Поддерживаются полное использование инструментов, streaming и агентные возможности.

Автоматическая настройка

Одна команда
npx smart-aipi claude

Это автоматически настроит ~/.claude/settings.json и ~/.claude.json Если у вас уже настроен Claude Code с аккаунтом Anthropic, вместо перезаписи будет показана ручная конфигурация.

Ручная настройка

Добавьте в ~/.claude/settings.json:

~/.claude/settings.json
{
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.smartaipi.com",
    "ANTHROPIC_API_KEY": "sk-your-key",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001"
  },
  "model": "opus"
}

Затем добавьте "hasCompletedOnboarding": true в ~/.claude.json чтобы пропустить мастер настройки.

После изменения настроек перезапустите Claude Code, чтобы изменения вступили в силу. Если Claude Code уже подключен к реальному аккаунту Anthropic, установка этих env vars переопределит это подключение — используйте project-level .claude/settings.json чтобы сохранить оба варианта.

Что делает каждая настройка

  • "model": "opus" — Основная модель. Использует claude-opus-4-6 (high reasoning) для всех основных задач.
  • ANTHROPIC_DEFAULT_HAIKU_MODEL — Фоновая модель. Использует claude-haiku-4-5 (low reasoning) для быстрых фоновых задач, таких как индексация файлов.
  • Переключайтесь между моделями в середине сессии с помощью /model sonnet, /model opus, или /model haiku.
Алиас Модель Claude Бэкенд Рассуждение
opus claude-opus-4-6 gpt-5.4 Высокий
sonnet claude-sonnet-4-5-20250929 gpt-5.4 Средний
haiku claude-haiku-4-5-20251001 gpt-5.4 Низкий

OpenCode

Используйте Smart AIPI как backend для OpenCode через OpenAI-совместимый SDK.

Настройка конфигурации

~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "smart-aipi": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Smart AIPI",
      "options": {
        "baseURL": "https://api.smartaipi.com/v1",
        "apiKey": "YOUR_API_KEY"
      },
      "models": {
        "gpt-6-astra": {
          "name": "GPT-6 Astra",
          "reasoning": true,
          "limit": { "context": 400000, "output": 128000 }
        },
        "gpt-5.3-codex": {
          "name": "GPT-5.3 Codex",
          "reasoning": true,
          "limit": { "context": 400000, "output": 128000 }
        },
        "gpt-5.2-codex": {
          "name": "GPT-5.2 Codex",
          "reasoning": true,
          "limit": { "context": 400000, "output": 128000 }
        },
        "gpt-5-codex": {
          "name": "GPT-5 Codex",
          "reasoning": true,
          "limit": { "context": 400000, "output": 128000 }
        }
      }
    }
  },
  "model": "smart-aipi/gpt-6-astra"
}

Codex CLI

Используйте Smart AIPI с инструментом Codex CLI от OpenAI. Нужно настроить три файла.

Автоматическая настройка

Одна команда
npx smart-aipi codex

Это автоматически настроит все три файла ниже. После запуска добавьте model_reasoning_effort в ваш config (см. шаг 2).

Ручная настройка

Настройте эти три файла:

1. API Key — ~/.codex/auth.json

~/.codex/auth.json
{
  "auth_mode": "apikey",
  "OPENAI_API_KEY": "sk-your-key"
}

2. Модель и Reasoning — ~/.codex/config.toml

Всегда указывайте model_reasoning_effort — обязательно для пользовательских моделей.

Без этого Codex по умолчанию работает без reasoning и не будет работать корректно. Для лучших результатов используйте "high" .

~/.codex/config.toml
model = "gpt-6-astra"
model_reasoning_effort = "high"

Допустимые уровни reasoning: low, medium, high (рекомендуется), xhigh.

3. Переменные окружения — ~/.zshrc

~/.zshrc (or ~/.bashrc)
# Smart AIPI
export OPENAI_API_KEY="sk-your-key"
export OPENAI_BASE_URL="https://api.smartaipi.com/v1"

После редактирования профиля shell перезапустите терминал или выполните source ~/.zshrc чтобы изменения вступили в силу.

Затем используйте Codex как обычно:

терминал
codex "fix this bug"

Гид по скорости Codex WebSocket

Режим WebSocket обычно быстрее для агентных сценариев кодинга с большим количеством вызовов инструментов. Вместо постоянных переподключений по HTTP и повторной отправки полных request envelopes, Codex держит одно активное соединение и отправляет incremental turns, что снижает continuation overhead.

Наблюдаемое улучшение: В наших tool-heavy запусках кодинга пересобранный open-source Codex с исправлениями WebSocket сократил общее время выполнения примерно на 30-40% по сравнению с режимом продолжения через HTTP.

Включение WebSockets в Codex

Используйте feature flag WebSocket v2 в ~/.codex/config.toml: ~/.codex/config.toml:

~/.codex/config.toml
model = "gpt-6-astra"
model_reasoning_effort = "high"

[features]
responses_websockets_v2 = true

Эквивалент в CLI:

терминал
codex --enable responses_websockets_v2

Старые сборки могут использовать legacy flag:

резервный вариант legacy
[features]
responses_websockets = true

Известное поведение Homebrew

В некоторых сборках, распространяемых через Homebrew, WebSocket-turns могут зависать во время долгих задач, а затем незаметно переключаться обратно на HTTP. Особенно часто мы замечали это в сложных циклах вызова инструментов. Пересборка из open-source кода с исправлениями ниже улучшила и стабильность, и скорость.

После merge: исправьте open-source WebSocket bug

После слияния вашей ветки используйте этот чеклист, чтобы убедиться, что исправление есть в локальном бинарнике:

терминал
# 1) Pull merged main
git checkout main
git pull --ff-only

# 2) Confirm websocket flags exist
codex features list | rg responses_websockets

# 3) Build and install
cd codex-rs
cargo build --release
install -m 0755 target/release/codex ~/.local/bin/codex-beta

# 4) Run with websocket enabled
CODEX_RS_RESPONSES_WS=true \
OPENAI_BASE_URL=https://api.smartaipi.com/v1 \
~/.local/bin/codex-beta --enable responses_websockets_v2

Если нужно патчить вручную, проверьте, что присутствуют эти исправления на уровне кода:

исправления websocket-клиента
# A) Build websocket request with IntoClientRequest so required headers are set
let mut request = url.as_str().into_client_request()?;
request.headers_mut().extend(headers);

# B) Ensure TLS roots are enabled for tokio-tungstenite in Cargo.toml
tokio-tungstenite = { version = "...", features = ["rustls-tls-native-roots"] }

Cursor и Cline

Используйте Smart AIPI с Cursor IDE или расширением Cline для VS Code.

Cursor Cursor

  1. Откройте настройки Cursor
  2. Перейдите на вкладку Models вкладка
  3. Нажмите + Add Model
  4. Установите Base URL: https://api.smartaipi.com/v1
  5. Введите ваш API key
  6. Модель: gpt-6-astra

Cline Cline (VS Code)

  1. Откройте настройки Cline в VS Code
  2. Выберите OpenAI Compatible
  3. Base URL: https://api.smartaipi.com/v1
  4. Введите ваш API key
  5. Модель: gpt-6-astra

Чат

Используйте Smart AIPI Chat на chat.smartaipi.com. для текстовых, графических, видео, кодовых, поисковых и голосовых сценариев.

Возможности

  • Чат — Текстовые диалоги общего назначения с моделями Smart AIPI.
  • Изображения — Создавайте и редактируйте изображения по prompts.
  • Видео — Создавайте видео из текста или изображений.
  • Код — Помощь с кодом и редактирование в браузере.
  • Поиск — Используйте веб-поиск для ответов с опорой на источники.
  • Голос — Общайтесь с моделью с помощью голоса: ввод и ответы.

Быстрый старт

  1. 1. Откройте chat.smartaipi.com
  2. 2. Войдите или создайте аккаунт.
  3. 3. Начните общаться с текстом, изображениями, видео, кодом, поиском или голосом.

Биллинг: Использование списывается с ваших credits в Smart AIPI.

Тестер API

Проверьте API прямо из браузера:

Сообщение отправлено

Мы ответим вам в течение 2 рабочих дней.

Связаться с поддержкой

Есть вопрос или нужна помощь? Отправьте нам сообщение, и мы ответим вам в течение 2 рабочих дней.