ChatterBot是一个机器学习,会话对话引擎,为糖机器人优化。

sugaroid-chatterBot的Python项目详细描述


ChatterBot: Machine learning in Python

喋喋不休

ChatterBot是一个内置的基于机器学习的对话引擎 Python,它可以根据 已知对话。ChatterBot独立于语言的设计允许它 会说任何语言。在

Package VersionPython 3.6Django 2.0Requirements StatusBuild StatusDocumentation StatusCoverage StatusCode ClimateJoin the chat at https://gitter.im/chatterbot/Lobby

典型的输入示例如下:

user: Good morning! How are you doing?
bot: I am doing very well, thank you for asking.
user: You're welcome.
bot: Do you like hats?

工作原理

一个未经训练的话匣子一开始就不知道如何沟通。每次用户输入语句时,库都会保存用户输入的文本和语句响应的文本。随着ChatterBot接收到更多的输入,它可以回复的响应数量和每个响应相对于输入语句的准确性都会增加。程序通过搜索与输入匹配的最接近匹配的已知语句来选择最匹配的响应,然后根据bot与之通信的人发出每个响应的频率,返回对该语句最可能的响应。在

安装

可以从PyPi安装此包,方法是运行:

pip install chatterbot

基本用法

^{pr2}$

培训资料

ChatterBot附带了一个数据实用模块,可以用来训练聊天机器人。 目前这个模块中有十几种语言的训练数据。 额外培训数据或培训数据的贡献 以其他语言表达将不胜感激。看看数据文件 在chatterbot-corpus 如果你有兴趣投稿,请打包。在

from chatterbot.trainers import ChatterBotCorpusTrainer

# Create a new trainer for the chatbot
trainer = ChatterBotCorpusTrainer(chatbot)

# Train based on the english corpus
trainer.train("chatterbot.corpus.english")

# Train based on english greetings corpus
trainer.train("chatterbot.corpus.english.greetings")

# Train based on the english conversations corpus
trainer.train("chatterbot.corpus.english.conversations")

Corpus贡献欢迎!请提出请求。

Documentation

查看documentation 对于喋喋不休的人,请阅读文档。在

要使用Sphinx自行生成文档,请运行:

sphinx-build -b html docs/ build/

示例

有关示例,请参见examples 此项目的git存储库中的目录。在

还有一个示例Django project using ChatterBot,以及一个示例Flask project using ChatterBot。在

历史

有关更改,请参见发行说明https://github.com/gunthercox/ChatterBot/releases

贡献者发展模式

  1. Create a fork的 GitHub上的main ChatterBot repository。在
  2. 在名为master的分支中进行更改,例如create 一个新分支my-pull-request。在
  3. Create a pull request。在
  4. 请遵循Python style guide for PEP-8。在
  5. 使用项目built-in automated testing。 以确保你的贡献没有错误。在

许可证

ChatterBot是根据BSD 3-clause license授权的。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
二进制字符串的java NumberFormatExceprion   java如何在Neo4j中查找/匹配/选择标识符名称   java哪一年的日期与原始年份相同?   java什么时候JAXB可以用于Json而不是XML?   java使用PayPal权限API进行PayPal支付   java Getting error在使用安卓 vision api扫描二维码时加载图像失败   java直接突出显示RichTextFX中的一个文本范围   java Resolve@RegisteredAuth2AuthorizedClient,其令牌在spring Security 5.2的spring server之外获得。十、   yyyymmddhhmmss的Java正则表达式   java我试图将google recaptcha与spring mvc集成,但GreCaptCharResponse总是返回false。这里有一些代码   java使用JsonPath将文本转换为json   java无法解析符号。Maven依赖项已就位,但代码为红色   java使用循环查找范围内具有不同数字的数字   java这个SwingWorker是否不重用ThreadPoolExecutor中的线程?