使用Python创建一个虚拟助手
虚拟助理是基于人工智能的程序。它们是一种智能计算机程序,可以通过语音命令或文本理解人类的自然语言,并为用户执行任务。本文将指导你通过使用Python库来创建你自己的语音助手的过程。
在本教程中,我将在Jetbrains的Pycharm IDE上编写代码。
PyCharm是一个计算机编程的集成开发平台,重点是Python编程语言。JetBrains,一家捷克公司,建造了它。 下载并安装Pycharm后,启动该程序并点击文件菜单,然后选择新项目。一个弹出的信息会问你项目的名称。请给它取一个想要的名字,但在本文中,我们将给我们的项目取名为 "vitualBot"。
该项目将被加载。一旦加载完成,清除 "main.py "文件中的自动内容,为你的代码提供一个干净的屏幕。
虚拟助手是做什么的?
- 它倾听你的命令。
- 它对你的命令作出反应,要么是成功,要么是失败。
对于这篇文章,将使用3个Python库,它们包括。
- Python语音识别。识别语音是将口语翻译成文本的行为。Python支持许多语音识别引擎,如谷歌语音引擎、微软必应语音识别,以及其他许多引擎。
这个库将音频信号翻译成计算机可读的格式。通常情况下,这是一个频谱图。它是一个三维图,X轴是时间,Y轴是频率,颜色代表强度。
复制红色圈出的文字。
将你复制的内容粘贴到终端,然后点击回车。该软件包将被安装。一旦这第一个包安装完毕,我们需要第二个包,即。
- Python Text To Speech v3 (Pyttsx3)。这个库是Python中的一个文本到语音的转换库。这个库可以离线工作,它也与Python 2和3版本兼容。
一旦你成功安装了第二个软件包,我们将继续安装第三个软件包。
- Python音频(PyAudio)。PyAudio允许你使用Python在一些设备上快速播放和录制音频。
注意
对于Linux用户,你在安装Pyaudio时可能会遇到一个错误。
请按照步骤来解决这个错误。
- 安装 portaudio模块,使用此命令。
sudo apt-get install libasound-dev
复制代码
-
下载portaudio档案
-
用以下方法解压缩档案。
tar -zxvf [filename portaudio.tgz]
复制代码
- 输入解压后的portaudio文件的目录,然后运行。
./configure && make
复制代码
- 一旦成功,用这个命令来安装它。
sudo make install
复制代码
- 最后,安装pyaudio。
pip install pyaudio
复制代码
我们已经成功地安装了这三个库。
现在,让我们给我们的虚拟助手以生命!!!
# import the library needed for the virtual assistant
import speech_recognition as assistance
import pyttsx3
# now, let us obtain voice input from the microphone
listener = assistance.Recognizer()
# the next line is to initiate the pttsx3 library
engine = pyttsx3.init()
# let's take voice from our microphone and use our microphone as source
with assistance.Microphone() as source:
print("Say something...!")
audio = listener.listen(source)
# recognize your speech using the Google Speech Recognizer
try:
print("I heard you say " + listener.recognize_google(audio))
except assistance.UnknownValueError:
print("Hey, I could not understand what you say")
except assistance.RequestError as e:
print("Request from Google Speech Recognition failed; {0}".format(e))
#the engine will then repeat what you said before performing your command
engine.say(audio)
engine.runAndWait()
复制代码
你可以用Python库实现很多事情。
通过上面的教程,你应该能够更深入地让你的虚拟助手变得更聪明。