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