Chatterbox TTS: локальный голос и клонирование голоса для AI-ассистента
Chatterbox · local TTS · voice cloning · Russian · AI assistant

Chatterbox TTS: локальный голос и клонирование голоса для AI-ассистента

Chatterbox от Resemble AI — семейство open-source TTS-моделей, которое можно запускать локально и использовать для озвучки AI-ассистента, игр, видео, подкастов и voice interfaces. Проект умеет zero-shot voice cloning по короткому reference audio, поддерживает русский язык через Multilingual V3, а семейство теперь разделено на несколько вариантов: быстрый Turbo 350M, лёгкий Nano 110M и Multilingual V3 500M для 23+ языков.

0.1.7 актуальный PyPI package, опубликован 26 марта 2026 года
Multilingual V3 current recommended multilingual checkpoint; 23 языка, включая русский
MIT · Python ≥3.10 официально разработан и протестирован на Python 3.11 / Debian 11
TTS — отдельный слой от LLM

Chatterbox не «думает» — он превращает готовый текст в речь

В голосовом AI-ассистенте обычно есть минимум три независимых блока: распознавание речи, LLM и синтез речи. Chatterbox закрывает последний слой: получает текст и генерирует audio waveform.

Голос пользователямикрофон
→
STTWhisper / другой ASR
→
LLMHermes · OpenClaw · собственный agent
→
Chatterboxtext → speech
01Local inference

Audio можно генерировать без отправки текста в облачный TTS API.

02Voice cloning

Reference audio задаёт голос без отдельного training run.

03Multilingual

V3 поддерживает 23 языка, включая русский.

04Разные latency/quality profiles

Turbo, Nano и Multilingual решают разные задачи.

Не одна модель, а model zoo

Выбор Chatterbox зависит от языка, задержки и железа

МодельРазмерЯзыкиДля чего
Chatterbox Multilingual V3500M23+Русский, localization, cross-language cloning
Chatterbox Turbo350MEnglishVoice agents, lower latency, paralinguistic tags
Chatterbox Nano110MEnglishCPU/on-device и минимальный memory/latency budget
Classic Chatterbox500MEnglishCFG + exaggeration control
Single Language Pack500M each6 finetunesЯзыковые/региональные специализированные модели
Для русского языка основной выбор — Multilingual V3.

Turbo и Nano ориентированы прежде всего на English voice-agent use case. Не стоит выбирать Turbo только из-за меньшего размера, если нужен русский output.

Russian = ru

Русский язык официально входит в список Multilingual V3

Current README и Hugging Face model card перечисляют Russian (ru) среди 23 поддерживаемых языков. Для генерации нужно явно передать language_id="ru".

import torchaudio as ta
from chatterbox.mtl_tts import ChatterboxMultilingualTTS

model = ChatterboxMultilingualTTS.from_pretrained(
    device="cuda",
    t3_model="v3",
)

text = """
Добрый день. Это локальный синтез речи Chatterbox.
Модель работает на вашем компьютере.
"""

wav = model.generate(
    text,
    language_id="ru",
)

ta.save("russian.wav", wav, model.sr)
Reference voice и language tag желательно согласовывать.

Официальные tips предупреждают: если reference clip записан на другом языке, итоговая речь может унаследовать его accent. Для таких cross-language сценариев иногда помогает уменьшение cfg_weight вплоть до 0.

Рекомендуемый baseline — Python 3.11

Установка Chatterbox

PyPI package требует Python 3.10+, но сами разработчики указывают Python 3.11 / Debian 11 как tested environment. Для первого запуска именно 3.11 остаётся наиболее консервативным выбором.

python -m venv .venv

# Windows PowerShell
.\.venv\Scripts\Activate.ps1

python -m pip install --upgrade pip
pip install chatterbox-tts==0.1.7

Установка из текущего source

git clone https://github.com/resemble-ai/chatterbox.git
cd chatterbox

pip install -e .
PyPI package version и GitHub Release tag сейчас не совпадают.

PyPI current package — 0.1.7. В GitHub Releases latest tagged release всё ещё v0.1.2, тогда как master/model cards уже содержат Turbo, Nano и Multilingual V3. Поэтому для актуальных возможностей нельзя ориентироваться только на вкладку Releases.

Минимальный Python example

Обычная генерация без клонирования голоса

import torchaudio as ta
from chatterbox.tts import ChatterboxTTS

model = ChatterboxTTS.from_pretrained(
    device="cuda",
)

text = "Hello from a local text to speech model."

wav = model.generate(text)

ta.save(
    "output.wav",
    wav,
    model.sr,
)

