标签归档:聊天机器人

Chatopera 发布机器人平台使用指南,让聊天机器人上线吧!

对话机器人在企业中的价值

根据埃森哲研究,全球多家企业的首席信息官和首席技术官认为,聊天机器人(Chatbot)在的企业架构中将发挥举足轻重的作用,并对企业运营产生巨大的影响,尤其是在帮助改善提升客户和员工体验这一方面。聊天机器人不再是简单的用户应答工具,而是提供信息、完成任务和处理交易的助手,在企业运营中更是大有用武之地。

图1:企业高管期望未来的聊天机器人能够为企业带来哪些积极影响
图1:企业高管期望未来的聊天机器人能够为企业带来哪些积极影响
继续阅读

藏头诗生成器有了,藏尾诗生成器还会远吗?

自从AINLP公众号后台对话上线自动写诗功能,特别是藏头诗生成器的功能后,发现有不少同学在使用,特别是过程中发现有的同学不仅需要藏头诗,还需要藏尾诗,这也让我第一次了解了藏尾诗。不过如果让用户随意输入尾词,诗句尾部的押韵基本上破坏了,但是作为大众娱乐需求,这功能还是可以有的。所能想到的第一个方法是:基于目前的模型强制在结尾处替换关键字,然后逐句生成,但是这种方法合成的藏尾诗必定会很生硬;第二个方法直接训练一个反向模型:基于GPT2-Chinese,用之前的古诗训练语料逆序训练了一个古诗反向生成模型,然后对于用户的输入,同样也反向处理,最后再正向呈现给用户,这种方法生成的藏尾诗应该会平滑很多。所以说干就干,基于第二种方法训练了一个藏尾诗生成器模型,感兴趣的同学可以关注AINLP公众号,直接回复“藏尾诗输入内容”触发“藏尾诗生成器”,例如: 继续阅读

自动作诗机&藏头诗生成器:五言、七言、绝句、律诗全了

这是自然语言处理里面最有意思的任务之一:自然语言生成,本文主要是指古诗自动写诗,或者自动作诗机藏头诗生成器,目前支持五言绝句、七言绝句、五言律诗、七言律诗的自动生成(给定不超过7个字的开头内容自动续写)和藏头诗生成(给定不超过8个字的内容自动合成)。先看一下效果,也算是一个简单的自动作诗机和藏头诗生成器使用指南,感兴趣的同学请关注公众号AINLP,直接关键词触发测试:

自动作诗机或者自动写诗:
输入 “写诗 起头内容” 触发古诗自动生成(自动续写),输入内容不要超过7个字,会根据字数随机生成几首五言绝句、七言绝句、五言律诗、七言律诗:

藏头诗生成器:
输入 “藏头诗 藏头内容” 触发藏头诗自动生成,输入内容不超过8个字,会根据字数随机生成绝句或者律诗:

五言诗生成器:
输入“五言 起头内容” 触发五言诗自动生成,输入内容不要超过5个字,会随机生成五言绝句或者五言律诗

七言诗生成器:
输入 “七言 起头内容” 触发七言诗自动生成,输入内容不要超过7个字,会随机生成七言绝句或者七言律诗

绝句生成器:
输入 “绝句 起头内容” 触发绝句自动生成,输入内容不要超过7个字,会根据字数随机生成五言绝句或者七言绝句

律诗生成器:
输入 “律诗 起头内容” 触发律诗自动生成,输入内容不要超过7个字,会根据字数随机生成五言律诗或者七言律诗

五言绝句生成器和五言律诗生成器:
输入 “五言绝句 起头内容” 触发五言绝句自动生成,输入 “五言律诗 起头内容” 触发五言律诗自动生成,输入内容不要超过5个字:

七言绝句生成器和七言律诗生成器:
输入 “五言绝句 起头内容” 触发五言绝句自动生成,输入 “五言律诗 起头内容” 触发五言律诗自动生成,输入内容不要超过5个字:

最后让我们再看一下藏头诗自动生成的功能,支持任意8个字以内的输入,以下是对“自然语言”, “自然语言处理”,“我爱自然语言处理”的输入测试:

关于机器自动写诗,我们已经谈到多次,请参考:
AINLP公众号自动作诗上线
用GPT-2自动写诗,从五言绝句开始
鼠年春季,用GPT-2自动写对联和对对联

