阿里云 CosyVoice 语音合成大模型 API 实践

前言

最近大模型这么火,就想着玩一下,作为非 AI 从业者,最好的方式就是调用云服务的 API 来构建自己的 AI 应用。

首选当然是国外的 ChatGPT API,但是说实话那个玩意有点贵,而且最近国内也被封禁不让调用了,最近使用了下阿里的通义千问,说良心话,如果我们的 AI 应用是基于中文的,个人觉得国内的通义千问和文心一言还是挺不错的。

说干就干,开通了阿里云的 dashscope.api_key, 这个开通很简单这里就不说了,而且这个 Key 每个月送的都有免费试用的 token 数,不商用,玩玩完全是足够了的。而且现在阿里的 API key 收费贼便宜,冲就是了。

接下来我会演示调用 **文字合成语音大模型,**来生成两段语音,我把生成的语音上传到资源里了,大家可以下载听一下:

  • 女朋友想要买一个东西,然后给男朋友撒娇的语音
    女朋友撒娇
  • 小女孩嘴馋想要买糖葫芦,给姐姐撒娇的语音
    小女孩撒娇

参考文档:
官方实例代码 git 地址
官方CosyVoice 大模型文字生语音文档
不同 voice 音色官方文档

这里有很多不同种的音色,和真人语音差不多,而且有的还挺有意思的,比如有个龙老铁的,东北口音,大家可以试下。

代码

java 复制代码
# coding=utf-8

import dashscope
from dashscope.audio.tts_v2 import *

dashscope.api_key = '使用你在阿里云开通的 key'

# 女朋友撒娇
npy_sajiao = """
哎呀~亲爱的,你知不知道我今天在商场里看到了一个超级超级可爱的小熊玩偶啊?
它的眼睛圆溜溜的,好像会说话一样,我一看到它,心都快要融化了呢~但是人家最近钱包君有点瘦,所以只好忍痛离开了。
可是脑子里一直都是它的影子,转来转去都是它萌萌的样子,我是不是很没出息呀?
要是你能帮宝贝把它带回家,我保证会给你做好多好多好吃的,还会给你一个大大的熊抱加香香的亲亲哦~好不好嘛,就当是给我的小奖励嘛~
"""
# 适合女朋友撒娇的温柔音色
wenrou_voice = 'longmiao'


# 小女孩撒娇
xiaonvhai_sajiao = """
玲玲姐姐~你最好了嘛!我刚才路过街角那家老糖葫芦摊,那个糖葫芦红彤彤、亮晶晶的,上面的山楂一颗颗圆滚滚,好像在跟我眨眼睛呢!我站在那儿好久好久,闻着那甜甜的香味儿,脚都挪不动步了。
可是我回头想想,自己这个月的零花钱已经全都换成故事书了。我心里痒痒的,就差那么一点点就能尝到那酸甜的滋味儿了。
玲玲姐姐,你能不能当我的救星,让我实现这个小小的愿望呢?下次你有喜欢的东西,我也存钱给你买,好不好嘛~你就答应我这一次,让我感受一下那传统美味在舌尖跳舞的感觉吧!
"""
# 适合小女孩撒娇的音色
zhiqi_voice = 'longtong'

###################################################
speech_synthesizer = SpeechSynthesizer(
    model='cosyvoice-v1',
    voice=zhiqi_voice,
    format=AudioFormat.MP3_48000HZ_MONO_256KBPS,
    callback=None,
    speech_rate=0.5)
# 生成稚气可爱小女孩撒娇语音
result = speech_synthesizer.call(xiaonvhai_sajiao)
with open('zhiqi.mp3', 'wb') as f:
    f.write(result)

#################################################
speech_synthesizer = SpeechSynthesizer(
    model='cosyvoice-v1',
    voice=wenrou_voice,
    format=AudioFormat.MP3_48000HZ_MONO_256KBPS,
    callback=None,
    speech_rate=0.5)
# 生成温柔可爱女朋友撒娇语音
result = speech_synthesizer.call(npy_sajiao)
with open('wenrou.mp3', 'wb') as f:
    f.write(result)

print('ok')

这里我试用了很多音色,推荐两种个人觉得挺不错很适合我设定角色的音色:

  • longmiao:适合女朋友撒娇
  • longtong:适合小女孩撒娇

上边的文案也是用通义千问生成的,感觉不错。

总结

阿里提供了各种各样的的大模型 API ,包括文字处理,语音,图片,视频等,云服务大模型 AI API 的提供,可以说把普通人进入 AI 行业的门槛降到了最低,以后人人都是 AI 工程师,最珍贵的不再是 AI 算法,而是一个好的 idea,将生活中的大大小小事情结合这些 AI 能力,产生创造力,提升我们的工作生活效率。

只想说未来以来,特别是作为程序员的我们,思想一定不能再停留在以前的思考方式。

这是我使用 AI API 的第一次尝试,后边我会尝试更多的API, 而且会试着去结合他们,看会产生什么不一样的效果,比如说:将文字实时转为语音,然后再让 AI 生成配上对应的图片。