RU ▾

unhinged.topРазмещенное API без цензуры для разработчиков

Интеграция модели Unhinged за минуты

Запустите модель в своем коде, изменив только базовый URL. В этом руководстве описаны основные эндпоинты, аутентификация и шаблоны интеграции для синхронных и потоковых сценариев.

Базовый URL и аутентификация

Чтобы начать использовать модель unhinged, вам нужен действующий API-ключ. Создайте его мгновенно через Google или email на странице Получить API-ключ. Номер телефона не требуется, ключ отображается сразу.

Укажите базовый URL: https://api.unhinged.top/v1. Все запросы должны включать заголовок Authorization со схемой Bearer. Эта настройка совместима с любым SDK, совместимым с OpenAI. API предоставляет одну онлайн-модель без цензуры LLM, оптимизированную для прямой генерации текста без дополнительных слоёв маршрутизации.

Первый запрос

Отправьте стандартный запрос на завершение чата, чтобы протестировать интеграцию. Идентификатор модели всегда uncensored. Этот эндпоинт возвращает сырой текст без отказов в контенте для законного использования взрослыми. При превышении лимита API возвращает понятный код ошибки.

curl https://api.unhinged.top/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."}]
  }'

Этот простой POST-запрос демонстрирует прямую природу сервиса: текст на входе, текст на выходе. Вы можете настроить параметры, такие как temperature, чтобы управлять креативностью. В ответе содержится информация об использовании токенов, что помогает отслеживать расходы согласно прозрачной модели ценообразования.

Интеграция Python SDK

Используйте официальный Python SDK от OpenAI для взаимодействия с API. Настройте базовый URL и API-ключ при инициализации клиента. Этот подход позволяет сохранить существующую структуру кода, заменив модель на версию без цензуры.

from openai import OpenAI

client = OpenAI(base_url="https://api.unhinged.top/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)

Разработчики на Python получают выгоду от синхронной природы этого фрагмента. Он автоматически управляет жизненным циклом запроса. Убедитесь, что вы обрабатываете исключения при превышении лимита запросов или ошибках аутентификации. Модель поддерживает до 100 000 токенов в контекстном окне, что позволяет хранить обширную историю промптов.

Интеграция Node SDK

Для сред JavaScript и TypeScript Node SDK предлагает аналогичную простоту использования. Инициализируйте клиент, указав базовый URL и ключ. Это позволяет быстро прототипировать AI-функции в веб-приложениях или бэкенд-сервисах.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.unhinged.top/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);

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

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

Для снижения задержки включите потоковую передачу, установив 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)

Потоковая передача необходима для интерфейсов в стиле чата, где пользователи ожидают обратной связи в реальном времени. Парсите поля choices[0].delta.content, чтобы восстановить полный ответ. Этот метод значительно сокращает время до получения первого токена по сравнению с полными синхронными ответами.

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

API устанавливает строгие квоты для обеспечения стабильности. Вы ограничены 300 запросами в минуту и 8 параллельными запросами на ключ. Тело запроса не должно превышать 8 МБ. При превышении этих лимитов вы получите ошибку 429.

Ошибки аутентификации возвращают 401, если ключ недействителен. Если ваш предоплаченный баланс исчерпан, API возвращает 402. Ошибки и отказы бесплатны, поэтому вы платите только за успешное использование токенов. Контекстное окно поддерживает 100 000 токенов в сумме, с максимальным выводом 32 000 токенов на запрос.

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

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

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

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

Как пополнить мой баланс?

Пополнить можно только криптовалютой: USDT (TRC20) или USDC (Base). Допустимые суммы — целые числа от $10 до $500. При пополнении от $50 вы получаете бонус 5%, от $100 — 10%.

Доступен ли бесплатный пробный баланс?

Да, каждый новый аккаунт получает $0,50 пробного баланса на 7 дней. Для регистрации через Google или email не нужна кредитная карта. Это позволяет протестировать API без цензуры без финансовых обязательств.

Что делать, если возникает ошибка 429?

Ошибка 429 означает, что вы превысили лимит запросов в 300 запросов в минуту или лимит параллельных запросов (8). Подождите немного перед повторной попыткой. Вы можете сгенерировать новый ключ вместо старого, но на один аккаунт действует только один активный ключ.

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

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

Получить API-ключЧитать документацию