目前用 GPT2-Chinese 这个工具对古诗和对联数据一起训练,设计好数据格式,单个模型可以一站式支持多种体裁古诗和对联生成,非常方便,再次安利。

关于古诗体裁介绍,以下来源于百科:

五言绝句是中国传统诗歌的一种体裁,简称五绝,是指五言四句而又合乎律诗规范的小诗,属于近体诗范畴。此体源于汉代乐府小诗,深受六朝民歌影响,成熟定型于唐代。五绝每首仅二十字,便能展现出一幅幅清新的图画,传达一种种真切的意境。因小见大,以少总多,在短章中包含着丰富的内容,是其最大特色。五绝有仄起、平起二格。代表作品有王维的《鸟鸣涧》、李白的《静夜思》、杜甫的《八阵图》、王之涣的《登鹳雀楼》、刘长卿的《送灵澈上人》等。

七言绝句是中国传统诗歌的一种体裁,简称七绝,属于近体诗范畴。此体全诗四句,每句七言,在押韵、粘对等方面有严格的格律要求。诗体起源于南朝乐府歌行或北朝乐府民歌,或可追溯到西晋的民谣,定型、成熟于唐代。代表作品有王昌龄的《芙蓉楼送辛渐二首》、李白的《早发白帝城》、杜甫的《江南逢李龟年》、厉声教的《观潮有感》等。

五言律诗,是中国传统诗歌的一种体裁,简称五律,属于近体诗范畴。此体发源于南朝齐永明时期,其雏型是沈约等讲究声律、对偶的新体诗,至初唐沈佺期、宋之问时基本定型,成熟于盛唐时期。全篇共八句,每句五个字,有仄起、平起两种基本形式,中间两联须作对仗。代表作品有李白的《送友人》、杜甫的《春望》、王维的《山居秋暝》、厉声教的《辛卯季春谒厉杭二公祠》等。

七言律诗是中国传统诗歌的一种体裁,简称七律,属于近体诗范畴,起源于南朝齐永明时沈约等讲究声律、对偶的新体诗,至初唐沈佺期、宋之问等进一步发展定型,至盛唐杜甫手中成熟。其格律严密,要求诗句字数整齐划一,由八句组成,每句七个字,每两句为一联,共四联,分首联、颔联、颈联和尾联,中间两联要求对仗。代表作品有崔颢的《黄鹤楼》、杜甫的《登高》、李商隐的《安定城楼》等。

用 GPT-2 自动写诗,从五言绝句开始

春节前用 GPT2 训练了一个自动对联系统:鼠年春节,用 GPT-2 自动生成(写)春联和对对联 ,逻辑上来说这套NLG方法论可以应用于任何领域文本的自动生成,当然,格式越固定越好,这让我自然想到了自动写诗词,诗词的格式相对比较固定,我们之前已经有所涉及,譬如已经在AINLP公众号上上线了自动写藏头诗首字诗的功能,不过是直接复用的:"自动作诗机"上线,代码和数据都是公开的 ,另外还有一个更大的诗词数据项目可以用作自动作诗的“原料”:【Github】Chinese-poetry: 最全中华古诗词数据库,加上 GPT2-Chinese 这个项目:【Github】GPT2-Chinese:中文的GPT2训练代码 ,可以说万事俱备,只欠试用。

所以本周我们从五言绝句开始继续自然语言生成的主题,关于五言绝句,百度百科是这样说的:

五言绝句是中国传统诗歌的一种体裁,简称五绝,是指五言四句而又合乎律诗规范的小诗,属于近体诗范畴。此体源于汉代乐府小诗,深受六朝民歌影响,成熟定型于唐代。五绝每首仅二十字,便能展现出一幅幅清新的图画,传达一种种真切的意境。因小见大,以少总多,在短章中包含着丰富的内容,是其最大特色。五绝有仄起、平起二格。代表作品有王维的《鸟鸣涧》、李白的《静夜思》、杜甫的《八阵图》、王之涣的《登鹳雀楼》、刘长卿的《送灵澈上人》等。

我主要用了 Chinese-poetry 里的《全唐诗》和《全宋诗》数据 ,首先向这个项目的作者致敬:

