RU ▾
Получить API-ключ

Быстрый старт для пользователей OpenRouter

Мигрируйте вызовы API OpenRouter на наш эндпоинт без цензуры за несколько минут, изменив базовый URL и API-ключ. Это руководство охватывает основные интеграции для генерации текста, потоковой передачи и структурированных ответов.

Начните с пробного баланса

E-mail и пароль — ключ сразу на экране.

Получить API-ключ

Установка и настройка

Наш API полностью совместим со стандартными SDK OpenAI. Чтобы перейти с OpenRouter, вам нужно обновить только два параметра конфигурации: base_url и api_key. Укажите клиенту адрес https://api.openrouterapi.cc/v1 и используйте ключ, сгенерированный в нашем личном кабинете. Дополнительные заголовки или сложная логика маршрутизации не требуются. Идентификатор модели для запроса — uncensored.

Убедитесь, что версия вашего SDK поддерживает параметр base_url. Если вы используете клиент HTTP напрямую, просто обновите целевой URL. Эта настройка гарантирует, что ваш существующий код клиента будет работать без изменений, если вы отправляете только запросы на завершение текста.

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

Аутентификация осуществляется через стандартный заголовок Authorization. Передайте ваш API-ключ в качестве токена Bearer. Если ключ недействителен или истек, API возвращает ошибку 401. В отличие от некоторых провайдеров, мы не берем плату за неудачные запросы; ошибки и отказы бесплатны, поэтому вы можете протестировать аутентификацию, не расходуя баланс.

Каждая учетная запись поддерживает один активный ключ одновременно. Генерация нового ключа немедленно делает предыдущий недействительным. Храните ключ в безопасности и меняйте его, если подозреваете его компрометацию. Ключ отображается сразу после регистрации, поэтому скопируйте его, прежде чем покинуть страницу.

Базовое завершение чата

Основная функциональность — эндпоинт POST /v1/chat/completions. Отправьте ваш промпт в виде списка сообщений и получите текстовый ответ. Модель настроена на ответы без отказов по содержанию для законного использования взрослыми, что делает ее подходящей для творческих, спорных тем или исследований в области безопасности.

Установите поле model в значение uncensored. Вы можете управлять поведением с помощью параметров, таких как temperature, top_p и stop. API поддерживает JSON-режим через response_format и вызов функций через tools. Все запросы обрабатываются асинхронно, и вы получаете полное завершение, когда модель закончит работу.

Потоковые ответы

Включите потоковую передачу, установив stream: true в запросе. API возвращает события, отправляемые сервером (SSE), с частичными ответами. Вы получаете фрагменты текста по мере их генерации, что позволяет отображать их в реальном времени в вашем приложении.

Информация об использовании токенов предоставляется в последнем фрагменте потока. Это позволяет точно отслеживать расходы, не разбирая каждый отдельный токен. Потоковая передача идеальна для интерфейсов чата, где важна задержка. Убедитесь, что ваш клиент правильно обрабатывает SSE и закрывает соединение, когда поток заканчивается.

Вызов функций

API поддерживает вызов функций через параметр tools. Определите ваши функции в массиве tools и установите tool_choice в значение auto или конкретное имя функции. Модель вернет структурированные аргументы в формате JSON, если будет вызвана функция.

Эта функция полезна для интеграции LLM с внешними API или базами данных. Убедитесь, что определения ваших функций точны, так как модель полагается на них для генерации корректных аргументов. API не выполняет функции; вы должны обработать логику выполнения в коде вашего приложения.

JSON-режим

Для структурированных выходов используйте response_format: {"type": "json_object"}. Это заставляет модель возвращать действительный JSON, что необходимо для обработки данных в последующих приложениях. JSON-режим часто более надежен, чем вызов функций, для простых задач извлечения данных.

Убедитесь, что ваши промпты четко указывают модели вернуть JSON. Ответы с недействительным JSON могут возникнуть, если промпт неоднозначен. JSON-режим поддерживается как в стандартном, так и в потоковом режимах. Используйте его, когда вам нужны предсказуемые, машиночитаемые выходные данные.

Лимиты, ошибки и контекст

