问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

python能写微软小冰么

发布网友 发布时间:2022-04-22 15:14

我来回答

1个回答

热心网友 时间:2022-05-10 08:23

聊天机器人已经有了很多很好的实现,比如图灵机器人、微软小冰都非常的智能而且语气都与人类相似。但这并不是一件一劳永逸的事情,在特定的场景下问题的回答是有边界的或者符合特定业务场景的,所以还是需要可以按需定制开发的机器人。

chatterBot项目是一个用Python实现聊天机器人的开源项目(作者:Gunther Cox,github地址),下面介绍下chatterBot的实现方式以及如何在这个项目的基础上做定制开发:
chatterBot将一个机器人分为input Adapter、logic Adapter、storage Adapter、output Adapter以及Trainer模块。
input Adapter: 这个模块被设计用来获取并处理用户输入,获取输入是指自动从外部获取输入,比如从gitter room, *等这些都是项目自带的输入插件。处理用户输入是把获取到的输入转化为可以进行下一步处理的Statement对象。Statement对象是对用户输入的抽象,包含了输入的text,附加信息并提供了序列化,对比等方法。input Adapter被设计成为插件式的,所以在实践当中,我们可以实现自己的input Adapter,比如为每个用户打上id,这样输入就包含了用户信息,在接下来的处理中就可以根据不同用户实现不同逻辑了。

logic Adapter: 完成输入处理后就到了逻辑处理,这依然是一个插件式的设计,主进程在启动时会将用户定义的所有逻辑处理插件添加到logic context中,然后交MultiLogicAdapter进行处理,MultiLogicAdapter会依次调用每个logic Adapter,logic Adapter被调用时先执行can_process方式判断输入是否可以命中这个逻辑处理插件。比如说 "今天天气怎么样"显然需要命中天气逻辑处理插件,但时间逻辑处理插件的can_process方法则应该返回False。在命中后logic Adapter要负责计算出对应的回答(也是包装成Statement对象)以及可信度(confidence),MultiLogicAdapter会取可信度最高的回答,并进入下一步。项目已经自带了很多logic Adapter,有close match、close meaning、时间逻辑、数学逻辑,甚至还有情感逻辑,大家可以自己探索。在实践当中,我们还是需要自己定制开发一些逻辑处理插件,如果我们希望自己的逻辑处理插件优先级始终高于自带的插件,可以提高confidence,自带的逻辑处理插件返回的confidence最大是1,只要confidence比1大就是最高优先级了。
storage Adapter: 刚才介绍logic Adapter时其实还有一点没有说明,就是大部分的逻辑处理还是基于训练集的,在处理时需要与训练集做匹配,所以这个项目将训练集的持久化也做成了插件式的,自带的持久化有文件型(json格式)、mongodb,我们也可以做自己的持久化层,比如支持redis,支持mysql。

output Adapter: 这个模块就不用详细介绍了,基本与input Adapter一致,只是这里处理的是输出。也是插件式设计,所以我们也可以定制开发,比如与腾讯等语音合成服务提供商的接口集成,我们的机器人就可以"开口说话了"。
Trainer: 这个模块提供训练机器人的方法,自带的方法有两种,一种是通过输入list来训练,比如["你好","你好啊"],后者是前者的回答,另一种是通过导入Corpus格式的文件来训练。如果这两种方法都没有办法满足的话,我们还可以写自己的训练模块,但总的来说还是要将最终的训练集转换成上述两种类型。

总结: chatterBot这个项目并不是一个非常完善的聊天机器人项目(如果你希望一安装就获得一个话唠一样的机器人那就可以放弃了),总的来说自带的功能有限,但是这个项目并不简单,因为项目本身结构非常清晰,又高度插件化,所以非常适合在此基础上做定制化开发,so 动手吧。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
什么牌子洗发水香味好闻持久 有哪些留香久的香氛洗发水值得入手? 香味持久的洗发水有哪些? 洗发水香味最持久排行 家装适合什么地板 客厅地板装修什么地板好 我家装修是北欧风格,想选一款与家里装修风格相匹配的地板,有何推荐? 什么样的装修用什么样的地板好 镇域 村镇 集体建设用地的区别 农村宅基地的升值之路:农民的生存保障还是财富陷阱? 北京市哪个出国留学类学校开设了人工智能课? 如何用python调用百度语音识别 求python将两个MP3音频文件拼接成一个MP3文件的代码 Python开发web有哪些优势 python关于音频的操作指导 oppo手机号码拉黑名单了怎么移出来 中国自闭症医院的排名是怎样的? 资阳市自闭症儿童在哪里看病? 有自闭症,怎么和周围人相处? 孩子确诊自闭症以后,家长阅读哪些书籍比较合适? 我家宝宝有轻度自闭症,严重吗?想带孩子去检查下那,济南哪里看? 孩子是什么意思 自闭症上幼儿园能改善吗 自闭症与抑郁症有什么区别? 孩子是自闭症,该去康复机构还是幼儿园? 北京自闭症专家排名? 404 Not Found 为什么船向左行使,舵要向右? 自闭症是什么意思呢? 自闭症干预成功大约多长时间? 不同的企业职责差异? Python语言编写程序,将两个整数a和b合并成一个整数放到c里面,并打印出来? python 语言,list中合并重复字典,将value相加 骁龙865能否成为几年后的钉子户?有什么依据? 骁龙865处理器有什么优势 如何把图片上数据转成excel 为什么我色彩画的还可以 素描老画不好 为什么我的色彩即时上课不听,也能画的很好,但是素描画不好? 【素描绘画技法】素描总是画不好 素描头像为什么画不好,原因全在这儿 怎样才能学好素描,为什么我总画不好,郁闷 为什么我的素描头像结构总画不好,有什么办法吗 为啥我老是画不好素描啊?? 怎样才能学好素描画? 素描为什么我老画不好?有详细补充 为什么素描越画越不好 为什么素描越画越不好 为什么素描总是画的那么难看 为什么素描总是画的那么难看 为什么素描线条总是画不好有什么诀窍吗本人练了很久