《全唐诗》是清康熙四十四年(1705年),彭定求、沈三曾、杨中讷、汪士鋐、汪绎、俞梅、徐树本、车鼎晋、潘从律、查嗣瑮10人奉敕编校,“得诗四万八千九百余首,凡二千二百余人”, 共计900卷,目录12卷。 来自百科

《全宋诗》继唐诗的高度繁荣之后,宋诗在思想内容和艺术表现上有新的开拓和创造,出现了许多优秀作家作品,形成了许多流派,对元、明、清的诗歌发展产生了深远影响。

说明
《全唐诗》和《全宋诗》是繁体存储, 如有需要请自己转换, 但转换后的字不符合上下文。

这里需要首先通过OpenCC做了繁简转换,其次提取里面的五言绝句,最后转换为 GPT2-Chinese 的训练格式,然后就是训练和测试了,感兴趣的同学可以自己尝试,很方便,训练经验可以复用上文关于自动对联的:

1)训练数据可以按 GPT2-Chinese 训练数据的格式要求写个脚本进行转换,可以加一些标记符,这样在生成的时候可以基于这些标记符做trick;
2)训练时请将参数 min-length 设置为一个较小的数字,默认为128,由于对联数据长度比较短,按默认的设置训练后只会得到乱码,我直接设置为1;
3)根据自己GPU显存的大小调整 batch_size 和配置参数, 这里 batch_size 默认为8,训练时在1080TI的机器上会出现OOM,将其设置为4就可以完全跑通了,其他参数不用动;

自动作诗GPT2模型训练完成后,可以直接基于 GPT2-Chinese 里面的 generate.py 脚本进行测试,很方便,我基于 generate.py 和 flask-restful 写了一个 server 版本,对接到AINLP公众号后台了,感兴趣的同学可以关注AINLP公众号,直接进行测试:

关键词“写诗/作诗”触发诗歌的自动生成,例如输入“写诗春”,自动作诗模型会基于“春”进行自动续写,会给出以“春”开头的诗,给出其他的字同理,目前不能多于五个字,因为只能自动生成五言绝句:

关键词“藏头诗”触发藏头诗生成,例如输入“藏头诗春夏秋冬",基于GPT2模型叠加trick生成:

最后,欢迎关注AINLP公众号,测试自动写诗作诗和藏头诗生成器功能:

关于AINLP对话功能模块,感兴趣的同学可以参考:

腾讯词向量和相似词、相似度、词语游戏系列
相似词查询:玩转腾讯 AI Lab 中文词向量
玩转腾讯词向量:词语相似度计算和在线查询
腾讯词向量实战:通过Annoy进行索引和快速查询
玩转腾讯词向量:Game of Words(词语的加减游戏)
词向量游戏:梅西-阿根廷+葡萄牙=?
腾讯 800 万中文词向量 API Demo 搭建

NLP相关工具及在线测试(公众号对话测试)
五款中文分词工具在线PK: Jieba, SnowNLP, PkuSeg, THULAC, HanLP
中文分词工具在线PK新增:FoolNLTK、LTP、StanfordCoreNLP
Python中文分词工具大合集:安装、使用和测试
八款中文词性标注工具使用及在线测试
百度深度学习中文词法分析工具LAC试用之旅
来,试试百度的深度学习情感分析工具
AINLP公众号新增SnowNLP情感分析模块

自动对联及作诗机
风云三尺剑,花鸟一床书---对联数据集和自动对联机器人
自动对联活动获奖结果以及机器对联赏析
"自动作诗机"上线,代码和数据都是公开的
鼠年春节,用 GPT-2 自动写对联和对对联

夸夸聊天机器人及其他技能
一行Python代码实现夸夸聊天机器人
为了夸夸聊天机器人,爬了一份夸夸语料库
夸夸聊天机器人升级:从随机到准个性化
来,试试语音(识别)聊天(机器人)
来,试试成语接龙
推荐一份中文数据,来试试汉字、词语、成语、歇后语在线检索
AINLP公众号新增"狗屁不通文章生成器"接口
来,试试彩虹屁生成器

如果对AINLP公众号感兴趣,也欢迎参考我们的年度阅读清单:AINLP年度阅读收藏清单

