交大x-lance跨媒体语言智能实验室等联合开源F5-TTS!零样本语音复刻,生成流畅,情感丰富!

简介: 上海交大x-lance跨媒体语言智能实验室联合剑桥大学、吉利汽车研究院(宁波)公司开源了一种基于流匹配的扩散变换器(Diffusion Transformer,DiT)的完全非自回归TTS模型-F5-TTS。

01

引言

上海交大x-lance跨媒体语言智能实验室联合剑桥大学、吉利汽车研究院(宁波)公司开源了一种基于流匹配的扩散变换器(Diffusion Transformer,DiT)的完全非自回归TTS模型-F5-TTS。F5-TTS不需要复杂的模型设计,如持续时间模型、文本编码器和音素对齐等,只需要将输入文本填充为与输入语音相同的长度,并进行去噪以生成语音,这最初由E2-TTS证明是可行的。然而,E2-TTS的设计使得其收敛速度慢且鲁棒性低。为了解决这些问题,F5-TTS首先使用ConvNeXt来细化文本表示,使其更容易与语音对齐。

此外,F5-TTS还提出了一种在推理时采样的策略,显著提高了模型性能和效率。这种flow step的采样策略可以轻松应用于现有的基于flow matching的模型而无需重新训练。F5-TTS的设计允许更快的训练并实现0.15的推理RTF,相比最先进的扩散式TTS模型有了很大的提高。在公共的多语言100万小时数据集上训练后,F5-TTS生成的语音具有高度自然和表达性的零样本能力、无缝代码切换能力和速度控制效率。

image.png

代码链接:

https://github.com/SWivid/F5-TTS

模型链接:

https://modelscope.cn/models/SWivid/F5-TTS_Emilia-ZH-EN

https://modelscope.cn/models/SWivid/E2-TTS_Emilia-ZH-EN

体验链接(pc访问):

https://modelscope.cn/studios/modelscope/E2-F5-TTS

论文链接:

https://arxiv.org/abs/2410.06885

02

模型效果

零样本生成

Prompt

Same Language Generation

I don't really care what you call me. I've been a silent spectator, watching species evolve, empires rise and fall. But always remember, I am mighty and enduring. Respect me and I'll nurture you; ignore me and you shall face the consequences.

Cross-linugal Generation

顿时,气氛变得沉郁起来。乍看之下,一切的困扰仿佛都围绕在我身边。我皱着眉头,感受着那份压力,但我知道我不能放弃,不能认输。于是,我深吸一口气,心底的声音告诉我:“无论如何,都要冷静下来,重新开始。”

速度控制

Prompt

Text

I don't really care what you call me. I've been a silent spectator, watching species evolve, empires rise and fall. But always remember, I am mighty and enduring. Respect me and I'll nurture you; ignore me and you shall face the consequences.

情感

Emotion

Calm/冷静的

Prompt

Text

So, I was, like, at the, um, grocery store, and, uh, I saw this, like, really yummy-looking, um, cake, y’know? And I, uh, totally wanted to, like, buy it, but, um, I was, like, on a diet, so, uh, I just, like, stared at it for a while, y’know?

鲁棒性等更多效果,请至合集查看:

https://swivid.github.io/F5-TTS/#zero-shot

03

魔搭最佳实践

在魔搭社区的PAI-DSW免费算力(A10)上体验F5-TTS

image.png

目前单次生成支持 30 秒,即提示音频和生成音频的总inference-cli长度。和支持使用块进行批量推理gradio_app。

  • 为了避免可能出现的推理失败,请确保您已阅读完以下说明。
  • 较长的提示音允许生成较短的输出。超过 30 秒的部分无法正常生成。请考虑使用小于 15 秒的提示音。
  • 大写字母会逐个字母地发音,因此对于普通单词请使用小写字母。
  • 添加一些空格(空白:“”)或标点符号(例如“,” “。”)以明确引入一些停顿。如果在代码转换生成中跳过前几个单词(因为不同语言的速度不同),这可能会有所帮助。

环境安装

下载repo

git clone https://github.com/SWivid/F5-TTS.git
cd F5-TTS

安装其他依赖:

pip install -r requirements.txt

模型下载

下载vocos-mel-24khz模型:

modelscope download --model=pengzhendong/vocos-mel-24khz --local_dir ../checkpoints/charactr/vocos-mel-24khz

下载模型文件:

modelscope download --model=SWivid/F5-TTS_Emilia-ZH-EN  --local_dir ./ckpts/ F5TTS_Base/model_1200000.bin
modelscope download --model=SWivid/E2-TTS_Emilia-ZH-EN  --local_dir ./ckpts/ E2TTS_Base/model_1200000.bin

模型推理

使用inference-cli推理

