使用Python实现语音识别与ChatGPT交互:一次创新的对话体验 

在这篇文章中,本喵将介绍语音识别与Chatgpt交互哦~

 先上代码~

-main.py:

import speech_recognition as sr

from openai import OpenAI

# obtain audio from the microphone

r = sr.Recognizer()

client = OpenAI(

api_key="你的APIKEY" #格式必须带有""号,如api_key="sk-xxxxxxxxxxxxxxxxxxxxxx"

)

while(1):

try:

with sr.Microphone() as source:

print("Say something!")

audio = r.listen(source)

# recognize speech using Sphinx

try:

print("Sphinx thinks you said " + r.recognize_sphinx(audio))

prompt = r.recognize_sphinx(audio)

chat_completion = client.chat.completions.create(

messages = [

{

"role":"user",

"content":prompt

},

],

model="gpt-3.5-turbo"

)

print(chat_completion.choices[0].message.content)

except sr.UnknownValueError:

print("Sphinx could not understand audio")

except sr.RequestError as e:

print("Sphinx error; {0}".format(e))

 运行效果~

 技术栈

本项目主要使用以下技术:

speech_recognition:一个强大的Python库,用于实现语音识别功能。OpenAI ChatGPT:利用OpenAI的API实现与GPT-3模型的交互。

 准备工作

在开始之前,确保您已经安装了Python环境。接下来,我们需要安装两个重要的库:speech_recognition和openai,以及pocketsphinx。

️ 环境搭建

打开终端或命令提示符,运行以下命令安装必要的库:

pip install SpeechRecognition openai pocketsphinx

 依赖安装

确保所有依赖项都已正确安装,您可以通过运行以下命令来验证:

import speech_recognition as sr

import openai

如果没有报错,表示环境搭建成功。

 核心代码解析

接下来,让我们深入了解核心代码的工作原理。

️ 语音识别

使用speech_recognition库,我们可以轻松实现从麦克风获取语音输入并将其转换为文本的功能。

r = sr.Recognizer()

with sr.Microphone() as source:

print("Say something!")

audio = r.listen(source)

 与ChatGPT交互

通过将转换后的文本输入到ChatGPT模型中,我们可以获取相应的回复并打印出来:

prompt = r.recognize_sphinx(audio)

chat_completion = client.chat.completions.create(

messages=[{"role": "user", "content": prompt}],

model="gpt-3.5-turbo"

)

print(chat_completion.choices[0].message.content)

 运行指南

将整个脚本保存为.py文件,并在具有网络连接的环境中运行它。记得将API密钥替换为您自己的。

⚠️ 遇到的问题与解决方法

语音识别不准确:尝试在较安静的环境中使用应用,或调整麦克风设置。API密钥泄露:避免在代码中硬编码API密钥。考虑使用环境变量或配置文件管理密钥。

 参考资料

SpeechRecognition库文档OpenAI API 文档

—!

好文推荐

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。