При первом запуске weights будут загружены из model repository. После этого inference выполняется локально, если сама программа не использует дополнительные облачные сервисы.

Zero-shot voice cloning

Чтобы изменить голос, достаточно передать reference audio

AUDIO_PROMPT_PATH = "voice-reference.wav"

wav = model.generate(
    text,
    audio_prompt_path=AUDIO_PROMPT_PATH,
)

ta.save(
    "cloned-voice.wav",
    wav,
    model.sr,
)

Отдельный fine-tuning для каждого нового голоса здесь не нужен. Reference clip используется как acoustic conditioning. Для практики лучше брать короткую чистую запись без музыки, reverberation и одновременной речи нескольких людей.

ЛучшеЧистая речь

Минимум background noise и room echo.

ЛучшеОдин speaker

Без второго голоса или музыки поверх речи.

ЛучшеЕстественная подача

Reference должен быть близок к желаемой манере речи.

ОсторожноCross-language clone

Accent reference language способен переноситься в target language.

Клонируйте только голоса, на использование которых у вас есть разрешение.

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

350M · English · low-latency focus

Chatterbox Turbo добавляет paralinguistic tags: смех, кашель и другие вокальные события

import torchaudio as ta
from chatterbox.tts_turbo import ChatterboxTurboTTS

model = ChatterboxTurboTTS.from_pretrained(
    device="cuda",
)

text = """
Hi, I found the problem [chuckle].
The service was using the old configuration.
"""

wav = model.generate(
    text,
    audio_prompt_path="voice-reference.wav",
)

ta.save("turbo.wav", wav, model.sr)

Official README называет Turbo streamlined 350M architecture. Он использует single-step speech-token-to-mel decoder вместо прежних 10 steps и позиционируется как основной вариант для low-latency English voice agents.

Paralinguistic tags пока не одинаково надёжны.

В открытом issue от 6 сентября 2026 пользователь сообщает, что часть заявленных tags tokenized корректно, но не производит слышимого эффекта. Поэтому конкретные [laugh]/[cough] и другие tags нужно проверять на текущем checkpoint, а не считать гарантированными.

110M · English · on-device

Nano нужен там, где важнее CPU и latency, чем максимальная универсальность

from chatterbox.tts_turbo import ChatterboxTurboTTS

model = ChatterboxTurboTTS.from_pretrained(
    device="cpu",
    nano=True,
)

Nano использует ту же архитектурную линию, что Turbo, но сокращён до 110M parameters. Проект заявляет производительность примерно 3× real-time на 8 CPU cores. Это авторское измерение/позиционирование проекта, а не универсальный benchmark для любого процессора.

Для домашнего always-on assistant Nano интересен именно отсутствием обязательного GPU.

Если нужна English speech output на небольшом сервере, NAS-adjacent PC или CPU-only VM, Nano логичнее тяжёлой multilingual model.

Latest multilingual generation

Multilingual V3 — основной Chatterbox для русского и cross-language voice cloning

V3 сохраняет размер около 500M, а Resemble AI заявляет улучшенную speaker similarity, меньше unwanted continuation/repetition и более естественную разговорную речь по сравнению с предыдущим multilingual checkpoint.

from chatterbox.mtl_tts import ChatterboxMultilingualTTS

model = ChatterboxMultilingualTTS.from_pretrained(
    device="cuda",
    t3_model="v3",
)

wav = model.generate(
    "Теперь этот голос говорит по-русски.",
    language_id="ru",
    audio_prompt_path="reference.wav",
)

Если t3_model не указывать, current README объясняет, что используется legacy V2 path; V3 нужно запросить явно.

V3 не обязательно лучше V2 для каждого языка и каждого голоса.

В августе появился открытый issue, где пользователь показывает заметную регрессию датского произношения V3 относительно V2. Это не доказывает системную проблему всех языков, но означает: перед миграцией длинного production workflow сравните V2 и V3 именно на своём языке/reference voice.

CFG и exaggeration

Качество можно подстраивать, но параметры связаны между собой

Для classic/multilingual Chatterbox официальный README предлагает начинать примерно с: exaggeration=0.5 и cfg_weight=0.5.

Нейтрально0.5 / 0.5

Default starting point.

Больше экспрессииexaggeration ≈ 0.7+

Речь становится драматичнее, но часто ускоряется.

Замедлить/стабилизироватьcfg_weight ≈ 0.3

Может помочь при слишком быстрой reference voice.

Cross-languagecfg_weight → 0

Может уменьшить перенос accent из reference языка.

