智能机器人是人工智能一个重大分支,只能机器人包括几大模块:自然语言识别(ASR)、自然语言处理(NLU)、对话管理(DM)、自然语言生成(TTS),目前自己的工作涉及的方面主要是 NLU 与 DM,本文主要写一下DM,即Rasa Core,关于 NLU 在另一篇博客记录。
具体流程:
从Rasa Nlu或其他自然语言理解框架,获取训练好的意图识别模型。(这个主要是用来识别用户要问什么,即细分出用户的当前一句话的意图)
编写一个文件 domain.yml 用来放置所有的意图名字、 所有用来回答的意图的名字 和 每个回答意图的回答语句(这个主要是用来声明这个项目支持用户问哪类问题,声明能做出哪种回答, 以及部分不涉及逻辑,可以直接回答的问题)
编写另一个文件 stories.md 见名知意,这里用来存放剧本。(以简单的格式将上一个文件的问题与回答建立关系形成各种剧本)
接下来就是用上面的两个文件,训练出 Rasa Core 的模型。
最后,这就到最后了,使用Rasa Nlu 的模型、 Rasa Core 的模型,这两个模型就可以开启服务。
哦,这才是最后,现在就可以根据剧本做一些问答了。
看完自己写的工作原理,发现真的很简练,哈哈,根本不能上手使用。总要写的完全一些,深入一些的。
Rasa Core 项目使用方法
github 上面搜索 Rasa_Core,具体安装方式参见项目介绍。建议将整个项目源码拉下来,在项目的根目录运行
python setup.py install
1
进行安装。Rasa Nlu 同理。可以先根据项目里自带的example进行训练运行。具体运行方式见项目及Demo中的Makefile。
Rasa Core 深入了解
NLU 问题中提取出的参数可以在回答中以类似如下例句形式出现。(“我没听过{news},最近没有了解过新闻。”)
涉及到逻辑的回答可以在代码中很简单的实现,实现方式见官方文档。
以上两种为回答的形式,并支持回复多媒体(即音视频、图片、gif等),支持同时回复多条。
---------------------
作者:吕冲
来源:CSDN
原文:https://blog.csdn.net/love_is_red/article/details/79145979
版权声明:本文为博主原创文章,转载请附上博文链接!