鼠年春节,用 GPT-2 自动生成(写)春联和对对联

鼠年春节临近,来试试新的基于 GPT2-Chinese 自动对联系统:自动写对联(输入开头进行对联自动生成)和自动对对联(输入上联自动写下联)。老的自动对联功能是去年基于深度学习机器翻译模型上线的一个自动对对联的对话模块:风云三尺剑,花鸟一床书---对联数据集和自动对联机器人

这一年来,以BERT为代表的预训练模型不断推陈出新,席卷整个自然语言处理(NLP)领域,这其中NLP的难题之一自然语言生成(NLG)也得到了很大的助力,特别是去年上半年 OpenAI 的 GPT-2 的推出,非常惊艳,不过 GPT-2 的模型主要是基于英文领域的语料训练的,虽然到目前为止已经发布了含有15亿参数的完整模型,对于英文领域的自动文本生成非常有帮助,但是对于中文领域的NLG来说还是很受限。

回到中文领域,我们之前推荐过AINLP技术交流群杜则尧同学的开源项目 GPT2-Chinese:GPT2-Chinese:《【Github】GPT2-Chinese:中文的GPT2训练代码》,这个项目可以针对中文数据进行GPT-2模型的训练,可以写诗,新闻,小说,或是训练通用语言模型。所以对于自动对联生成来说,我能想到的就是基于GPT2-Chinese和对联数据训练一份对联领域的GPT2模型,用于对联自动生成:写对联和对对联。幸运的是,对联数据已经有了,依然是我们去年使用过 couplet-dataset ,特别感谢提供这份数据的同学,这份对联数据包含70多万条对联,唯一可惜的是没有横批,要是有横批,就可以造更完整的自动写对联和对对联系统了。

特别需要说明的是,这里并不是基于一个大的中文 GPT-2 模型进行特定领域 finetune 的,虽然目前已经有了大型的中文 GPT-2 预训练模型:gpt2-ml ,但是和 GPT2-Chinese 是两个体系,而 GPT2-Chinese 目前还不支持这个大模型的迁移。关于如何使用 GPT2-Chinese 进行对联数据的 GPT2 模型训练,这个项目的代码和文档都写得非常清楚,直接参考即可,如果有问题,可以查看一下issue,我遇到的问题基本上就是通过文档和issue解决的,这里提几个注意的点:

1)训练数据可以按 GPT2-Chinese 训练数据的格式要求写个脚本进行转换,可以加一些标记符,譬如开头,结尾以及上联下联之间的分隔符,这样在生成的时候可以基于这些标记符做trick;
2)训练时请将参数 min-length 设置为一个较小的数字,默认为128,由于对联数据长度比较短,按默认的设置训练后只会得到乱码,我直接设置为1;
3)根据自己GPU显存的大小调整 batch_size 和配置参数, 这里 batch_size 默认为8,训练时在1080TI的机器上会出现OOM,将其设置为4就可以完全跑通了,其他参数不用动;

对联 GPT-2 模型训练完成后,可以直接基于 GPT2-Chinese 里面的 generate.py 脚本进行测试,很方便,我基于 generate.py 和 flask-restful 写了一个 server 版本,对接到AINLP公众号后台了,感兴趣的同学可以关注AINLP公众号,直接进行测试:

关键词“写对联”触发对联自动生成,例如输入“写对联鼠年”,对联模型会基于“鼠年”进行自动续写,会给出以“鼠年”开头大概3个对联:

关键词“对对联”触发基于上联对下联,例如输入“对对联 一帆风顺年年好”,会给出大概3个候选对联:

当然你可以用“上联”触发老的对联版本进行对比:

至于两个版本的效果,欢迎多做对比,如果遇到了很棒的机器对联,也欢迎在评论里分享。最后,欢迎关注AINLP公众号,测试自动生成对联和自动对对联功能:

关于AINLP对话功能模块,感兴趣的同学可以参考:

腾讯词向量和相似词、相似度、词语游戏系列
相似词查询:玩转腾讯 AI Lab 中文词向量
玩转腾讯词向量:词语相似度计算和在线查询
腾讯词向量实战:通过Annoy进行索引和快速查询
玩转腾讯词向量:Game of Words(词语的加减游戏)
词向量游戏:梅西-阿根廷+葡萄牙=?
腾讯 800 万中文词向量 API Demo 搭建

