跳转到主要内容

一个辅助而不是操纵的聊天机器人。

项目描述

Buy Us Tea PyPI version License codecov DigitalOcean Referral Badge

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 软件包

qaryPyPi 上,但这个安装可能不起作用,除非你已经安装了所有依赖项

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 的聊天机器人框架允许你结合多种方法,从而为你提供最先进的问答和对话能力

  1. 搜索:[chatterbot](https://github.com/gunthercox/ChatterBot),[will](https://github.com/skoczen/will)
  2. 模式匹配和响应模板:Alexa,[AIML](https://github.com/keiffster/program-y)
  3. 生成深度学习:[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)
  4. 基础:[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。

  1. [创建 Gitlab 上的主 qary 存储库的分支](https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html#creating-a-fork)
  2. 在名为不同于 master 的分支中进行更改,例如创建一个新的分支 my-pull-request
  3. 创建合并请求.
  4. 帮助你的同行做出贡献
  • 遵循PEP-8样式指南
  • 尽量在任何一个函数、方法或类中包含一个至少单行的文档字符串
  • 如果你在贡献中添加了doctest,将获得加分。
  • 如果你添加了一个新功能,请在README中编写一些快速文档。
  • 将你的名字和归属添加到AUTHORS文件中。
  • 我们知道我们非常感激你的贡献!你已经让聊天机器人世界变得更好了!

项目详情


发布历史 发布通知 | RSS源

下载文件

下载适合您平台的文件。如果您不确定选择哪一个,请了解更多关于安装包的信息。

源分发

qary-0.7.27.tar.gz (5.7 MB 查看哈希值)

上传时间:

构建分发

qary-0.7.27-py3-none-any.whl (5.9 MB 查看哈希值)

上传时间: Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面