本文继续围绕工业级业务对话平台和框架Rasa,对Rasa对话机器人项目实战之教育领域Education Bot项目微服务源码包括使用ResponseSelector针对常见问答等场景进行responses的选择,以及调用微服务来进行文档搜索,论坛搜索等功能进行详细分析,这其中也涉及到如何进行fallback的处理。
一、Rasa对话机器人项目实战之教育领域Education Bot项目微服务源码逐行解密
- ActionSubmitSuggestionForm源码逐行剖析
这个类用于提交suggestion_form,继承自Action:
这个run方法只是简单发送响应消息给用户,返回空的事件列表,在实际开发时可以根据需要加入更多的自定义逻辑,譬如如何保存数据等:
2. ActionStoreProblemDescription源码逐行剖析
这个类用于把问题描述存储在slot中,继承自Action:
方法run从tracker中获取用户输入的问题描述,构建row_values列表,然后调用Google drive服务把数据存储到drive中,最后返回SlotSet事件:
3. ActionGreetUser源码逐行剖析
这是跟用户打招呼的类,继承自Action:
方法run首先获取intent,判断如果为”greet”或者为”enter_data”时通过next方法获取的第1个entity的值不为空:
-如果shown_privacy有值,且entity有值,则输出的模板response中会使用entity的值进行占位符的替换&#