# Свой API для озвучки текста в Docker

Обновлено 2026-10-22

API синтеза речи на собственном сервере превращает текст в аудио для любой программы, которая умеет отправлять HTTP-запрос: сайта, бота, игрового бэкенда или скрипта на любом языке. Текст не покидает вашу машину, а платить за символы не нужно.

В этом руководстве показано, как запустить движок SuperClonica на основе открытой модели Supertonic 3 как HTTP-сервер в Docker: старт на процессоре или видеокарте NVIDIA, запросы со встроенными и своими голосами и подготовка к реальной работе. Образ и движок наши, поэтому мы прямо говорим, где речь о нашем продукте.

## Зачем запускать синтез речи у себя

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

- Приватность: тексты и аудио остаются на вашем железе — это важно для внутренних документов, сообщений и данных пользователей.
- Стоимость: после покупки железа речь бесплатна, длинные тексты и большие объёмы не увеличивают счёт.
- Любой клиент: один HTTP-эндпоинт одинаково обслуживает Python, JavaScript, Go, PHP, C# или shell-скрипт.
- Офлайн: после загрузки модели серверу не нужен интернет.

## Запуск сервера

На любом процессоре: docker run -d --name tts -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu. На видеокарте NVIDIA установите NVIDIA Container Toolkit и запустите docker run -d --name tts --gpus all -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cuda; CUDA и cuDNN уже в образе, от хоста нужен только драйвер.

При первом запуске модель Supertonic 3 (около 385 МБ) скачивается в том superclonica-models, следующие запуски используют её повторно. Сервер готов, когда GET http://localhost:8000/health отвечает статусом, версией и используемым устройством. В образе есть собственная проверка здоровья, поэтому docker ps показывает, когда контейнер готов.

## Отправка запроса

POST /synthesize принимает JSON и возвращает моно-WAV 16 бит: curl -X POST http://localhost:8000/synthesize -H "Content-Type: application/json" -d '{"text": "Привет с моего сервера!", "voice": "F1", "lang": "ru"}' -o hello.wav. Заголовки X-Sample-Rate и X-Duration-Seconds описывают аудио.

Поля запроса: text, voice, lang, seed и normalize. voice — один из десяти встроенных голосов, от M1 до M5 и от F1 до F5, или свой голос; lang — язык текста, один из 31 языка модели (китайского среди них нет). Фиксированный seed даёт то же аудио для того же текста, а normalize выравнивает громкость. GET /voices перечисляет встроенные голоса и языки, а /docs показывает интерактивную документацию API.

## Свои голоса

Голос Supertonic 3 — это JSON-файл размером около 0,3 МБ. Бесплатные голоса с примерами звучания лежат в репозитории superclonica/supertonic-voices на GitHub, а в каталоге SuperClonica их больше 170, у каждого есть бесплатное онлайн-демо.

Голос передаётся в запросе самим JSON-объектом в поле voice, поэтому сервер не хранит файлы голосов. Объект большой, так что собирайте запрос в файле и отправляйте через curl -d @request.json или из кода: загрузите голос через json.load в Python или JSON.parse в JavaScript и отправьте вместе с текстом. Тело запроса может весить до 2 МБ.

## Настройки

Сервер берёт настройки из переменных окружения — через -e в docker run или в файле Compose.

- SUPERCLONICA_API_KEY: если задан, /synthesize и /voices требуют заголовок Authorization: Bearer и ключ.
- SUPERCLONICA_LANES: копии модели, от 1 до 8 (по умолчанию 1); каждая озвучивает один запрос за раз и требует своей памяти.
- SUPERCLONICA_DEVICE: auto, cuda или cpu (по умолчанию auto — видеокарта, если она есть).
- SUPERCLONICA_THREADS: потоки процессора (по умолчанию по одному на физическое ядро).
- SUPERCLONICA_MAX_TEXT: самый длинный текст в символах (по умолчанию 5000).

## Перед запуском в продакшен

Несколько привычек делают свой API озвучки быстрым и безопасным.

- Сохраняйте том /models, чтобы после перезапуска модель не скачивалась заново, и запускайте контейнер с --restart unless-stopped.
- Не открывайте порт 8000 в интернет как есть: задайте API-ключ и поставьте сервер за обратный прокси с HTTPS или держите его в частной сети.
- Делите длинные тексты на абзацы на своей стороне, если нужен прогресс или потоковая выдача; движок и так озвучивает длинный текст естественными кусками до 160 символов.
- Кэшируйте аудио для повторяющихся текстов, например фраз интерфейса: тот же текст, голос и seed всегда дают тот же файл.
- Измеряйте на своём железе: в наших тестах короткая фраза заняла 0,12 с на RTX 5070 Ti и 0,43 с на четырёх потоках Ryzen 7 5800X.

## Лицензии

Движок SuperClonica и образ выпущены под Apache License 2.0. Модель Supertonic 3 распространяется под OpenRAIL-M — бесплатной лицензией со списком запрещённых применений вместо запрета на коммерческое использование: не используйте речь, чтобы выдавать себя за другого человека без согласия, обманывать или травить, и указывайте, что аудио сгенерировано, там, где это важно.