NLP相关工具及在线测试(公众号对话测试)
五款中文分词工具在线PK: Jieba, SnowNLP, PkuSeg, THULAC, HanLP
中文分词工具在线PK新增:FoolNLTK、LTP、StanfordCoreNLP
Python中文分词工具大合集:安装、使用和测试
八款中文词性标注工具使用及在线测试
百度深度学习中文词法分析工具LAC试用之旅
来,试试百度的深度学习情感分析工具
AINLP公众号新增SnowNLP情感分析模块

自动对联及作诗机
风云三尺剑,花鸟一床书---对联数据集和自动对联机器人
自动对联活动获奖结果以及机器对联赏析
"自动作诗机"上线,代码和数据都是公开的

夸夸聊天机器人及其他技能
一行Python代码实现夸夸聊天机器人
为了夸夸聊天机器人,爬了一份夸夸语料库
夸夸聊天机器人升级:从随机到准个性化
来,试试语音(识别)聊天(机器人)
来,试试成语接龙
推荐一份中文数据,来试试汉字、词语、成语、歇后语在线检索
AINLP公众号新增"狗屁不通文章生成器"接口
来,试试彩虹屁生成器

如果对AINLP公众号感兴趣,也欢迎参考我们的年度阅读清单:AINLP年度阅读收藏清单

AINLP公众号新增"彩虹屁生成器"

最近发现不少同学通过搜索彩虹屁,彩虹屁生成器找过来,废话不多说,请关注AINLP公众号,直接对话包含“彩虹屁”三个字即可随机出彩虹屁:

====================================================================

前几天,看到了一条很有意思的微博:

整理了一些自动生成器,无聊的时候可以玩儿一天

‣ 马丁路德骂人生成器,收集了他作品里所有的脏话,连出处都有。点击即可感受辱骂

‣ 狗屁不通文章生成器,写稿必备

‣ 彩虹屁生成器,夸人难手可🐎住

‣ 特殊字体生成器,可以将文字生成其他有趣字体

‣ 诺基亚短信图片生成器:

‣ 记仇表情包生成器:

‣ 爱豆翻牌生成器:

‣ 颜文字生成器:

‣ Bgm自动生成器:

‣ 骂人宝典生成器:

‣ 在线表情包制作器:

‣ 藏头诗生成器:

‣ cp短打生成器,我就没打开过...你们可以试试

因为最近喜欢给AINLP公众号后台(对话)加一些小东西,所以就一个一个的试了一下,看看有没有可能加到AINLP公众号后台的,最后锁定“彩虹屁生成器”。不过在这之前,特意搜了一下什么是彩虹屁,以下来自百度百科的解释:

彩虹屁,网络流行语,饭圈常用语,最早流行起来的时间是在2017年。意思为粉丝们花式吹捧自己的偶像,浑身是宝,全是优点,字面意思为就连偶像放屁都能把它出口成章面不改色的吹成是彩虹。

词语来源:
该词最早出自于2017年的追星女孩,也就是所谓的饭圈,堪称是追星女孩的必备素养。

发展经过:
该词在2017年就火了,由于《镇魂》这部网络剧,又一次火了,而且还做出了很多各式各样的表情包。就好比要夸一个人,但是没有词汇去夸,那么“彩虹屁”就是一个非常棒的替代词。

引用示例
该词就是模仿韩国的用语,用词语气非常的夸张,常见的饭圈用语,就是说偶像放一个屁,就能比喻成彩虹。追星女孩她们眼中的偶像是非常棒的,所以怎么看都是好的。

上面微博提到的工具里面记仇表情包生成器、彩虹屁生成器、骂人宝典生成器由 @直播点吧 制作 ,我在调研过程发现作者提供API接口,所以就私信问了一下授权,@直播点吧 很客气,让我发邮件给 shadiaoapp@gmail.com 就可以了,所以发了封邮件,作者回复很迅速,给设置了来源白名单,并且还给了我一份来源于网友的彩虹屁数据,例如:

