虚拟助手是可以为个人执行任务或服务的软件代理。术语“聊天机器人”也用于指代虚拟助手。还记得那个时候,当你在看钢铁侠的时候,心里想,如果你有自己的贾维斯,那该有多酷?好吧,是时候让这个梦想变成现实了。
人工智能是下一代。想象一下,如果你有朋友来你家,那该有多酷,突然间你说,“嘿 JARVIS,给我看一些模因。”然后 JARVIS 说:“当然,先生。这是最新的意大利模因。 ",同时向您展示最有趣的意大利模因。酷吧?
好吧,这既不是聊天机器人也不是 JARVIS,但为了更好地理解它,最好了解两者。
虚拟助手使用人工智能将用户文本输入与可执行命令相匹配。它可以提供各种各样的服务,其中包括:
[hidecontent type="logged" desc="隐藏内容:登录后可查看"]
用户的句子被读取并通过我们的自然语言处理 (NLP) 代码进行处理。句子处理完成后,会根据句子的意思重定向到要执行的动作。我们的 NLP 代码使用多项朴素贝叶斯算法的简化版本。
可以执行以下操作:
如果虚拟助手不理解用户的句子,则执行谷歌搜索。
简化的多项式朴素贝叶斯算法
每个分类都包含一组与输入匹配的句子。基于每个分类的输入句子中单词的出现来分配分数。分数衡量输入句子对分类的共性。单词和分类之间的共性很重要。例如,匹配单词“it”的意义远不如单词“cheese”的匹配。输入句子被分配最高分的分类。这是一种简化,因为单词需要简化为词干。
样本训练集:
让我们对几个示例输入句子进行分类:
请注意,“What's it like outside”的分类在另一个类别中找到了一个术语,但该术语与所需类别的相似性产生了更高的分数。通过使用一个等式,我们正在为每个类别寻找一些给定示例句子的单词匹配,并且我们避免了必须识别每个模式。
该程序使用GNUstep 语音引擎来实现文本到语音的目的。要使用此功能,需要几个命令:
say 使用 GNUstep 语音引擎将文本转换为可听语音。
$ sudo apt-get install gnustep-gui-runtime
$ say "hello"
需要 Firefox 才能执行浏览器任务,例如打开 google 和 youtube。
$ sudo apt-get install firefox
除此之外,还需要以下命令来安装必要的软件包。
$ sudo apt-get install libcurl4-openssl-dev
$ sudo apt-get install libjson-c-dev
$ sudo apt-get install libssl0.9.8
这个程序使用Espeak来实现文本到语音的目的。
espeak 将文本转换为可听语音。
$ espeak "hello"
需要 Firefox 才能执行浏览器任务,例如打开 google 和 youtube。
$ sudo yum install firefox
除此之外,还需要以下命令来安装必要的软件包。
$ sudo yum install libcurl libcurl-devel
$ sudo yum install json-c json-c-devel
$ sudo dnf install openssl
$ sudo dnf install openssl-devel
GNUstep 可以从 Linux 交叉编译以在 Apple 的 macOS 上运行(参见:http://wiki.gnustep.org/index.php/Cross_Compiling)。
brew install curl
brew install json-c
brew install openssl
使用 make 编译:
sudo make install
virtual_assistant
然后从任何位置执行使用
删除所有构建文件
make clean
删除更改
sudo make uninstall
使用 gcc 编译:
gcc main.c src/init_config.c $(pkg-config --libs --cflags libcurl) -lssl -lcrypto -ljson-c -std=gnu11
[/hidecontent]