VoxCPM2 is a tokenizer-free, diffusion autoregressive Text-to-Speech model — 2B parameters, 30 languages, 48kHz audio output, trained on over 2 million hours of multilingual speech data. - 30-Language Multilingual — No language tag needed; input text in any supported language directly - Voice Design — Generate a novel voice from a natural-language description alone (gender, age, tone, emotion, pace…); no reference audio required - Controllable Cloning — Clone any voice from a short clip, with optional style guidance to steer emotion, pace, and expression while preserving timbre - Ultimate Cloning — Provide reference audio + its transcript for audio-continuation cloning; every vocal nuance…
VoxCPM2-q8 is an open-weight model for text to speech from Ryo Shimizu, released under Apache License 2.0. It has 2.4B parameters. At 16-bit it needs about 5.7 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index.
An INT8-quantized repack of openbmb/VoxCPM2, prepared so the model can be loaded and run entirely inside a web browser by shi3z/voxcpm2web (a WASM + WebGPU port of Nothing about the model architecture was changed. This repository exists to solve 1.
Runs On
What it takes to serve VoxCPM2-q8 (2.4B parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.
| Precision | Weights | Memory needed | Cheapest setup | Per hour | Also fits |
|---|---|---|---|---|---|
| 16-bit | 4.8 GB | 5.7 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 8-bit | 2.4 GB | 2.9 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 4-bit | 1.2 GB | 1.4 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Oct 18, 2026.
VoxCPM2-q8 on every accelerator the SAVRN Index prices, at every precision
Model Card
By Ryo Shimizu, published under apache-2.0, revision 7678fd25ae76.
An INT8-quantized repack of openbmb/VoxCPM2, prepared so the model can be loaded and run entirely inside a web browser by shi3z/voxcpm2web (a WASM + WebGPU port of Nothing about the model architecture was changed. This repository exists to solve 1. wasm32 has a 4 GB address space. The upstream checkpoint is 4.27 GiB of weights plus a 359 MB audiovae.pth. 2. Quantizing during load costs VRAM you may not have. Doing it ahead of time means the browser never materializes the full-precision tensors at all. There is no separate audiovae file: the AudioVAE weights are already merged in, so a browser needs exactly one large download instead of two. Both rows produce applied=632 missing=0 unused=0…
Read Ryo Shimizu's full model card
VoxCPM2 — INT8 (Q8) checkpoint for in-browser WebGPU inference
An INT8-quantized repack of openbmb/VoxCPM2,
prepared so the model can be loaded and run entirely inside a web browser by
shi3z/voxcpm2web (a WASM + WebGPU port of
mii-nipah/voxcpm-rs).
Nothing about the model architecture was changed. This repository exists to solve two concrete browser constraints:
wasm32has a 4 GB address space. The upstream checkpoint is 4.27 GiB of weights plus a 359 MBaudiovae.pth.- Quantizing during load costs VRAM you may not have. Doing it ahead of time means the browser never materializes the full-precision tensors at all.
What is in here
| File | Size | Notes |
|---|---|---|
model.safetensors |
2.45 GiB | the whole model, including the AudioVAE |
config.json |
4.3 KB | copied from upstream |
tokenizer.json |
3.6 MB | copied from upstream |
There is no separate audiovae file: the AudioVAE weights are already merged in,
so a browser needs exactly one large download instead of two.
Measured against the upstream checkpoint
Both rows produce applied=632 missing=0 unused=0 errors=0.
| upstream | this checkpoint | |
|---|---|---|
| download | 4.27 GiB + 359 MB | 2.45 GiB |
| load, native (RTX 3090) | 30–35 s | 7.4 s |
| load, in browser | 35.7 s | 9.1 s |
| weights resident on the GPU | 9.09 GB | 2.90 GB |
| peak GPU memory, generation included | — | 5.22 GiB |
| peak WASM heap | 2.0 GB | 1.4 GB |
The 5.22 GiB figure is why this checkpoint exists: it is what makes an 8 GB GPU enough. Quantizing on the fly from the upstream checkpoint has to hold full-precision tensors while it works, which does not fit in 8 GB.
Format
Ordinary safetensors. Quantized tensors are stored as flat U8 blobs and are
described by a voxcpm_quant entry in the file's __metadata__:
{
"version": 1,
"scheme": "...",
"quantized": { "<tensor name>": [<shape>], "...": [] }
}
Each blob is Burn's QuantValue::Q8S packed representation — per-tensor scales
appended after the packed values, the exact layout burn's q_from_data
consumes. Weights that cannot be packed (anything whose last dimension is not a
multiple of 4, and tensors under 65536 elements) stay in floating point, stored
as F16.
Because the file is exported from an already-loaded model, the tensor names
are the Rust module's final paths — after remapping, fusing and transposing.
It is therefore not a drop-in replacement for the upstream checkpoint in the
Python implementation; it is meant for voxcpm-rs, which applies it with no
adapter.
Usage
In the browser this is the default weights source — "Hugging Face, INT8 (2.45 GiB, AudioVAE included)" — at https://shi3z.github.io/voxcpm2web/, or natively:
cargo run --release --features wgpu --example stream_load -- \
/path/to/VoxCPM2-q8 "こんにちは。" out.wav
Caveats
- Nobody has evaluated the audio quality formally. Correlation against the F32 output has not been computed for this checkpoint, and no listening test has been run. INT8 weight quantization is usually benign for TTS, but treat that as an assumption, not a result.
- Only Q8 works. Q4 is blocked upstream:
cubek-matmul's autotuner requests 98304 bytes of workgroup shared memory where WebGPU offers 49152, and panics rather than retrying with a smaller tile.
Licence
Apache-2.0, inherited from VoxCPM2. These are OpenBMB's weights, numerically
transformed. See LICENSE. Original model:
https://huggingface.co/openbmb/VoxCPM2.
Identity and Version
- Repository
- shi3z/VoxCPM2-q8
- Publisher
- Ryo Shimizu
- Task
- Text to speech
- Modality
- Audio
- Library
- voxcpm-rs
- Parameters
- 2.4B parameters
- Languages
- ja, zh, en
- Revision
- 7678fd25ae7672430e62c70dcc3168affad464d4
- First published
- 2026-10-12
- Last updated
- 2026-10-12
Files and Weights
6 files, 2.6 GB in total. The weights are 1 file totalling 2.6 GB in safetensors.
Every file
| File | Type | Size | SHA-256 |
|---|---|---|---|
| model.safetensors | Weights | 2.6 GB | 2742b53f07ea |
| config.json | Configuration | 4.3 KB | — |
| LICENSE | Documentation | 11.4 KB | — |
| README.md | Documentation | 3.9 KB | — |
| .gitattributes | Repository | 1.5 KB | — |
| tokenizer.json | Tokenizer | 3.7 MB | — |
License and Download
- License
- apache-2.0
- Access
- Open weights, no gate
- Download size
- 2.6 GB
Released by Ryo Shimizu through its official repository on Hugging Face. Read the license.
Built From
- Derived from openbmb/VoxCPM2
Memory Requirements
| Precision | Weights in memory |
|---|---|
| As published | 2.6 GB |
| 16-bit | 4.8 GB |
| 8-bit | 2.4 GB |
| 4-bit | 1.2 GB |
Weights only, from the published parameter count; the key-value cache and runtime add to this.
Questions About VoxCPM2-q8
How much GPU memory does VoxCPM2-q8 need?
About 5.7 GB at 16-bit and 1.4 GB at 4-bit: the weights (2.4B parameters) plus a working margin. A long context needs more.
What is the cheapest GPU to run VoxCPM2-q8 on?
At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.
Can I use VoxCPM2-q8 commercially?
Yes. VoxCPM2-q8 is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.
Similar Models
VoxCPM2 is a tokenizer-free, diffusion autoregressive Text-to-Speech model — 2B parameters, 30 languages, 48kHz audio output, trained on over 2 million hours of multilingual speech data. - 30-Language Multilingual — No language tag needed; input text in any supported language directly - Voice Design — Generate a novel voice from a natural-language description alone (gender, age, tone, emotion, pace…); no reference audio required - Controllable Cloning — Clone any voice from a short clip, with optional style guidance to steer emotion, pace, and expression while preserving timbre - Ultimate Cloning — Provide reference audio + its transcript for audio-continuation cloning; every vocal nuance…
MOSS‑TTS Family is an open‑source speech and sound generation model family from MOSI.AI and the OpenMOSS team. It is designed for high‑fidelity, high‑expressiveness, and complex real‑world scenarios, covering stable long‑form speech, multi‑speaker dialogue, voice/character design, environmental sound effects, and real‑time streaming TTS. When a single piece of audio needs to sound like a real person, pronounce every word accurately, switch speaking styles across content, remain stable over tens of minutes, and support dialogue, role‑play, and real‑time interaction, a single TTS model is often not enough. The MOSS‑TTS Family breaks the workflow into five production‑ready models that can be…
VibeVoice is a novel framework designed for generating expressive, long-form, multi-speaker conversational audio, such as podcasts, from text. It addresses significant challenges in traditional Text-to-Speech (TTS) systems, particularly in scalability, speaker consistency, and natural turn-taking. A core innovation of VibeVoice is its use of continuous speech tokenizers (Acoustic and Semantic) operating at an ultra-low frame rate of 7.5 Hz. These tokenizers efficiently preserve audio fidelity while significantly boosting computational efficiency for processing long sequences. VibeVoice employs a next-token diffusion framework, leveraging a Large Language Model (LLM) to understand textual…
VibeVoice is a novel framework designed for generating expressive, long-form, multi-speaker conversational audio, such as podcasts, from text. It addresses significant challenges in traditional Text-to-Speech (TTS) systems, particularly in scalability, speaker consistency, and natural turn-taking. A core innovation of VibeVoice is its use of continuous speech tokenizers (Acoustic and Semantic) operating at an ultra-low frame rate of 7.5 Hz. These tokenizers efficiently preserve audio fidelity while significantly boosting computational efficiency for processing long sequences. VibeVoice employs a next-token diffusion framework, leveraging a Large Language Model (LLM) to understand textual…
https://github.com/vibevoice-community/VibeVoice VibeVoice is a novel framework designed for generating expressive, long-form, multi-speaker conversational audio, such as podcasts, from text. It addresses significant challenges in traditional Text-to-Speech (TTS) systems, particularly in scalability, speaker consistency, and natural turn-taking. A core innovation of VibeVoice is its use of continuous speech tokenizers (Acoustic and Semantic) operating at an ultra-low frame rate of 7.5 Hz. These tokenizers efficiently preserve audio fidelity while significantly boosting computational efficiency for processing long sequences. VibeVoice employs a next-token diffusion framework, leveraging a…