弱水三千我只取一瓢,你就是那个瓢
想把今天的白云寄给你,想把今天的皑皑白雪寄给你,想把我寄给你。
如果你来了 春天就可以 不用来了
我算不上低调 但也不喜欢炫耀 却想让每个认识我的人都知道你。
你就像⻜机、火车一样;你晚了,我等你;我晚了,你就⾛了。
螃蟹在剥我的壳,笔记本在写我;漫天的我落在枫叶雪花上;而你在想我。
如果你的⼀⽣需要有⼈捧在手上 那个⼈只能是我 必须是我
喜欢看你认真的样⼦,喜欢听你的声⾳,忍不住想要永远拥有你的微笑~
关于想你这件事 躲得过⼈潮汹涌的街 却躲不过四下⽆⼈的夜
在这什么都善变的⼈间 我想陪你一起看一看这永远有多远

有了这些条件,就可以很快的给AINLP添加"彩虹屁生成器"功能了,感兴趣的同学可以直接通过AINLP公众号测试,只要问句中包含“彩虹屁”三个字即可:

本来想和夸夸聊天机器人放在一起的,但是读着貌似不是夸人的感觉,所以最终还是单独处理了,感兴趣的同学可以关注AINLP公众号,后台对话直接测试:

注:原创文章,转载请注明出处及保留链接“我爱自然语言处理”:https://www.52nlp.cn

本文链接地址:AINLP公众号新增"彩虹屁生成器" https://www.52nlp.cn/?p=12419

Rasa 入坑指南二:基于 Rasa 构建天气查询机器人

天气查询是聊天机器人里面常见和常用的功能之一,本文基于 Rasa 构建一个中文的天气查询机器人。幸运的是,这件事已经有同学操作过了:使用 Rasa 构建天气查询机器人,不仅有文章,还有训练数据和相关代码,以及Web UI查询界面,相当完备。而问题在于, Rasa的版本跳跃貌似比较大,我接触Rasa比较晚,第一篇文章《Rasa入坑指南一:初识Rasa》使用的Rasa版本是 1.2.3,貌似目前看到的很多实战文章都是0.x的 Rasa 相关版本,在一些操作方面好像有不小的区别,包括之前罗列的一些参考文章,以及这篇天气查询机器人实战教程。

学习一个项目最好是首先跑通它,从该项目的Github主页入手:https://github.com/howl-anderson/WeatherBot,一个使用 Rasa 技术栈 (Rasa NLU, Rasa Core, Rasa Core SDK)构建的简单的中文天气情况问询机器人(chatbot), 附带有基于 Web 的用户界面(UI) http://weather_bot.xiaoquankong.ai/ ,不过目前这个demo页面可以访问,但是chatbot demo无法使用,具体原因不详。该项目采用了组件相互隔离来构建整个系统:

整个系统分成 4 个 APP:

组件 仓库地址 说明
User Interface WeatherBot_UI 负责提供用户 UI ,方便用户使用,Rasa Core 支持和多种即时通讯软件(IM)的整合,Rasa Core 提供了一种称之为 Channel 的特性来方便接入 API。
Diaglog Manager WeatherBot_Core 负责管理整个对话的流程,它会主动调用 NLU 来解析用户的意图和提取相关的实体,在需要执行业务动作的时候会调用 Action Server 执行具体的业务动作。
NLU WeatherBot_NLU 负责理解用户的意图和提取相关的实体。
Action Server WeatherBot_Action 负责执行自定义 Action (通常都是具体的业务动作,在本项目中是请求远程服务器以查询天气情况)

继续阅读

Rasa 入坑指南一:初识 Rasa

最近对 Rasa 产生了浓厚的兴趣,准备用Rasa打磨一下聊天机器人,所以做了一些调研和学习,准备记录一下,这是第一篇,感兴趣的同学可以参考。

Rasa是一套开源机器学习框架,用于构建基于上下文的AI小助手和聊天机器人。Rasa有两个主要模块:Rasa NLU 用于对用户消息内容的语义理解;Rasa Core 用于对话管理(Dialogue management)。Rasa官方还提供了一套交互工具 RasaX 帮助用户提升和部署由Rasa框架构建的AI小助手和聊天机器人。

学习一套东西最好的方法是从官方文档开始,Rasa官方文档相当贴心,我们从 Rasa User Guide 走起。

一、安装Rasa及RasaX

我是在Ubuntu16.04, Python3 的 virtualenv 环境下测试安装的:

