我用python调用接口实现语音交互

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

语音交互属于人机交互的范畴,是人机交互发展到目前的一种最前沿的交互方式:就是用人类的自然语言给机器下指令,达成自己的目的这一过程。

一、Python是什么?

Python由荷兰数学计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。 作为现在最热门的程序语言,Python提供了高效的高级数据结构,还能简单有效地面向对象编程。随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。 

二、注册API_KEY账号

1.先去获取虚拟手机号码。短期手机号码。手机短信激活服务 (sms-activate.org)

注册一个国外手机号,因为在申请API_KEY时需要,不支持国内的手机号。

2.访问OpenAI的官方网站https://openai.com/

3.登录后,转到OpenAI控制台https://beta.openai.com/dashboard/login

4.在“API Keys”页面上,单击“Create New API Key”按钮。

5.去阿里云注册一个账号,因为chatgpt只能实现文本转文本,要想实现语音交互,必须得利用阿里云的语音播报。

①引入库

代码如下(示例):

import speech_recognition as sr
import pyttsx3
import openai
openai.api_key = "自己申请的API-KEY"

2.读入数据

代码如下(示例):

conversation = ""
user_name = "小新"
bot_name = "AI"
aliyunToken = sr.get_aliyun_token("ak","sk")

3.界面演示

视频管理-CSDN创作中心


总结

以上就是今天要讲的内容。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现智能机器人语音交互需要以下步骤: 1. 识别用户的语音输入:可以使用Python中的SpeechRecognition库,它可以将声音转换为文本。 2. 确定用户的意图:可以使用自然语言处理技术,例如使用Python中的NLTK库或SpaCy库。 3. 根据用户意图进行相应的操作:根据用户的意图,可以使用Python中的各种API来执行相应的操作,例如调用天气API、翻译API等。 4. 将机器人的回复转换为语音:可以使用Python中的Text-to-Speech库,将机器人的回复转换为语音输出。 下面是一个基本的Python代码示例,实现了一个简单的智能机器人语音交互: ```python import speech_recognition as sr import pyttsx3 # 初始化语音识别器和语音合成器 r = sr.Recognizer() engine = pyttsx3.init() # 设置语音合成器的属性 voices = engine.getProperty('voices') engine.setProperty('voice', voices[0].id) # 定义回复函数 def reply(text): if '你好' in text: return '你好呀!' elif '天气' in text: return '今天天气晴朗,温度27度。' else: return '抱歉,我不知道你在说什么。' # 开始语音交互 with sr.Microphone() as source: print('请开始说话!') audio = r.listen(source) try: text = r.recognize_google(audio, language='zh-CN') print('你说:', text) # 确定用户的意图并回复 response = reply(text) print('机器人:', response) # 合成语音输出 engine.say(response) engine.runAndWait() except Exception as e: print(e) ``` 该代码使用SpeechRecognition库识别用户的语音输入,然后使用自定义的reply函数确定用户的意图并回复。最后使用pyttsx3库将机器人的回复转换为语音输出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值