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

前言

最近大模型这么火,就想着玩一下,作为非 AI 从业者,最好的方式就是调用云服务的 API 来构建自己的 AI 应用。
首选当然是国外的 ChatGPT API,但是说实话那个玩意有点贵,而且最近国内也被封禁不让调用了,最近使用了下阿里的通义千问,说良心话,如果我们的 AI 应用是基于中文的,个人觉得国内的通义千问和文心一言还是挺不错的。
说干就干,开通了阿里云的 dashscope.api_key, 这个开通很简单这里就不说了,而且这个 Key 每个月送的都有免费试用的 token 数,不商用,玩玩完全是足够了的。而且现在阿里的 API key 收费贼便宜,冲就是了。
image.png
接下来我会演示调用 **文字合成语音大模型,**来生成两段语音,我把生成的语音上传到资源里了,大家可以下载听一下:

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

参考文档:
官方实例代码 git 地址
官方CosyVoice 大模型文字生语音文档
不同 voice 音色官方文档
这里有很多不同种的音色,和真人语音差不多,而且有的还挺有意思的,比如有个龙老铁的,东北口音,大家可以试下。

代码

# coding=utf-8import 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 生成配上对应的图片。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/36546.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机毕业设计hadoop+spark+hive知识图谱酒店推荐系统 酒店数据分析可视化大屏 酒店爬虫 高德地图API 酒店预测系统 大数据毕业设计

酒店推荐系统开题报告 一、研究背景与意义 随着旅游业的蓬勃发展和人们生活水平的提高,酒店行业迎来了前所未有的发展机遇。然而,面对众多的酒店选择,消费者往往难以在短时间内找到最适合自己需求和预算的酒店。因此,开发一款高…

晋级国赛!卓翼飞思技术引领,助力辽宁赛区机器人及人工智能大赛圆满收官

近日,第二十六届中国机器人及人工智能大赛—辽宁赛区选拔赛在大连海事大学圆满收官。本次大赛吸引来自辽宁工业大学、大连理工大学等知名高校的10余支队伍参与,充分展现各高校在机器人及人工智能领域的深厚实力和创新精神。其中,由卓翼飞思实…

【排序算法】—— 希尔排序

目录 一、希尔排序原理 二、希尔排序的思路 三、希尔排序为什么快 四、如何取增量 五、源码 希尔排序是简单插入排序的一种升级版,它也是用了插入的思想,而插入排序相比冒泡排序和选择排序的效率要高的多,再将它优化为希尔排序后效率跟原…

深度解析华为仓颉语言

什么是华为仓颉语言? 华为仓颉语言(Huawei Cangjie Language,HCL)是华为公司推出的一种新型编程语言,旨在解决大规模分布式系统开发中的复杂性问题。仓颉语言以高效、简洁和易用为设计目标,特别适用于云计…

51单片机STC89C52RC——12.1 数据存储芯片AT24C02

目的/效果 利用存储芯片AT24C02存储数据,LCD1602显示存储的数据。 一,STC单片机模块 二,AT24C02存储芯片 2.1 介绍 AT24C02是一个2K位串行CMOS E2PROM,内部含有256个8位字节,采用先进CMOS技术实质上减少了器件的功…

通讯录管理系统——查找联系人

功能描述:按照姓名查看指定联系人的信息 查看联系人实现步骤 1.封装查找联系人函数 2.测试查找指定联系人 一、封装查找联系人函数 实现思路:判断用户指定的联系人是否存在,如果存在,显示信息,不存在提示查无此人…

如何在FastAPI服务器中添加黑名单和白名单实现IP访问控制

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 添加黑名单功能步骤1:安装依赖步骤2:创建FastAPI应用步骤3:添加黑名单📝 添加白名单功能步骤1:创建白名单列表步骤2:添加白名单检查⚓️ 相关链接 ⚓️📖 介绍 📖 在现代网络应用开发中,为了增强…

C++【引用】

P. S.:以下代码均在VS2019环境下测试,不代表所有编译器均可通过。 P. S.:测试代码均未展示头文件stdio.h的声明,使用时请自行添加。 博主主页:LiUEEEEE                        …

进程间通信简介-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板