virtualenv -p python3 venv
source venv/bin/activate
pip install rasa-x --extra-index-url https://pypi.rasa.com/simple

如果一切正常,rasa 及 rasa x 将同时被安装,如果你不希望使用 RasaX,那么安装时直接"pip install rasa"即可,当然还可以继续安装 Rasa NLU 文本分析时所需的一些依赖,此处暂时忽略。

二、运行官方示例

Rasa 官方 tutorial 示例相当贴心,即使你没有安装rasa,也可以在这个页面通过浏览器运行示例代码,如果已经安装了,可以在自己的电脑上通过命令行follow整个流程。

1. 创建默认的初始项目

在终端运行:

rasa init --no-prompt

这个过程将有一个很快速的 Rasa 相关模型训练过程展示,最终提示:

...
NLU model training completed.
Your Rasa model is trained and saved at '/home/textminer/rasa/default/models/20190821-205211.tar.gz'.
If you want to speak to the assistant, run 'rasa shell' at any time inside the project directory.

如果不加 --no-prompt,会有几个问题提示。你也可以直接通过浏览器在官方页面执行“run”按钮,结果是这样的:

这个命令将在当前目录下新建以下文件:

__init__.py 空文件
actions.py 可以自定义 actions 的代码文件
config.yml ‘*’ Rasa NLU 和 Rasa Core 的配置文件
credentials.yml 定义和其他服务连接的一些细节,例如rasa api接口
data/nlu.md ‘*’ Rasa NLU 的训练数据
data/stories.md ‘*’ Rasa stories 数据
domain.yml ‘*’ Rasa domain 文件
endpoints.yml 和外部消息服务对接的 endpoins 细则,例如 fb messenger
models/<timestamp>.tar.gz 初始训练的模型数据

其中标志有 ‘*’ 的文件是比较重要的文件,以下我们来详细的了解。
继续阅读

AINLP公众号对话接口新增成语接龙

成语接龙很有意思,原本计划找一些成语语料自己做一个,不过Google一圈后发现Github上有一个现成的项目:IdiomsSolitaire

Github链接:https://github.com/WangYihang/IdiomsSolitaire

这个项目自带2万多条成语数据,用法也很简单:

API Usage

>>> import IdiomsSolitaire
>>> IdiomsSolitaire.init()
>>> print IdiomsSolitaire.guess("一心一意")

Script Usage

# Install it first
pip install -r requirements.txt
# Use it in your termianl
$ python IdiomsSolitaire.py
Usage : 
        python IdiomsSolitaire.py [Idioms]
Example : 
        python IdiomsSolitaire.py '一心一意'
Author : 
        WangYihang <wangyihanger@gmail.com>
$ python IdiomsSolitaire.py '一心一意'
[+] Init finished! [23594] words.
[一语破的] : [一句话就击中要害。的,箭靶的中心,比喻要害之处。]
$ python IdiomsSolitaire.py '一心一意'
[+] Init finished! [23594] words.
[一至於此] : [竟到如此地步。]

所以很快把这个接口接入了AINLP的对话功能中,感兴趣的同学可以关注AINLP公众号直接测试:

也可以直接尝试语音输入,不过个别地方识别确实有点歪打正着:

最后,欢迎关注我们的公众号AINLP,可以对对联,自动作诗,查询相似词,玩词语加减游戏等:

注:原创文章,转载请注明出处及保留链接“我爱自然语言处理”:https://www.52nlp.cn

本文链接地址:AINLP公众号对话接口新增成语接龙 https://www.52nlp.cn/?p=12067

八款中文词性标注工具使用及在线测试

结束了中文分词工具的安装、使用及在线测试,开启中文词性标注在线测试之旅,一般来说,中文分词工具大多数都附带词性标注功能的,这里测试了之前在AINLP公众号上线的8款中文分词模块或者工具,发现它们都是支持中文词性标注的,这里面唯一的区别,就是各自用的词性标注集可能有不同:

以下逐一介绍这八个工具的中文词性标注功能的使用方法,至于安装,这里简要介绍,或者可以参考之前这篇文章:Python中文分词工具大合集:安装、使用和测试,以下是在Ubuntu16.04 & Python3.x的环境下安装及测试。
继续阅读