VoxCPM2 多语种开源TTS模型

30种语言,48kHz输出,上下文感知的韵律。从文本设计任何声音。从短音频片段克隆并带有风格引导。无需语言标签。一切都在本地运行。免费用于商业用途。

VoxCPM2 多语种开源TTS模型
微信 ezpoda免费咨询:AI编程 | AI模型微调| AI私有化部署
AI模型价格对比 | AI工具导航 | ONNX模型库 | Tripo 3D | Meshy AI | ElevenLabs | KlingAI | ArtSpace | Phot.AI | InVideo

我已经介绍过几款优秀的TTS模型,包括Qwen3-TTS、Fish Audio S2 Pro和Voxtral TTS。最近,OpenBMB团队发布了最新的VoxCPM2模型,拥有20亿参数,支持语音克隆、语音设计和高质量语音合成,支持30种主流语言,包括英语、中文、日语、韩语、德语和法语。

VoxCPM2特性:

  • 支持30种语言,无需语言标签,直接输入任何支持语言的文本。
  • 支持语音设计,输入自然语言描述即可生成新声音,无需参考音频。
  • 支持语音克隆,带有风格引导来控制情感、语速和表现力。
  • 支持生成高质量48kHz音频。

1、VoxCPM架构

VoxCPM采用无分词器的扩散自回归架构,在连续潜空间而非离散标记中对语音进行建模。

None
https://voxcpm.readthedocs.io/

2、本地部署

VoxCPM2官方文档已经详细介绍了如何使用PyTorch和CUDA运行VoxCPM2模型。接下来,我将介绍如何使用mlx-audio在macOS上本地部署VoxCPM2模型。

配置虚拟环境

uv venv .venv
source .venv/bin/activate

安装mlx-audio和soundfile

uv pip install "git+https://github.com/Blaizzy/mlx-audio" --prerelease=allow
uv pip install soundfile

下载模型。

你可以根据你的电脑配置和实际需求下载对应的量化模型。

None

mlx voxcpm2 模型

hf download mlx-community/VoxCPM2-4bit --local-dir ./models/VoxCPM2-4bit
# or
hf download mlx-community/VoxCPM2-8bit --local-dir ./models/VoxCPM2-8bit
# or
hf download mlx-community/VoxCPM2-bf16 --local-dir ./models/VoxCPM2-bf16
None
mlx voxcpm2 模型

3、零样本生成

import numpy as np
from mlx_audio.tts.utils import load
from mlx_audio.audio_io import write as audio_write

MODEL_DIR = "models/VoxCPM2-8bit"
OUTPUT_PATH = "zero_shot.wav"
model = load(MODEL_DIR)

result = next(model.generate("Hello, this is VoxCPM2 on Apple Silicon."))
audio_mx = result.audio

audio_write(
    str(OUTPUT_PATH),
    np.array(audio_mx),
    model.sample_rate,
    format="wav",
)

需要注意的是,如果要合成的文本包含括号,需要进行转义;否则无法正确合成语音。

4、语音设计

import numpy as np
from mlx_audio.tts.utils import load
from mlx_audio.audio_io import write as audio_write

MODEL_DIR = "models/VoxCPM2-8bit"
OUTPUT_PATH = "voice_design.wav"
model = load(MODEL_DIR)

result = next(model.generate(
    text="Hello, welcome to VoxCPM2.",
    instruct="A young woman, warm and gentle voice",
))
audio_mx = result.audio

audio_write(
    str(OUTPUT_PATH),
    np.array(audio_mx),
    model.sample_rate,
    format="wav",
)

5、语音克隆

import numpy as np
from mlx_audio.tts.utils import load
from mlx_audio.audio_io import write as audio_write

MODEL_DIR = "models/VoxCPM2-8bit"
OUTPUT_PATH = "voice_cloning.wav"
model = load(MODEL_DIR)

result = next(model.generate(
    text="Hello, this is VoxCPM2 on Apple Silicon.",
    ref_audio="lisa.wav",
))
audio_mx = result.audio

audio_write(
    str(OUTPUT_PATH),
    np.array(audio_mx),
    model.sample_rate,
    format="wav",
)

6、终极克隆

对于涉及有声书等长内容制作的场景,你需要同时提供参考音频和对应的转录文本以确保一致性。

import numpy as np
from mlx_audio.tts.utils import load
from mlx_audio.audio_io import write as audio_write

MODEL_DIR = "models/VoxCPM2-8bit"
OUTPUT_PATH = "ultimate_cloning.wav"
model = load(MODEL_DIR)

result = next(model.generate(
    text="2B-parameter multilingual tokenizer-free TTS model with 48kHz studio-quality output. Supports zero-shot generation, voice design, voice cloning, and continuation for long-form speech. 30 languages including English, Chinese, Indonesian, Japanese, Korean, and more.",
    prompt_text="VoxCPM2 is a tokenizer-free, diffusion autoregressive Text-to-Speech model",
    prompt_audio="lisa.wav",
))

audio_mx = result.audio

audio_write(
    str(OUTPUT_PATH),
    np.array(audio_mx),
    model.sample_rate,
    format="wav",
)

7、结束语

VoxCPM2是一个强大的TTS模型。如果你有语音合成需求,可以评估其能力。如果它不能满足你的需求,你可以测试Qwen3-TTS,它提供0.6B和1.7B两种规模,支持10种主流语言,包括英语、中文、日语、韩语、德语和法语。它也支持语音合成、语音设计和语音克隆,但你需要在不同的模型之间切换。


原文链接: The Free, Open-Source Alternative to ElevenLabs Is Finally Here

汇智网翻译整理,转载请标明出处