多语言声音克隆,CosyVoice模型最强部署

打印 上一主题 下一主题

主题 533|帖子 533|积分 1599

CosyVoice是由阿里通义实行室开源的一款多语言语音理解模型,它主要聚焦于高质量的语音合成,可以大概生成自然且传神的语音。
CosyVoice模型经过凌驾15万小时的数据训练,支持中文、英语、日语、粤语和韩语多种语言的合成,且在多语言语音生成、零样本语音生成、跨语言声音合成和指令执行能力方面体现杰出。
CosyVoice支持one-shot音色克隆技能,仅需3~10秒的原始音频即可生成模拟音色,包罗韵律、情感等细节。
CosyVoice展现了零样本学习的能力,可以大概通过一个简短的参考语音样本复制恣意声音,实现内容同等性和语言者相似度的高度还原。
CosyVoice可以大概对生成的语音进行细粒度的情感、语调、语速和音调控制,使合成的语音更加丰富和具有体现力。
github项目地点:https://github.com/FunAudioLLM/CosyVoice。
一、情况安装

1、python情况
建议安装python版本在3.10以上。
2、pip库安装
pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
3、CosyVoice-300M模型下载
git lfs install
git clone https://www.modelscope.cn/iic/CosyVoice-300M.git CosyVoice-300M
4、CosyVoice-300M-SFT模型下载
git lfs install
git clone https://www.modelscope.cn/iic/CosyVoice-300M-SFT.git CosyVoice-300M-SFT
5、CosyVoice-300M-Instruct模型下载
git lfs install
git clone https://www.modelscope.cn/iic/CosyVoice-300M-Instruct.git CosyVoice-300M-Instruct
当使用自然语音控制推理模式时,需要采用该模型。
6、CosyVoice-ttsfrd模型下载
git lfs install
git clone https://www.modelscope.cn/iic/CosyVoice-ttsfrd.git CosyVoice-ttsfrd
、功能测试

1、调用测试
(1)调用接口测试代码
  1. from cosyvoice.cli.cosyvoice import CosyVoice  
  2. from cosyvoice.utils.file_utils import load_wav  
  3. import torchaudio
  4. #初始化CosyVoice模型
  5. cosyvoice = CosyVoice('pretrained_models/CosyVoice-300M-SFT')
  6. #列出可用的发音人
  7. print(cosyvoice.list_available_spks())
  8. #使用SFT(Supervised Fine-Tuning)模式生成语音
  9. output = cosyvoice.inference_sft(
  10.     text='你好,我是通义生成式语音大模型,请问有什么可以帮您的吗?',
  11.     speaker='中文女'
  12. )
  13. #将生成的语音保存为wav文件
  14. torchaudio.save('sft.wav', output['tts_speech'], 22050)
  15. #再次初始化CosyVoice模型,这次加载的是基础模型CosyVoice-300M
  16. cosyvoice = CosyVoice('pretrained_models/CosyVoice-300M')
  17. #加载用于Zero-Shot和Cross-Lingual任务的提示语音
  18. prompt_speech_16k = load_wav('zero_shot_prompt.wav', 16000)
  19. #使用Zero-Shot模式生成语音,此模式不需要特定的训练数据
  20. output = cosyvoice.inference_zero_shot(
  21.     main_text='收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐,笑容如花儿般绽放。',
  22.     additional_text='希望你以后能够做的比我还好呦。',
  23.     prompt_speech=prompt_speech_16k
  24. )
  25. #将生成的语音保存为wav文件
  26. torchaudio.save('zero_shot.wav', output['tts_speech'], 22050)
  27. #加载用于Cross-Lingual任务的提示语音
  28. prompt_speech_16k = load_wav('cross_lingual_prompt.wav', 16000)
  29. #使用Cross-Lingual模式生成语音,该模式支持跨语言语音合成
  30. output = cosyvoice.inference_cross_lingual(
  31.     text='<|en|>And then later on, fully acquiring that company. So keeping management in line, interest in line with the asset that\'s coming into the family is a reason why sometimes we don\'t buy the whole thing.',
  32.     prompt_speech=prompt_speech_16k
  33. )
  34. #将生成的语音保存为wav文件
  35. torchaudio.save('cross_lingual.wav', output['tts_speech'], 22050)
  36. #最后,再次初始化CosyVoice模型,这次加载的是指令模型CosyVoice-300M-Instruct
  37. cosyvoice = CosyVoice('pretrained_models/CosyVoice-300M-Instruct')
  38. #使用Instruct模式生成语音,支持情感和语气的指令标签
  39. output = cosyvoice.inference_instruct(
  40.     text='在面对挑战时,他展现了非凡的<bold>勇气</bold>与<bold>智慧</bold>。',
  41.     speaker='中文男',
  42.     style='Theo \'Crimson\', is a fiery, passionate rebel leader. Fights with fervor for justice, but struggles with impulsiveness.'
  43. )
  44. #将生成的语音保存为wav文件
  45. torchaudio.save('instruct.wav', output['tts_speech'], 22050)
复制代码
(2)web端测试代码
未完......
更多具体的内容接待关注:杰哥新技能


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

光之使者

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表