进程间通信简介 进程间通信简介 进程间进程简称IPC(interprocess communication),进程间通信就是在不同进程之间传递信息或交换信息 进程间通信的目的 数据传输:一个进程需要将它的数据发送给另一个进程 资源共享:多个进程之间共享同样的…

武汉星起航:一站式服务,助力亚马逊卖家高效运营,实现收益飞跃

在跨境电商的浪潮中,武汉星起航电子商务有限公司以其独特的一站式跨境电商服务,为众多亚马逊卖家提供了强有力的支持,助力他们在不断发展的市场中脱颖而出,实现收益的大幅提升。 武汉星起航的一站式跨境电商服务,以其…

Python 爬虫:多进程,多线程爬虫<提高爬取效率>

关于多进程,多线程的知识,请自行查询资料补充 ~~~~~~~~~~~ 使用多进程: 在python中,使用多进程需要先导包: from threding import Threaddef work(name):for i in range(1000):print(f"我是线程:{n…

如何使用styled实现嵌套组件继承父组件Props以及样式定义

文章目录 前言案例举例1. 首先,在syled.tsx定义DemoBlock组件,并且使用内嵌组件2. 在页面中使用,传递属性 总结 前言 当使用styled-components将属性传递给嵌套组件时,可以通过将属性和样式定义应用于嵌套组件的父组件来实现。然…

JAVA医院绩效考核系统源码:三级公立医院绩效考核系统源码 可源码交付,支持二开

JAVA医院绩效考核系统源码:三级公立医院绩效考核系统源码 可源码交付,支持二开 医院绩效考核系统是一个集数据采集、分析、评估、反馈于一体的信息化工具,旨在提高医疗服务质量、优化资源配置、促进医院可持续发展。以下是对医院绩效考核系统…

Django靓号管理系统:实现Home页面

在本文中,我们将详细介绍如何在Django靓号管理系统中实现Home页面。Home页面是用户成功登录后看到的第一个页面,它应该提供一个友好的欢迎信息和系统的基本布局。 1. 更新 ​​urls.py​​ 首先,我们需要确保 ​​urls.py​​ 文件中包含了 Home 页面的 URL 配置: # url…

API接口知识小结

应用程序接口API(Application Programming Interface),是提供特定业务输出能力、连接不同系统的一种约定。这里包括外部系统与提供服务的系统(中后台系统)或后台不同系统之间的交互点。包括外部接口、内部接口&#xf…

使用c++设计一个计算器

使用c设计一个简单的计算器&#xff0c;它支持不带括号的四则运算&#xff0c;计算器要满足先乘除后加减的规则 #include <iostream> #include <string> #include <vector> #include <sstream>// 定义运算符的优先级 int precedence(char op) {if (op…

Java Records: 简化数据携带类的利器

Java Records: 简化数据携带类的利器 引言 在 Java 14 中引入并在 Java 16 中成为正式特性的 record&#xff0c;是为了简化不可变数据携带类的创建。它极大地减少了样板代码&#xff0c;使得代码更加简洁和易读。本文将详细介绍 record 的用法和特点。 什么是 Record? re…

Lua 流程控制

Lua 流程控制 Lua 是一种轻量级的编程语言,通常用于嵌入应用程序中,提供灵活的扩展和定制功能。流程控制是编程语言的核心组成部分,它决定了程序执行的顺序和条件。在 Lua 中,流程控制主要通过条件语句、循环语句和函数调用实现。 条件语句 条件语句用于根据不同的条件执…

Java访问修饰符的区别

public&#xff1a;公开的&#xff0c;任何地方都可以访问。 protected&#xff1a;受保护的&#xff0c;同一个包中的类和所有子类(可跨包)可以访问。 private&#xff1a;私有的&#xff0c;只有在同一个类中可以访问。 默认&#xff08;无修饰符&#xff09;&#xff1a;包级…

ORBSLAM3_ROS_Ubuntu18_04环境搭建安装

orbslam3安装 ORB-SLAM3配置及安装教程&#xff08;2023.3&#xff09;_orbslam3安装-CSDN博客 换源&#xff0c;换成国内的 搜索software 安装工具 sudo apt install git sudo apt update sudo apt install gcc g cmake安装 cmake安装新版本 ubuntu20.04安装cmake详细…