## Другие руководства

- [Как озвучить текст голосом офлайн на своём компьютере](https://superclonica.com/ru/guides/offline-text-to-speech)
- [Клонирование голоса: как получить голос, похожий на запись](https://superclonica.com/ru/guides/voice-cloning)
- [Лучшие бесплатные модели синтеза речи для локального запуска в 2026 году](https://superclonica.com/ru/guides/best-free-tts-models)
- [Озвучка текста для видео, аудиокниг, игр и приложений](https://superclonica.com/ru/guides/text-to-speech-for-videos)
- [Голоса Supertonic 3: где взять свои голоса и как ими пользоваться](https://superclonica.com/ru/guides/supertonic-3-voices)
- [Озвучка текста на Python: офлайн, бесплатно и естественными голосами](https://superclonica.com/ru/guides/python-text-to-speech)

## Синтез речи и сравнения

- [Синтез речи и озвучка текста на вашем компьютере](https://superclonica.com/ru/text-to-speech)
- [SuperClonica против Supertonic: та же модель, быстрее и чище](https://superclonica.com/ru/compare/supertonic)
- [Fish Audio и Fish Speech или SuperClonica](https://superclonica.com/ru/compare/fish-audio)
- [OmniVoice или SuperClonica: больше языков или больше скорости](https://superclonica.com/ru/compare/omnivoice)
- [Qwen3-TTS или SuperClonica для локального синтеза речи](https://superclonica.com/ru/compare/qwen3-tts)
- [VoxCPM 2 или SuperClonica: студийный звук или скорость на CPU](https://superclonica.com/ru/compare/voxcpm)
- [F5-TTS или SuperClonica: клонирование без обучения или быстрая речь на CPU](https://superclonica.com/ru/compare/f5-tts)
- [Офлайн-альтернатива ElevenLabs](https://superclonica.com/ru/compare/elevenlabs)
- [Kokoro TTS или SuperClonica: две компактные модели для синтеза речи](https://superclonica.com/ru/compare/kokoro)
- [Piper TTS или SuperClonica: маленькие устройства или свои голоса](https://superclonica.com/ru/compare/piper)
- [Coqui XTTS-v2 или SuperClonica: альтернатива Coqui TTS](https://superclonica.com/ru/compare/xtts)
- [Chatterbox TTS или SuperClonica: мгновенный клон или обученный файл голоса](https://superclonica.com/ru/compare/chatterbox)

## Частые вопросы

### Совместим ли API с эндпоинтом озвучки OpenAI?

Нет. У него свой простой формат JSON: на входе text, voice, lang и несколько опций, на выходе файл WAV. Небольшой адаптер в вашем коде или прокси может переводить в него другие форматы.

### Нужна ли видеокарта?

Нет. Образ cpu работает на обычном процессоре, и короткая фраза занимает заметно меньше секунды. Видеокарта NVIDIA с образом cuda в несколько раз быстрее и подходит для больших объёмов.

### Сколько запросов он обрабатывает одновременно?

Запросы озвучиваются на lanes — копиях модели; с одной копией они идут по очереди. Задайте SUPERCLONICA_LANES (до 8), чтобы обслуживать несколько сразу; на процессоре копии делят его ядра, на видеокарте лучше её загружают.

### Работает ли он без интернета?

Да, после первого запуска. Модель хранится в томе /models, и дальше серверу соединение не нужно; интернет требуется только для загрузки образа и первой загрузки модели.

- [Голоса для вашего API](https://superclonica.com/ru/explore)
- [Другие способы установки движка](https://superclonica.com/ru/superclonica)

## Источники

- [Docker-образ SuperClonica (Docker Hub)](https://hub.docker.com/r/superclonica/superclonica)
- [Установка NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html)
- [Движок SuperClonica (PyPI)](https://pypi.org/project/superclonica-cpu/)
- [Карточка модели Supertonic 3 (Hugging Face)](https://huggingface.co/supertone-oss-archive/supertonic-3)
- [Бесплатные голоса Supertonic 3 (GitHub)](https://github.com/superclonica/supertonic-voices)
- [SuperClonica](https://superclonica.com/ru/)
- [Каталог AI-голосов для озвучки текста](https://superclonica.com/ru/explore)
- [Заказ голоса по референсу для Supertonic 3](https://superclonica.com/ru/requests)
- [Как это работает: голоса, озвучка, обучение](https://superclonica.com/ru/guide)
- [Установка быстрого движка для Supertonic 3](https://superclonica.com/ru/superclonica)
- [О нас: команда энтузиастов синтеза речи](https://superclonica.com/ru/about)
- [Контакты, поддержка и жалобы на голоса](https://superclonica.com/ru/contacts)
- [Политика конфиденциальности](https://superclonica.com/ru/privacy)
- [Условия использования](https://superclonica.com/ru/terms)
- [Синтез речи](https://superclonica.com/ru/text-to-speech)
