一个辅助而不是操纵的聊天机器人。
项目描述
qary
《qary》包是一个聊天机器人框架,也是一个真正提供帮助的虚拟助手!大多数机器人都是为了操纵你,为它们的公司主人赚钱。使用qary,你可以构建属于你自己的机器人来保护你并放大你的亲社会智能。
我们开始着手开发 qary
,这是《NLP in Action》第一版的内容之一。它逐渐发展成为一家具有社会影响力的初创公司 Tangible AI 的核心框架。Tangible AI 的实习生和志愿者不断修复错误、添加新功能和对话树到 qary 的资源库中。圣地亚哥 Python 用户组的聚会是一些有趣的 qary 演示的现场。圣地亚哥机器学习书俱乐部是支持《NLP in Action》书中高级概念或任何 NLP 和机器学习相关内容的好地方。你可以在 docs/
中找到更多想法。
安装
从源代码安装
使用 bash 控制台从 GitLab 获取源代码
git clone git@gitlab.com:tangibleai/qary
cd qary
如果这不起作用,或者你不了解 bash 控制台是什么,那么你可能想从这里开始: Windows 用户 指令:[docs/README-windows-install.md](https://)
确保你使用最新版本的 pip
和 python 的 virtualenv
包,在虚拟环境中安装 qary
pip install --upgrade pip virtualenv
python -m virtualenv venv
source venv/bin/activate
现在你的环境已经激活,请确保你在 pyproject.toml 文件旁边的 qary/
存储库中,这样你就可以以开发者(可编辑)模式安装 qary
pip install --editable .
现在你可以从命令行(bash 控制台)运行 qary
qary "Hi!"
PyPi 软件包
qary
在 PyPi 上,但这个安装可能不起作用,除非你已经安装了所有依赖项
pip install qary
用法
$ qary --help
usage: qary [-h] [--version] [--name STR] [-p] [-s STR] [-v] [-vv] [words [words ...]]
运行 qary
仅针对一项技能
$ qary -s qa
# ... (logging messages)
YOU: When was Barack Obama born?
# ... (logging messages)
qary: August 4, 1961
qary
技能
qary
的概率对话管理器会从不同个性生成的可能性中选择一个回复
pattern
(skills/pattern.py
):使用正则表达式模式回复问候如“hi”的示例技能qa
(skills/qa.py
):BERT 和 ALBERT 维基百科问答(WikiQA 阅读理解测试)faq
(skills/faq.py
):使用 data/faq/*.yml 中的数据回答常见问题glossary
(skills/glossary.py
):从 data/faq/glossary-*.yml 中的 glossary yml 文件获取定义eliza
(eliza.py
):ELIZA 疗师机器人的 Python 版本
配置默认个性
默认情况下,qary
使用 qa
个性运行。检查 qary.ini
中的配置文件,以更改在技能目录中加载的默认技能,以用于你自己的自定义技能。
方法
qary
的聊天机器人框架允许你结合多种方法,从而为你提供最先进的问答和对话能力
- 搜索:[chatterbot](https://github.com/gunthercox/ChatterBot),[will](https://github.com/skoczen/will)
- 模式匹配和响应模板:Alexa,[AIML](https://github.com/keiffster/program-y)
- 生成深度学习:[robot-bernie](https://github.com/nlpia/robot-bernie),[movie-bot](https://github.com/totalgood/nlpia/blob/master/src/nlpia/book/examples/ch10_movie_dialog_chatbot.py)
- 基础:[snips](https://github.com/snipsco/snips-nlu)
所有这些都在《NLP in Action》中有详细说明。
圣地亚哥 Python 用户组的演示文稿在 [docs/](/docs/2019-08-22--San Diego Python User Group -- How to Build a Chatbot.odp) 和网页上 [http://totalgood.org/midata/talks/](http://totalgood.org/midata/talks) 可用
为开发者提供模式
如果您想加入我们在 qary
和其他开源项目上的每周协作编码会议,请在 SD PUG 的 [discord server](https://discord.gg/yFTAQDxg) 上私信 @hobs。
- [创建 Gitlab 上的主
qary
存储库的分支](https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html#creating-a-fork) - 在名为不同于
master
的分支中进行更改,例如创建一个新的分支my-pull-request
。 - 创建合并请求.
- 帮助你的同行做出贡献
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪一个,请了解更多关于安装包的信息。