python inference-cli.py \
--model "F5-TTS" \
--ref_audio "tests/ref_audio/test_en_1_ref_short.wav" \
--load_vocoder_from_local \
--ref_text "Some call me nature, others call me mother nature." \
--gen_text "I don't really care what you call me. I've been a silent spectator, watching species evolve, empires rise and fall. But always remember, I am mighty and enduring. Respect me and I'll nurture you; ignore me and you shall face the consequences."
python inference-cli.py \
--model "E2-TTS" \
--ref_audio "tests/ref_audio/test_zh_1_ref_short.wav" \
--load_vocoder_from_local \
--ref_text "对,这就是我,万人敬仰的太乙真人。" \
--gen_text "突然,身边一阵笑声。我看着他们,意气风发地挺直了胸膛,甩了甩那稍显肉感的双臂,轻笑道,我身上的肉,是为了掩饰我爆棚的魅力,否则,岂不吓坏了你们呢?"

模型WebUI

目前支持的功能:

  • 模型推理
  • Podcast Generation
  • Multiple Speech-Type Generation

可以启动 Gradio 应用程序(Web 界面)来启动 GUI 进行推理,目前一次加载 ASR 模型、F5-TTS 和 E2 TTS,因此比 使用的 GPU 内存更多inference-cli。

git clone https://www.modelscope.cn/studios/modelscope/E2-F5-TTS.git
cd E2-F5-TTS
python app.py

注:如涉及Vocos.from_pretrained不支持local_dir,可以尝试修改Vocos源码

@classmethod
    def from_pretrained(cls, local_dir: str, repo_id: str = None, revision: Optional[str] = None) -> Vocos:
        """
        Class method to create a new Vocos model instance from a pre-trained model stored in the Hugging Face model hub.
        """
        if local_dir:
            config_path = os.path.join(local_dir, "config.yaml")
            model_path = os.path.join(local_dir, "pytorch_model.bin")
        elif repo_id:
            config_path = hf_hub_download(repo_id=repo_id, filename="config.yaml", revision=revision)
            model_path = hf_hub_download(repo_id=repo_id, filename="pytorch_model.bin", revision=revision)

点击链接👇,即可跳转体验~

https://modelscope.cn/studios/modelscope/E2-F5-TTS

相关文章
|
存储 传感器 定位技术
【NI Multisim 14.0原理图设计基础——元器件分类】
一、元器件分类 NI Multisim 14.0不仅提供了数量众多的元器件符号图形,而且还设计了元器件的模型,并分门类地存储在各个元器件库中。下面按照元器件库的命名不同详细介绍常用的元器件。 1.电源库 单击“元器件”工具栏中的“放置源” 按钮,Sources 库的“系列”栏包括以下几种,如图所示: 电源(POWER-SOURCES):包括常用的交直流电源、数字地、地线、星形或三角形连接的三相电源、VCC、VDD、VEE、VSS 电压源,其元器件”栏下内容如图所示: 电压信号源(SIGNAL-VOLTAG…):包括交流电压、时钟电压、脉冲电压、指数电压、FM、AM等多种形式的电压信号,其“元器
22334 4
【NI Multisim 14.0原理图设计基础——元器件分类】
|
开发工具 git
git 配置本地代理
git 配置本地代理
1404 0
|
10月前
|
编解码 测试技术 异构计算
通义百聆语音交互模型开源,创新架构可节省近50%GPU计算!
通义百聆开源Fun-Audio-Chat-8B,支持语音对语音交互,在多测评中斩获SOTA。具备共情能力,可感知情绪并自然回应,适用于陪伴、客服等场景,支持角色扮演与定制语音,高效低算力架构节省近50% GPU资源。
1273 3
通义百聆语音交互模型开源,创新架构可节省近50%GPU计算!
|
机器学习/深度学习 人工智能 编解码
如何用AI快速生成Logo?如我对比了7个AI Logo生成器,简单、高效、专业
在品牌设计中,Logo 是核心元素。传统设计方式成本高、耗时长,而 AI Logo 工具如 LogoMaker、AI Logo Creator、燕雀光年AILogo生成器等可快速生成多样设计方案,支持个性化定制与多格式输出,极大提升了效率,降低了门槛,适合初创企业及个人品牌高效打造独特标识。
1609 0
|
Shell 开发工具 git
把git-bash添加到右键菜单中
记得第一次安装git的时候,就是因为Git安装的时候会默认一次性Git Bash Here,Git GUI Here等三个会一起出现,而本人由于洁癖就卸载了重新安装了一次拒绝添加右键菜单的行为。 然而再开发途中,回到桌面点exe再cd命令到该文件夹,着实麻烦,于是懒癌战胜洁癖,开始着手了。
581 0
|
测试技术 程序员 API
读书笔记|程序员的README
作者阅读《程序员的README》这本书后结合了自己一年在工作中的经历,总结出程序员工作中的新认知。
|
SQL 关系型数据库 Linux
【PostgreSQL】基于CentOS系统安装PostgreSQL数据库
【PostgreSQL】基于CentOS系统安装PostgreSQL数据库
2663 0
淘宝API接口( item_detail - 淘宝商品详情查询)
淘宝商品详情查询 API(item_detail)用于获取淘宝商品的详细信息。请求参数包括商品唯一 ID(num_iid)和是否获取促销价(is_promotion)。响应参数包含商品标题、价格、库存、图片链接、品牌等详细信息。
1252 2