Быстрый старт: Подключение клиента
Подключите ваш существующий OpenAI-совместимый клиент к нашей модели без цензуры Chinese LLM API, обновив базовый URL и API-ключ. Это руководство охватывает аутентификацию, завершение чата, потоковую передачу и вызов функций с конкретными примерами.
- Базовый URL
- https://api.chinesellmapi.com/v1
- Модель
- без цензуры
Базовый URL и аутентификация
Наш API следует стандартному формату OpenAI, что позволяет вам сменить провайдера, изменив всего две переменные: базовый URL и API-ключ. Вы можете получить ключ, войдя на страницу Получить API-ключ, указав только адрес электронной почты и пароль. Для пробного периода не требуется банковская карта, а ключи можно перегенерировать мгновенно в случае компрометации.
Используйте базовый URL https://api.chinesellmapi.com/v1 в конфигурации вашего клиента. Идентификатор модели, который вы должны указать, — uncensored. Это модель с открытыми весами, работающая на нашей выделенной инфраструктуре, отличной от GPT, Claude или других моделей поставщиков. Она настроена на ответы без отказов в контенте для законного использования взрослыми.
Эндпоинт завершения чата (POST /v1/chat/completions)
Отправляйте текст и получайте текст на выходе, используя стандартный эндпоинт завершения чата. Этот эндпоинт поддерживает как непотоковые, так и потоковые ответы, а также вызов инструментов/функций. Вы должны включить поле model, установленное в uncensored, в тело вашего запроса.
Размер тела запроса ограничен 8 МБ. Если вы превысите контекстное окно на 100 000 токенов (промпт + завершение), API отклонит запрос. Убедитесь, что ваш клиент корректно обрабатывает стандартные HTTP-ответы.
- Вход: тело JSON с массивом
messages. - Выход: JSON с
choices, содержащимmessage.content.
Выполните свой первый запрос с помощью этого примера:
curl https://api.chinesellmapi.com/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 SDK
Использование официального Python SDK OpenAI — самый простой способ интеграции. Установите пакет через pip и настройте клиент на указание нашего базового URL. Этот подход бесшовно работает с любой библиотекой, построенной на базе Python-клиента OpenAI.
Помните, что наша модель — не GPT-4 и не другая модель вендора. Это модель без цензуры. Соответственно настройте инженерные промпты, так как модель может иметь другие стилистические тенденции по сравнению с другими моделями.
Вот как инициализировать клиент и отправить запрос:
from openai import OpenAI
client = OpenAI(base_url="https://api.chinesellmapi.com/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 SDK
Для проектов на JavaScript или TypeScript пакет npm openai работает с незначительными изменениями конфигурации. Установите значение baseURL на наш эндпоинт API и укажите ваш API-ключ. Это обеспечивает совместимость с существующими базами кода, ожидающими ответы в стандарте OpenAI.
Структура ответа остается идентичной формату OpenAI, включая поля id, object, created и choices. Это позволяет легко заменить нашу модель без цензуры для тестирования или производства без переписывания логики разбора данных.
Настройте и вызовите API:
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.chinesellmapi.com/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);
Потоковые ответы (SSE)
Включите потоковую передачу, установив stream: true в запросе. API возвращает события, отправляемые сервером (SSE), содержащие инкрементальные фрагменты ответа. Это идеально подходит для пользовательских интерфейсов, которым необходимо отображать текст в реальном времени по мере его генерации.
Каждый фрагмент содержит частичное содержимое в delta.content. Обрабатывайте эти фрагменты инкрементально в вашем клиенте, чтобы обновлять пользовательский интерфейс. Потоковая передача завершается, когда получен последний фрагмент с finish_reason, установленным в stop или tool_calls.
Пример реализации потоковой передачи:
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-ключ ограничен 300 запросами в минуту. Если вы превысите этот лимит, вы получите ошибку 429 Too Many Requests. Тела запросов не должны превышать 8 МБ. Контекстное окно строго ограничено 100 000 токенов для промпта и завершения в сумме.
Распространенные ошибки включают:
- 401 Unauthorized: Неверный или отсутствующий API-ключ.
- 402 Требуется оплата: Недостаточно предоплаченного баланса.
- 429 Rate Limit: Превышено 300 запросов в минуту.
Ценообразование прозрачно: $0,25 за 1 млн входных токенов и $1,00 за 1 млн выходных токенов. Кредиты не сгорают. Используйте эндпоинт GET /v1/models для проверки доступных моделей, хотя для завершения чата предлагается только uncensored.
Характеристики API
Все реальные лимиты и возможности API в одном месте — сверьте их до пополнения.
| Параметр | Значение |
|---|---|
| Формат API | совместим с OpenAI: любой OpenAI SDK работает — замените base URL и ключ |
| ID модели | uncensored |
| Авторизация | Authorization: Bearer YOUR_KEY |
| Эндпоинты | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.chinesellmapi.com/v1 |
| Контекстное окно | 100 000 токенов (вход и ответ вместе) |
| Вызов функций | да — tools, tool_choice; ответ содержит tool_calls, в том числе в потоке; результат — сообщением role: tool |
| Параметры | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Максимум ответа | до остатка окна в 100 000 токенов; max_tokens необязателен (отдельного лимита нет) |
| Потоковая передача | да — server-sent events, последний фрагмент содержит расход токенов |
| JSON-режим | response_format: {"type": "json_object"} |
| Заголовки ответа | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Лимит запросов | 300 запросов в минуту на ключ |
| Параллельные запросы | до 8 одновременно на ключ |
| Размер запроса | до 8 МБ |
| Срок действия | оплаченный баланс не сгорает, без подписки |
| Цена | $0,25 за 1 млн входных токенов · $1,00 за 1 млн выходных |
| Пополнение | USDT (TRC20) или USDC (Base), любая целая сумма от $10 до $500 |
| Пробный баланс | $0,50 на 7 дней, без карты · Пробный ключ: 2 параллельных запроса, 60 в минуту; полные лимиты (8 и 300) после первого пополнения |
| Оплата | предоплаченный баланс по фактическому расходу; ошибки и отказы бесплатны |
| Бонус | +5% от $50, +10% от $100 |
| Вход | Google или e-mail и пароль |
| Контент | контент для взрослых разрешён; сексуальный контент с несовершеннолетними запрещён |
| Ключи | один активный ключ на аккаунт; новый заменяет старый |
Коды ошибок
Ошибки приходят в JSON с постоянным type; неудачные и отклонённые запросы не оплачиваются.
| Код | Тип | Что значит |
|---|---|---|
400 | bad_request | неверный JSON, пустые сообщения, неверный параметр или превышено окно контекста |
401 | missing_key · invalid_key · key_revoked | нет ключа, ключ неверный или заменён новым |
402 | no_credit | баланс пуст — пополните, работа продолжится сразу |
403 | content_blocked | сексуальный контент с несовершеннолетними — отказ, без оплаты |
404 | not_found | неизвестный эндпоинт |
413 | request_too_large | тело запроса больше 8 МБ |
429 | rate_limited · concurrency | больше 300/мин или 8 параллельно — подождите и повторите |
503 | upstream_busy | модель занята — повторите через несколько секунд |
Вопросы и ответы
Это модель GPT-4 или другая модель от OpenAI?
Нет. Идентификатор модели — <code>uncensored</code>, это одна модель без цензуры, которая обслуживается напрямую без маршрутизации между поставщиками. Это не GPT-4, Claude или другая модель вендора. Она отвечает без отказов на законный контент для взрослых.
Сохраняете ли вы мои данные для обучения?
Нет. Промпты, отправленные в API, не используются для обучения вашей модели. Для вашей учетной записи требуется только электронная почта и пароль, что обеспечивает минимальный сбор данных.
Что произойдет, если я превышу лимит запросов?
Вы получите код состояния 429. Лимит составляет 300 запросов в минуту на один API-ключ. Вы можете сгенерировать новый ключ или подождать, пока окно сбросится. Ежемесячных платежей нет; вы платите только за то, что используете.
Ваш ключ — в одной форме от вас
Создайте учетную запись, скопируйте ключ, измените базовый URL. Вот и вся настройка.