Skip to main content

This is a light version of chatterbox that removes:

  • librosa and all its required dependencies and instead uses torchaudio and scipy
  • perth because who the heck needs watermarking anyways
  • omegaconf and instead use standard python
  • others I forget, but everything works

However, I did add soundfile because I like it.

Installation

Go through these steps in order.

python -m venv .
.\Scripts\activate
python.exe -m pip install --upgrade pip
pip install uv

Next, make sure appropriate versions of torch, torchaudio, and CUDA are installed.

uv pip install chatterbox-light

To install the latest code from GitHub instead:

uv pip install -r requirements.txt
pip install git+https://github.com/BBC-Esq/chatterbox-light.git --no-deps

This package installs the chatterbox module, just like Resemble AI's chatterbox-tts, so don't install both in one environment. Installs of this fork made from GitHub before version 1.0.1 are also named chatterbox-tts; run pip uninstall chatterbox-tts before installing this.

Optional: if you'll use the multilingual model with Japanese or Chinese text, also install these (or install "chatterbox-light[multilingual]"). Without them, Japanese kanji are dropped and Chinese text isn't split into words. The first time Chinese text is used, spacy-pkuseg downloads a ~35 MB model to ~/.pkuseg.

uv pip install pykakasi spacy-pkuseg

Usage

Each model's generate() returns a (1, samples) tensor at model.sr (24 kHz). Models download from Hugging Face the first time they're used. Save the audio with soundfile:

import soundfile as sf
sf.write("output.wav", wav.squeeze(0).numpy(), model.sr)

Chatterbox (English)

from chatterbox.tts import ChatterboxTTS

model = ChatterboxTTS.from_pretrained(device="cuda")  # or "cpu" / "mps"
wav = model.generate("Hello there, this is Chatterbox.")

# clone a voice from a reference clip
wav = model.generate("Hello there, this is Chatterbox.", audio_prompt_path="reference.wav")

# more expressive: raise exaggeration (default 0.5) and lower cfg_weight (default 0.5) for slower pacing
wav = model.generate("Hello there, this is Chatterbox.", exaggeration=0.7, cfg_weight=0.3)

Chatterbox Turbo (English)

Faster, and understands paralinguistic tags such as [laugh], [chuckle] and [cough]. A reference clip must be longer than 5 seconds. cfg_weight, exaggeration and min_p are ignored.

from chatterbox.tts_turbo import ChatterboxTurboTTS

model = ChatterboxTurboTTS.from_pretrained(device="cuda")
wav = model.generate("Hi there [chuckle], have you got a minute to chat?", audio_prompt_path="reference.wav")

Chatterbox Nano (English)

A smaller version of Turbo for CPU and tight memory budgets, loaded through the same class with nano=True:

from chatterbox.tts_turbo import ChatterboxTurboTTS

model = ChatterboxTurboTTS.from_pretrained(device="cpu", nano=True)
wav = model.generate("Hi there [chuckle], have you got a minute to chat?")

Chatterbox Multilingual (23 languages)

The v2 checkpoint loads by default. Pass t3_model="v3" for the newer v3 checkpoint, which upstream recommends (fewer hallucinations, better speaker similarity). For Japanese or Chinese text, install the optional packages above.

from chatterbox.mtl_tts import ChatterboxMultilingualTTS, SUPPORTED_LANGUAGES

print(SUPPORTED_LANGUAGES)  # language codes such as "fr", "de", "ja", "zh"
model = ChatterboxMultilingualTTS.from_pretrained(device="cuda", t3_model="v3")
wav = model.generate("Bonjour, comment ça va ?", language_id="fr")
wav = model.generate("Hola, ¿cómo estás?", language_id="es", audio_prompt_path="reference.wav")

Voice conversion

from chatterbox.vc import ChatterboxVC

model = ChatterboxVC.from_pretrained(device="cuda")
wav = model.generate("input.wav", target_voice_path="target_voice.wav")

See the example_*.py scripts for complete runs.

Enjoy!

Metadata

Release files for chatterbox-light 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for chatterbox-light 1.0.1
File Size Uploaded Provenance
chatterbox_light-1.0.1.tar.gz 55.8 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for chatterbox-light 1.0.1
File Interpreter ABI Platform
chatterbox_light-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 130.1 kB

Release files / chatterbox_light-1.0.1.tar.gz

Download URL chatterbox_light-1.0.1.tar.gz
Size 55.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b9b415f4441a734e5b733502b960a3278f5c5c6b8dc723706d03ab6920d317f8
BLAKE2b-256 checksum
How to use checksums
66944c654664949319d54f4b40c059ad0f3a78d88c6c7bcbe6b7ad27ba06b62d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.

Transparency log

Release files / chatterbox_light-1.0.1-py3-none-any.whl

Download URL chatterbox_light-1.0.1-py3-none-any.whl
Size 74.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3be1b9847b3865eaed3d309bbae4395b5dda59c2064d6722102c58b362070278
BLAKE2b-256 checksum
How to use checksums
2baa4abb9bd7958f4f00cb15f82908f692922ecc39e69aafbfd4159b3b33760f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.

Transparency log

Security for chatterbox-light 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for chatterbox_light-1.0.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page