CosyVoice 2: Features, Demo, and CosyVoice 2 vs 3 Compared
CosyVoice 2 (cosyvoice2) is the second generation of the open-source CosyVoice text-to-speech model, released in December 2024 as CosyVoice2-0.5B. It put streaming and non-streaming synthesis into one model built on a pre-trained LLM. Here's what it does, how to run it, and how it compares with CosyVoice 3.
What is CosyVoice 2?
CosyVoice 2 is a zero-shot, streaming text-to-speech model. The paper describes it as a systematic upgrade of CosyVoice 1 aimed at low latency for voice chat and other interactive apps.
Built on a pre-trained LLM
Its text-speech language model is the pre-trained Qwen2.5-0.5B LLM. CosyVoice 1's separate text encoder and the speaker embedding were removed from the language model.
FSQ speech tokens at 25 Hz
Finite scalar quantization replaces vector quantization in the speech tokenizer to use the codebook better. The tokenizer produces 25 speech tokens per second.
Streaming and non-streaming in one model
A chunk-aware causal flow matching model serves both modes. The paper reports virtually lossless quality in streaming mode compared with offline synthesis.
Instructions and fine-grained control
Trained with 1,500 hours of instructed data: natural-language instructions for emotion, speaking rate, role-play and dialect, plus tags such as [laughter], [breath] and <strong> for emphasis.
Zero-shot and cross-lingual cloning
Clones a voice from a reference clip. The repository's example.py shows zero-shot, cross-lingual, instruct and bi-streaming (text fed in as it is generated) calls for CosyVoice2-0.5B.
Open weights since December 2024
CosyVoice2-0.5B was released in December 2024 under Apache-2.0. The README roadmap adds vLLM support (May 2025) and a TensorRT-LLM runtime with GRPO training support (August 2025).
CosyVoice 2 demo
Hear CosyVoice 2 side by side with CosyVoice 3 on the same prompts in our audio demo, or on the official demo page. Our online tool runs newer, hosted CosyVoice 3-generation models.
Compare CosyVoice 2 and 3 samples →Try CosyVoice free →Official CosyVoice 2 demo page
Alibaba Cloud also hosts a cosyvoice-v2 model in its China (Beijing) region — prices are in our CosyVoice API guide.
CosyVoice 2 vs CosyVoice 3
How the open CosyVoice 2 release compares with CosyVoice 3 and its open release, Fun-CosyVoice 3.0. Each cell cites its source.
| Compare | CosyVoice 2 | CosyVoice 3 (Fun-CosyVoice 3.0) | Sources |
|---|---|---|---|
| Open model | CosyVoice2-0.5B, December 2024 | Fun-CosyVoice3-0.5B-2512 (base and RL), December 2025 | README roadmap |
| Parameters | 0.5B | 0.5B open release; the paper scales up to 1.5B, which is not released | QwenAudio/CosyVoice READMECosyVoice 3 paper (arXiv 2505.17589) |
| Training data | About 167,000 hours: 130,000 Chinese, 30,000 English, 4,600 Japanese, 2,200 Korean | 1,000,000 hours across 9 languages and 18 Chinese dialects | CosyVoice 2 paper (arXiv 2412.10117)CosyVoice 3 paper (arXiv 2505.17589) |
| Languages | Chinese, English, Japanese, Korean | 9 languages and 18+ Chinese dialects and accents | CosyVoice 2 paper (arXiv 2412.10117)Hugging Face: Fun-CosyVoice3-0.5B-2512 |
| Speech tokenizer | FSQ tokens from a speech recognition model, 25 per second | Trained on five supervised tasks: speech recognition, emotion, language ID, audio events and speaker analysis | CosyVoice 2 paper (arXiv 2412.10117)CosyVoice 3 paper (arXiv 2505.17589) |
| Instructions | Emotion, speaking rate, role-play, dialect; [laughter], [breath], <strong> | Language, dialect, emotion, speed, volume; Pinyin and CMU phoneme pronunciation fixes | CosyVoice 2 paper (arXiv 2412.10117)QwenAudio/CosyVoice README |
| Post-training | Reinforcement-learning fine-tuning of the language model | A differentiable reward model for post-training | CosyVoice 2 paper (arXiv 2412.10117)CosyVoice 3 paper (arXiv 2505.17589) |
| Streaming | Streaming and non-streaming in one model, bi-streaming input | Bi-streaming (text in, audio out), latency as low as 150 ms | CosyVoice 2 paper (arXiv 2412.10117)QwenAudio/CosyVoice README |
| Error rate — test-zh CER / test-en WER / test-hard CER (lower is better) | 1.45% / 2.57% / 6.83% | 1.21% / 2.24% / 6.71% (RL model: 0.81% / 1.68% / 5.44%) | README evaluation table |
| Speaker similarity — test-zh / test-en / test-hard (higher is better) | 75.7% / 65.9% / 72.4% | 78.0% / 71.8% / 75.8% (RL model: 77.4% / 69.5% / 75.0%) | README evaluation table |
Benchmark numbers are from the evaluation table in the official README, which the CosyVoice team reports for its own models. The CosyVoice 3 paper describes its data growth as "from ten thousand hours to one million hours"; the CosyVoice 2 row uses the CosyVoice 2 paper's own training-data table.
What else changed in the third generation, and how 3.0 differs from the hosted 3.5 models, is in our CosyVoice 3 guide.
When CosyVoice 2 still makes sense
For new projects the official README recommends Fun-CosyVoice3-0.5B for better performance. CosyVoice 2 is still a reasonable pick in a few cases:
Your pipeline already runs on it
Prompts, saved speakers and fine-tunes built for CosyVoice2-0.5B keep working; switching models means re-testing them.
You need its serving stack
The README documents vLLM support and a TensorRT-LLM runtime for CosyVoice 2 — it says TensorRT-LLM speeds up CosyVoice 2's LLM about 4× over the Hugging Face transformers implementation — plus GRPO training support.
You want it hosted
Alibaba Cloud Model Studio lists a hosted cosyvoice-v2 model in its China (Beijing) region, so you can call it without running a GPU.
Alibaba Cloud Model Studio: real-time TTS regions and models
Download and run CosyVoice 2
After installing the repository (Python 3.10 Conda environment), download the weights and run the official example. Both snippets are copied from the README and example.py.
# modelscope SDK model download
from modelscope import snapshot_download
snapshot_download('iic/CosyVoice2-0.5B', local_dir='pretrained_models/CosyVoice2-0.5B')
# for oversea users, huggingface SDK model download
from huggingface_hub import snapshot_download
snapshot_download('FunAudioLLM/CosyVoice2-0.5B', local_dir='pretrained_models/CosyVoice2-0.5B')import sys
sys.path.append('third_party/Matcha-TTS')
from cosyvoice.cli.cosyvoice import AutoModel
import torchaudio
cosyvoice = AutoModel(model_dir='pretrained_models/CosyVoice2-0.5B')
# zero_shot usage
for i, j in enumerate(cosyvoice.inference_zero_shot('收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐,笑容如花儿般绽放。', '希望你以后能够做的比我还好呦。', './asset/zero_shot_prompt.wav')):
torchaudio.save('zero_shot_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate)
# instruct usage
for i, j in enumerate(cosyvoice.inference_instruct2('收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐,笑容如花儿般绽放。', '用四川话说这句话<|endofprompt|>', './asset/zero_shot_prompt.wav')):
torchaudio.save('instruct_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate)Weights:Hugging Face: CosyVoice2-0.5BModelScope: CosyVoice2-0.5B
Full install steps, including Windows and Docker notes, are in our CosyVoice install guide.
CosyVoice 2 FAQ
What is CosyVoice 2?
The second generation of the open-source CosyVoice text-to-speech model, released in December 2024 as CosyVoice2-0.5B. It is a streaming, zero-shot TTS model whose language model is the pre-trained Qwen2.5-0.5B LLM.
Is cosyvoice2 the same as CosyVoice 2?
Yes. cosyvoice2, CosyVoice 2.0 and CosyVoice2-0.5B all refer to the second generation; CosyVoice2-0.5B is the name of the released checkpoint.
CosyVoice 2 vs 3: which should I use?
For new work, CosyVoice 3. In the official README's evaluation table, Fun-CosyVoice3-0.5B-2512 has lower error rates and higher speaker similarity than CosyVoice2-0.5B on all three test sets, and the README recommends it. Stay on CosyVoice 2 if your pipeline or serving stack depends on it.
What languages does CosyVoice 2 support?
Chinese, English, Japanese and Korean, according to the CosyVoice 2 paper. The paper notes Japanese is weaker than Korean because Japanese text shares characters with Chinese, which can lead to Chinese pronunciations.
Is CosyVoice 2 open source?
Yes. The code and CosyVoice2-0.5B weights are published under Apache-2.0 on GitHub, Hugging Face and ModelScope. The README also carries a disclaimer that its content is for academic purposes, so check both before commercial use.
Can I use CosyVoice 2 through an API?
Yes. Alibaba Cloud Model Studio lists a hosted cosyvoice-v2 model in its China (Beijing) region; our CosyVoice API guide has its official price. CosyVoice.org itself has no public API.
Sources
Facts on this page were checked against these official sources on October 26, 2026.
- QwenAudio/CosyVoice README
- README evaluation table
- QwenAudio/CosyVoice example.py
- Hugging Face: CosyVoice2-0.5B
- ModelScope: CosyVoice2-0.5B
- Official CosyVoice 2 demo page
- CosyVoice 2 paper (arXiv 2412.10117)
- CosyVoice 3 paper (arXiv 2505.17589)
- Hugging Face: Fun-CosyVoice3-0.5B-2512
- Alibaba Cloud Model Studio: real-time TTS regions and models