许可协议: apache-2.0
支持语言:
- 英语
任务类型: 文本转语音
标签:
- 模型中心混合
- PyTorch模型中心混合
- 文本转语音
CSM 10亿参数版
2025年3月13日 - 我们正式发布10亿参数规模的CSM版本。代码已开源至GitHub:SesameAILabs/csm。
CSM(对话语音模型)是Sesame开发的语音生成模型,能够根据文本和音频输入生成RVQ音频编码。该模型架构采用Llama主干网络和轻量级音频解码器,可生成Mimi音频编码。
经过微调的CSM版本已应用于我们博客文章中展示的交互式语音演示。
我们还提供了托管在HuggingFace空间的测试环境,方便体验音频生成功能。
使用指南
初始化代码库
git clone git@github.com:SesameAILabs/csm.git
cd csm
python3.10 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
huggingface-cli login
生成单句语音
from generator import load_csm_1b
import torchaudio
generator = load_csm_1b(device="cuda")
audio = generator.generate(
text="来自Sesame的问候。",
speaker=0,
context=[],
max_audio_length_ms=10_000,
)
torchaudio.save("audio.wav", audio.unsqueeze(0).cpu(), generator.sample_rate)
当提供上下文时,CSM能生成更自然的语音。您可以使用Segment
结构为每个说话人语句添加提示或上下文。
speakers = [0, 1, 0, 0]
transcripts = [
"最近过得怎么样?",
"挺好的,非常不错。",
"我状态很棒。",
"很高兴能和你交谈。",
]
audio_paths = [
"utterance_0.wav",
"utterance_1.wav",
"utterance_2.wav",
"utterance_3.wav",
]
def load_audio(audio_path):
audio_tensor, sample_rate = torchaudio.load(audio_path)
audio_tensor = torchaudio.functional.resample(
audio_tensor.squeeze(0), orig_freq=sample_rate, new_freq=generator.sample_rate
)
return audio_tensor
segments = [
Segment(text=transcript, speaker=speaker, audio=load_audio(audio_path))
for transcript, speaker, audio_path in zip(transcripts, speakers, audio_paths)
]
audio = generator.generate(
text="我也是,这些技术很酷对吧?",
speaker=1,
context=segments,
max_audio_length_ms=10_000,
)
torchaudio.save("audio.wav", audio.unsqueeze(0).cpu(), generator.sample_rate)
常见问题
该模型是否包含预设音色?
当前开源的是基础生成模型,虽然能生成多种音色,但未针对特定音色进行微调。
能否进行对话交互?
CSM是专用音频生成模型,并非多模态大语言模型,不具备文本生成能力。建议配合其他LLM进行文本生成。
是否支持其他语言?
由于训练数据存在一定混杂,模型具备有限的多语言能力,但非英语效果可能欠佳。
使用限制与警告 ⚠️
本项目提供的高质量语音生成模型仅限于研究和教育用途。我们严禁以下行为:
- 身份伪造:未经本人明确许可,禁止模仿真实人物的声音
- 虚假信息传播:禁止生成虚假新闻、诈骗电话等欺骗性内容
- 违法活动:禁止用于任何非法或恶意用途
使用者需承诺遵守所有适用法律和道德准则。我们对任何滥用行为不承担责任,并强烈谴责违背技术伦理的应用。
开发团队
Johan Schalkwyk、Ankit Kumar、Dan Lyth、Sefik Emre Eskimez、Zack Hodari、Cinjon Resnick、Ramon Sanabria、Raven Jiang及Sesame团队全体成员。