Не существует одного «лучшего» набора параметров.

Настройки нужно сравнивать на одинаковых текстах и reference clip, потому что speaker, punctuation, язык и длина фразы заметно влияют на результат.

Длинный текст лучше дробить

Для audiobook/podcast pipeline практичнее генерировать предложения/абзацы отдельно, затем нормализовать громкость, pauses и склеить audio. Это позволяет повторно сгенерировать только неудачный кусок, а не весь часовой файл.

Windows работает, но official tested environment — Linux

На Windows главная сложность обычно не модель, а PyTorch/CUDA dependency stack

Current package metadata поддерживает Python 3.10+, но официальный README говорит, что development/testing выполнялись на Python 3.11 и Debian 11. В GitHub issues есть многочисленные Windows/CUDA reports, особенно у старых package combinations.

1Создать чистый Python 3.11 environment

Не ставить в общий global Python с десятками AI packages.

2Проверить NVIDIA driver

nvidia-smi должен видеть GPU до установки Chatterbox.

3Проверить PyTorch CUDA build

torch.cuda.is_available() должен вернуть True.

4Только затем ставить Chatterbox

Так проще локализовать dependency/CUDA issue.

python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
Не копируйте старую CUDA-команду из issue как универсальную.

PyTorch wheel index зависит от вашей текущей версии PyTorch/CUDA. Используйте current installer selector PyTorch для своей системы, а GitHub issue рассматривайте только как диагностику класса проблемы.

Практический сценарий для нашей рубрики

Chatterbox можно поставить как голосовой выход поверх Hermes, OpenClaw или собственного LLM-agent

Telegram / microphoneinput
→
Hermes / OpenClawagent + LLM
→
Chatterbox servicelocal TTS
→
Voice note / speakeraudio response

Сам Chatterbox не обязан жить внутри процесса agent. На практике удобнее поднять его как отдельный local service/API: agent отправляет текст, TTS service возвращает WAV/OGG, а channel adapter отправляет audio пользователю.

HermesVoice assistant

Telegram/cron/agent logic остаются в Hermes, Chatterbox отвечает только за speech synthesis.

OpenClawMulti-channel voice output

TTS можно сделать отдельным tool/service рядом с Gateway.

Home AssistantLocal announcements

Синтезировать сообщения и отдавать их media player.

Свой Python agentПрямой вызов model.generate()

Самый простой вариант без сетевого API.

Responsible AI feature

Каждый официальный Chatterbox output получает PerTh audio watermark

Repository прямо указывает, что generated audio содержит PerTh (Perceptual Threshold) neural watermark. Resemble AI заявляет, что он imperceptible, переживает MP3 compression и типичные audio manipulations, сохраняя почти 100% detection accuracy. Последняя цифра — утверждение самого разработчика проекта.

import perth
import librosa

audio, sr = librosa.load(
    "generated.wav",
    sr=None,
)

watermarker = perth.PerthImplicitWatermarker()

value = watermarker.get_watermark(
    audio,
    sample_rate=sr,
)

print(value)
Для обычного пользователя watermark практически не меняет workflow.

Но для архивов, broadcast pipeline и последующего анализа важно знать, что official generation path intentionally маркирует synthetic audio.

Локальный TTS действительно может быть локальным

После загрузки weights текст и reference voice не обязаны уходить к TTS-провайдеру

Local inferenceText остаётся на машине

При прямом Python inference без cloud API.

Voice sampleReference остаётся local

Если weights уже загружены и используется local filesystem.

First downloadWeights скачиваются извне

Нужен доступ к model hosting при первом запуске.

Agent pipelineДругие слои могут быть облачными

Telegram/OpenAI/Anthropic не становятся локальными из-за local TTS.

Reference voice — биометрически чувствительный материал.

Даже при локальном inference храните voice samples так же аккуратно, как другие персональные исходные данные: без public web directory, случайного Git commit и общей сетевой папки без необходимости.

Что видно по current issues

Качество высокое, но проект всё ещё имеет реальные edge cases

01V3 может регрессировать на конкретном языке

Есть свежий open report по Danish V3 vs V2.

02Не все Turbo tags работают одинаково

Open issue сообщает о tags без слышимого эффекта.

03Code-switching ограничен

Multilingual API требует один language_id на generation.

04Очень короткий text имеет open bug reports

Есть issue про AlignmentStreamAnalyzer / GPU crash на short input.

05Vocoder artifact

Community report описывает постоянный ~4.9 kHz tone/noise floor в части generated audio.

06Windows/CUDA setup менее гладкий

