CosyVoice3:最逼真的声音克隆工具
最近 CosyVoice3 开源了,其核心能力包含 语音克隆 和 使用预训练音色进行TTS(文字转语音)。官方给出的核心表现如下: 
这里我们核心关注 Index-TTS2(曾经最好的语音克隆模型)和 CosyVoice3 的表现,可以看出,CosyVoice3(0.5B 模型)在语音克隆相似度方面超过了 Index-TTS2(1.5B 模型)。后面我们实测一下。
说明:关于红框处的另外一个模型 VoxCPM,之前没有注意到,但是从测评结果来看,也非常强劲,后面再做测试。
功能介绍
声音克隆
包含两种模式 - 3s极速复刻(上传3s以上音频,通过克隆的声音读取合成文本内容);跨语种复刻(实现不同语言之间的克隆,例如输入英文声音,克隆其声音去读取中文文字) 
预训练音色 TTS
使用预训练好的音色来读取合成文本内容 
效果展示
声音克隆
原声:
克隆文字:(来自 index-tts2 官方示例)
text
今天呢,咱们开一部新书,叫《赛博朋克二零七七》。这词儿我听着都新鲜。这赛博朋克啊,简单理解就是“高科技,低生活”。这一听,我就明白了,于老师就爱用那高科技的东西,手机都得拿脚纹开,大冬天为了解锁脱得一丝不挂,冻得跟王八蛋似的。CosyVoice3:
IndexTTS2:
结论:
- CosyVoice3 在声音相似度方面要超过 Index-TTS2,且默认语速方面更加舒服,Index-TTS2 相对较快
- CosyVoice3 的推理速度要高于 Index-TTS2
- Index-TTS2 的操作界面更加简单易用,不需要用户手动传入原声的文本作为 prompt
特别说明:“输入prompt文本” 部分的值务必以 You are a helpful assistant.<|endofprompt|> 开头,然后再输入原声文本内容。 
若直接输入原声内容,生成的语音可能会出错,如下。
安装应用
下面以 Windows11 为例,演示安装流程。在 cmd 中依次输入以下命令
shell
cd D:\ai\self_use_package // 选择软件安装的目标目录
git clone --recursive https://github.com/FunAudioLLM/CosyVoice.git // 下载源码
cd CosyVoice // 进入源码目录
conda create -n cosyVoice_env python=3.10 -y // 创建虚拟环境
conda activate cosyVoice_env // 激活虚拟环境
conda install -y -c conda-forge pynini==2.1.5 // 安装依赖
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com // 安装依赖
pip install onnxruntime // 安装缺失依赖在 CosyVoice 文件夹下创建文件 download_model.py,编辑内容如下:
python
# SDK模型下载
from modelscope import snapshot_download
snapshot_download('FunAudioLLM/Fun-CosyVoice3-0.5B-2512', local_dir='pretrained_models/Fun-CosyVoice3-0.5B')
snapshot_download('iic/CosyVoice-300M-SFT', local_dir='pretrained_models/CosyVoice-300M-SFT')
snapshot_download('iic/CosyVoice-300M-Instruct', local_dir='pretrained_models/CosyVoice-300M-Instruct')执行如下命令,等待模型下载完成
shell
.\cosyVoice_env\python.exe .\download_model.py启动应用
在启动应用前,需要解决一个bug,否则启动会失败。将 webui.py 中 gradio 的引入放到最后。
python
import os
import sys
import argparse
import numpy as np
import torch
import torchaudio
import random
import librosa
ROOT_DIR = os.path.dirname(os.path.abspath(__file__))
sys.path.append('{}/third_party/Matcha-TTS'.format(ROOT_DIR))
from cosyvoice.cli.cosyvoice import AutoModel
from cosyvoice.utils.file_utils import logging
from cosyvoice.utils.common import set_all_random_seed
import gradio as grCosyVoice 声音克隆
shell
python webui.py --port 50000 --model_dir pretrained_models/Fun-CosyVoice3-0.5B预训练音色 TTS
shell
python webui.py --port 50000 --model_dir pretrained_models/CosyVoice-300M-SFT在 cmd 中看到如下日志,表示成功
shell
Running on local URL: http://0.0.0.0:50000此时浏览器输入 http://127.0.0.1:50000,展示界面如下

文章的最后,如果您觉得本文对您有用,请打赏一杯咖啡!感谢!