Контекстное окно составляет 100 000 токенов для промпта и завершения вместе. Максимальный вывод — 32 000 токенов на запрос (2 048, если max_tokens не установлен). Лимиты запросов — 300 запросов в минуту и 8 одновременных запросов на ключ. Тела запросов ограничены 8 МБ.

Ошибки возвращают стандартные коды HTTP: 401 для недействительных ключей, 402 для недостатка средств и 429 для лимитов запросов. Баланс предоплаченный, поэтому ошибка 402 означает, что вам нужно пополнить его. Ошибки и отказы бесплатны, поэтому вы можете повторить попытку без затрат. Жёсткое ограничение контента блокирует сексуальный контент с участием несовершеннолетних.

cURL

curl https://api.openrouterapi.cc/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.openrouterapi.cc/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.openrouterapi.cc/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

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

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Характеристики API

Все реальные лимиты и возможности API в одном месте — сверьте их до пополнения.

ПараметрЗначение
Формат APIсовместим с OpenAI: любой OpenAI SDK работает — замените base URL и ключ
ID моделиuncensored
АвторизацияAuthorization: Bearer YOUR_KEY
ЭндпоинтыPOST /v1/chat/completions · GET /v1/models
Base URLhttps://api.openrouterapi.cc/v1
Потоковая передачада — server-sent events, последний фрагмент содержит расход токенов
Вызов функцийда — tools, tool_choice; ответ содержит tool_calls, в том числе в потоке; результат — сообщением role: tool
Параметрыtemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Контекстное окно100 000 токенов (вход и ответ вместе)
Максимум ответадо остатка окна в 100 000 токенов; max_tokens необязателен (отдельного лимита нет)
JSON-режимresponse_format: {"type": "json_object"}
Лимит запросов300 запросов в минуту на ключ
Параллельные запросыдо 8 одновременно на ключ
Заголовки ответаX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Размер запросадо 8 МБ
Оплатапредоплаченный баланс по фактическому расходу; ошибки и отказы бесплатны
Бонус+5% от $50, +10% от $100
Пробный баланс$0,50 на 7 дней, без карты · Пробный ключ: 2 параллельных запроса, 60 в минуту; полные лимиты (8 и 300) после первого пополнения
Срок действияоплаченный баланс не сгорает, без подписки
ПополнениеUSDT (TRC20) или USDC (Base), любая целая сумма от $10 до $500
Цена$0,25 за 1 млн входных токенов · $1,00 за 1 млн выходных
Ключиодин активный ключ на аккаунт; новый заменяет старый
ВходGoogle или e-mail и пароль
Контентконтент для взрослых разрешён; сексуальный контент с несовершеннолетними запрещён

Коды ошибок

Ошибки приходят в JSON с постоянным type; неудачные и отклонённые запросы не оплачиваются.

КодТипЧто значит
400bad_requestневерный JSON, пустые сообщения, неверный параметр или превышено окно контекста
401missing_key · invalid_key · key_revokedнет ключа, ключ неверный или заменён новым
402no_creditбаланс пуст — пополните, работа продолжится сразу
403content_blockedсексуальный контент с несовершеннолетними — отказ, без оплаты
404not_foundнеизвестный эндпоинт
413request_too_largeтело запроса больше 8 МБ
429rate_limited · concurrencyбольше 300/мин или 8 параллельно — подождите и повторите
503upstream_busyмодель занята — повторите через несколько секунд

Вопросы и ответы

Это официальный API OpenRouter?

Нет, это независимый сервис. Мы предлагаем единственную модель без цензуры, совместимую со структурой базового URL OpenRouter. Мы не предоставляем агрегированные модели OpenRouter или логику маршрутизации.

Как оплатить API?

Оплата принимается только криптовалютой: USDT (TRC20) или USDC (Base). Вы можете пополнить баланс на любую целую сумму от $10 до $500. Кредитные карты и PayPal не принимаются.

Используются ли промпты для обучения?

Нет, ваши промпты не используются для обучения. Для вашей учетной записи требуется только адрес электронной почты, и мы не храним и не используем ваши данные для улучшения модели.

Ваш ключ — в одной форме от вас

Создайте учетную запись, скопируйте ключ, измените базовый URL. Вот и вся настройка.

Получить API-ключ