Official tested environment остаётся Debian/Python 3.11.

07Нет native text-only voice design

Для cloning нужен reference audio.

08GitHub security process минимален

На repository security page сейчас нет SECURITY.md и published advisories.

Хорошая стратегия — тестировать конкретный голос на наборе реальных фраз.

Numbers и демо не заменяют вашу собственную выборку: короткие ответы, числа, аббревиатуры, адреса, технические термины, длинные предложения и русский текст с ударениями/именами.

Почему статья имеет смысл именно сейчас

В LocalLLaMA TTS снова становится заметной частью local-agent стека

В свежих обсуждениях сентября 2026 пользователи снова спрашивают, чем локально озвучивать модели и AI-ассистентов. Chatterbox регулярно появляется среди практических вариантов именно благодаря voice cloning и multilingual support.

12 сентября Best local TTS model

В обсуждении Chatterbox отдельно отмечают за voice cloning по короткому reference sample.

9 сентября Narration / audiobook

Пользователь применяет Chatterbox Audiobook fork и обсуждает ограничения эмоций/consistency.

10 сентября TTS для Hermes

LocalLLaMA обсуждает lightweight local speech именно как часть personal-agent pipeline.

17 сентября «Как дать моей LLM голос?»

Спрос смещается от isolated TTS demo к реальным voice-agent связкам.

Форумные рекомендации — это пользовательский опыт, не benchmark.

Hardware, language, reference voice и требования к latency у всех разные, поэтому community consensus используем как сигнал интереса, а не как доказательство «лучшей модели».

Первоисточники

Chatterbox 2026: V3, Turbo, Nano, Python package и реальные issues

Материал проверен 21 сентября 2026 года.

Current PyPI package — 0.1.7. Current repository/model cards рекомендуют Multilingual V3 как general-purpose multilingual model. GitHub release tags заметно отстают от package/model development.

Вывод

Chatterbox интересен тем, что закрывает сразу три сценария: local TTS, клонирование голоса и голосовой интерфейс для AI-agent

Для русского personal assistant сейчас логичнее смотреть на Multilingual V3. Для English realtime-agent — на Turbo. Для небольшого CPU-only устройства — на Nano.

Главное преимущество перед облачным TTS — возможность держать text и voice reference локально, а главное ограничение — необходимость самостоятельно управлять железом, зависимостями, качеством конкретного голоса и длинными audio workflows.

Для нашего стека особенно интересна связка: Hermes/OpenClaw + local LLM + Chatterbox. Тогда агент не только думает локально, но и отвечает собственным локальным голосом.

FAQ

Частые вопросы про Chatterbox TTS

Что такое Chatterbox простыми словами?

Open-source семейство text-to-speech моделей Resemble AI: генерирует речь локально, умеет voice cloning и имеет multilingual вариант.

Поддерживает ли Chatterbox русский язык?

Да. Current Chatterbox Multilingual V3 официально включает Russian с language_id="ru".

Можно ли клонировать голос?

Да. В generate() передаётся audio_prompt_path с reference recording. Отдельный fine-tuning для одного нового голоса не обязателен.

Какая модель подходит для русского?

Multilingual V3 500M. Turbo и Nano в current model zoo ориентированы на English.

Можно ли запускать без видеокарты?

Да. Nano специально ориентирован на CPU/on-device inference; другие варианты также технически могут работать на CPU, но будут тяжелее и медленнее.

Что выбрать для голосового ассистента?

Для English и минимальной latency — Turbo; для русского — Multilingual V3; для слабого CPU — Nano, если English достаточно.

Есть ли управление эмоциями?

Classic/multilingual дают exaggeration/CFG controls. Turbo имеет paralinguistic tags вроде [laugh]/[cough], но current issue reports показывают, что не все tags одинаково надёжны.

Отправляет ли Chatterbox текст в облако?

При прямом local inference — нет. Но weights при первом запуске скачиваются, а другие части вашего AI pipeline могут пользоваться внешними сервисами.

Есть ли watermark?

Да. Official generation path добавляет встроенный PerTh neural audio watermark.

Какая версия актуальна?

На 21 сентября 2026 current PyPI package — chatterbox-tts 0.1.7; latest multilingual model line в repository/model card — Multilingual V3.

Локальный голос для локального ИИ

Хотите, чтобы Hermes, OpenClaw или свой AI-ассистент отвечал голосом без облачного TTS?

Начать лучше с одной модели и одного чистого reference clip: проверить русский текст, числа, имена, технические термины и длинные предложения, а уже затем подключать TTS к Telegram, Home Assistant или постоянному agent service.