RU ▾

Текстовый API без цензуры для конвейеров речи

uncensoredhttps://api.xtts.cc/v1

Быстрый старт для конвейеров Xtts

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

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

Начните с перехода на страницу Получить API-ключ и входа через Google или по паролю электронной почты. Вы сразу получите уникальный API-ключ. Используйте базовый URL https://api.xtts.cc/v1 для всех запросов. Этот URL совместим с официальными SDK OpenAI и любым клиентом, поддерживающим формат chat-completions OpenAI.

Добавьте свой ключ в заголовок Authorization в виде токена Bearer. Идентификатор модели, который вы должны указать, — uncensored. Эта модель с открытыми весами размещена на наших серверах и настроена на ответы без отказов по контенту для законного использования взрослыми, обеспечивая ваш голосовой конвейер сырым текстом.

Генерация текста без цензуры

Отправьте запрос POST на эндпоинт /v1/chat/completions с вашими системным и пользовательским промптами. API возвращает структурированный JSON с сгенерированным текстом. Этот эндпоинт предназначен для написания промптов, генерации сценариев и задач постобработки в вашем конвейере клонирования голоса.

Тело запроса включает имя модели, историю ваших сообщений и необязательные параметры, такие как temperature или top_p. Вы можете контролировать длину вывода с помощью параметра max_tokens. Если вы не установите max_tokens, ответ может занять весь контекстный окно.

curl https://api.xtts.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 SDK

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

Создайте экземпляр клиента с базовым URL и вызовите метод chat.completions.create. Передайте идентификатор модели uncensored и ваши сообщения. Объект ответа содержит сгенерированный текст в поле content. Этот метод идеален для пакетной обработки сценариев или интеграции генерации текста в более крупные приложения Python.

from openai import OpenAI

client = OpenAI(base_url="https://api.xtts.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 SDK

Для сред JavaScript используйте Node SDK OpenAI. Настройте клиент с нашим базовым URL и API-ключом. Эта настройка позволяет генерировать текст непосредственно в ваших веб- или серверных приложениях.

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

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.xtts.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 в 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 параллельными запросами. Тело запроса не должно превышать 8 МБ. Если вы отправите недействительный ключ, вы получите ошибку 401. Если ваш предоплаченный баланс исчерпан, вы получите ошибку 402. Превышение лимита запросов приводит к ошибке 429.

Контекстное окно поддерживает 100,000 токенов суммарно, включая как промпт, так и завершение. Отдельного ограничения на вывод нет, и вы можете указать меньшее значение max_tokens, если хотите получить более короткий ответ. Ошибки и отказы не списывают ваш предоплаченный баланс. Поддержка вызова функций и JSON-режима доступна для извлечения структурированных данных.

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

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

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

Коды ошибок

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

HTTPТипЧто значит
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модель занята — повторите через несколько секунд

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

Как пополнить предоплаченный баланс?

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

Генерирует ли API аудио или видео?

Нет, этот API предназначен строго для генерации текста. Он предоставляет ответ в виде текста без цензуры, который вы можете передать в собственные конвейеры синтеза речи или видео. Он напрямую не создает аудио, изображения или видеофайлы.

Что такое пробное предложение?

Новые пользователи получают $0.50 пробного кредита, один раз на человека, действительного в течение 7 дней. Получите этот кредит в один клик на странице вашего API-ключа. Для регистрации не требуется кредитная карта. Это позволяет вам протестировать API перед покупкой предоплаченного кредита.

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

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