Краткое руководство по использованию API AI без цензуры
Эта документация поможет вам легко интегрировать API LLM без цензуры в ваше приложение. Используйте это руководство, чтобы начать работу с API чат-завершений без цензуры за считанные минуты.
- Базовый URL
https://api.apitanpasensor.com/v1- Модель
uncensored
Настройка базового URL и аутентификация
Для начала настройте базовый URL, чтобы SDK OpenAI была совместима с нашим сервером. Используйте https://api.apitanpasensor.com/v1 в качестве основного эндпоинта. Аутентификация выполняется через заголовок Authorization: Bearer YOUR_API_KEY. API-ключ, полученный при регистрации, уникален и привязан к одному аккаунту. При регенерации ключа старый ключ немедленно аннулируется и больше не работает, даже если срок его действия ещё не истёк.
Пример первого запроса
Отправьте POST-запрос на /v1/chat/completions с моделью uncensored. Это модель с открытыми весами, которая не фильтрует допустимые взрослые или спорные темы, в отличие от стандартных корпоративных моделей.
curl https://api.apitanpasensor.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."}]
}'Убедитесь, что вы указали параметр model со значением uncensored. Ответ будет представлен в формате JSON и содержать сгенерированный моделью текст.
Интеграция с Python SDK
Используйте библиотеку openai в Python для взаимодействия с API. Установите base_url и api_key в соответствии с конфигурацией выше. Модель uncensored поддерживает контекстное окно до 100 000 токенов, что позволяет отправлять очень длинные промпты без потери важной информации.
from openai import OpenAI
client = OpenAI(base_url="https://api.apitanpasensor.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
Для пользователей Node.js SDK OpenAI также можно легко настроить. Установите baseURL на URL нашего эндпоинта и используйте свой API-ключ. Этот подход позволяет быстро интегрировать AI без цензуры в ваше веб-приложение или серверную часть.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apitanpasensor.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 будет возвращать ответ с использованием Server-Sent Events (SSE). Это очень полезно для приложений чата в реальном времени, где пользователь видит результат токен за токеном.
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 запросов в минуту на ключ и максимальный размер тела запроса 8 МБ. При невалидном ключе вы получите ошибку 401. При исчерпании кредитного баланса появится ошибка 402. Ошибка 429 означает превышение лимита запросов. Контекстное окно составляет 100 000 токенов для суммарного промпта и completion. Убедитесь, что вы разумно управляете токенами, чтобы не превысить этот лимит.
Вопросы и ответы
Истекает ли срок действия моего API-ключа?
API-ключи не имеют автоматической даты истечения срока действия. Однако, если вы решите регенерировать ключ в панели управления, старый ключ будет немедленно аннулирован и станет невалидным, даже если не прошёл определённое время.
Действительно ли эта модель без цензуры?
Да, наша модель с открытыми весами настроена так, чтобы не отклонять допустимые взрослые темы, художественную литературу или исследования в области безопасности. Единственное строгое ограничение, которое всегда применяется, — это контент сексуального характера с участием несовершеннолетних.
Что делать, если у меня закончились кредиты?
Вы получите ошибку 402 (Payment Required) при следующем запросе. Купленные вами кредиты никогда не сгорают, поэтому вы можете пополнить их в любое время, не опасаясь потерять баланс.
Получение вашего ключа требует одного шага
Создайте аккаунт, скопируйте ключ, измените базовый URL. Вот и весь процесс настройки.
Характеристики API
Все реальные лимиты и возможности API в одном месте — сверьте их до пополнения.
| Параметр | Значение |
|---|---|
| Формат API | совместим с OpenAI: любой OpenAI SDK работает — замените base URL и ключ |
| Эндпоинты | POST /v1/chat/completions · GET /v1/models |
| Авторизация | Authorization: Bearer YOUR_KEY |
| ID модели | uncensored |
| Base URL | https://api.apitanpasensor.com/v1 |
| Параметры | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| JSON-режим | response_format: {"type": "json_object"} |
| Максимум ответа | до остатка окна в 100 000 токенов; max_tokens необязателен (отдельного лимита нет) |
| Контекстное окно | 100 000 токенов (вход и ответ вместе) |
| Потоковая передача | да — server-sent events, последний фрагмент содержит расход токенов |
| Вызов функций | да — tools, tool_choice; ответ содержит tool_calls, в том числе в потоке; результат — сообщением role: tool |
| Параллельные запросы | до 8 одновременно на ключ |
| Заголовки ответа | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Лимит запросов | 300 запросов в минуту на ключ |
| Размер запроса | до 8 МБ |
| Цена | $0,25 за 1 млн входных токенов · $1,00 за 1 млн выходных |
| Оплата | предоплаченный баланс по фактическому расходу; ошибки и отказы бесплатны |
| Бонус | +5% от $50, +10% от $100, +15% от $200 |
| Пробный баланс | $0,50 на 7 дней, без карты · Пробный ключ: 2 параллельных запроса, 60 в минуту; полные лимиты (8 и 300) после первого пополнения |
| Пополнение | USDT (TRC20) или USDC (Base), любая целая сумма от $20 до $500 |
| Срок действия | оплаченный баланс не сгорает, без подписки |
| Ключи | один активный ключ на аккаунт; новый заменяет старый |
| Контент | контент для взрослых разрешён; сексуальный контент с несовершеннолетними запрещён |
| Вход | 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 | модель занята — повторите через несколько секунд |