rasa 核心和 botkit 框架在对话流程方面有什么区别?

Art*_*rde 3 bots botkit rasa-nlu rasa-core rasa

我正在使用 rasa 学习机器人开发。我采用了简单的银行系统用例。以下是短流程:

I want to apply for loan
                Home loan   Car Loan   Personal Loan

**User comes again after some days**

                Hey, you inquired about the loan previously, what is the status?
Bought from another bank
                    Which bank?
Axis Bank
                    What interest rate did you buy the loan at?
5%
Run Code Online (Sandbox Code Playgroud)

假设用户问“我想申请贷款”,这样我就可以对意图进行分类并提取实体并相应地回复用户。但是,如果用户说“Axis Bank”,我应该如何跟踪他回答为“Axis Bank”的哪个问题以及我的下一个问题或答案是什么?

我搜索了“如何跟踪对话状态?”

我遇到了 [ https://github.com/RasaHQ/rasa_nlu/issues/303][1]这个链接 因为他们提到

我认为这不应该是 RASA 目标 IMO 的一部分:NLU 本身就是一个非常庞大且复杂的话题。但是你可以使用一个特定的框架,比如 botkit。

但是在 rasa-core 中有一个插槽选项(在对话期间跟踪的信息(例如用户年龄))

在下面的链接中提到 Rasa core 和 Rasa nlu 之间的区别

Rasa核心用于引导对话流程,而Rasa nlu是理解和处理文本以提取信息(实体)

有人可以帮助我了解rasa-core 和 botkit在对话流程方面的区别吗?

小智 6

RASA 和 botkit 不是唯一的选择,您当然还有(仅举几个对开发人员友好的选项)IBM Watson、MS Bot Framework(或他们现在所说的 botbuilder),其中 v4 正在开源中开发.

RASA Core 的突出之处在于它可以根据对话的意图和当前状态了解下一步该做什么。对于其他人,您需要编写流程脚本(或者您必须构建一个可以保存其他人可以填充的流程的数据结构)。

你会走哪条路取决于你已经拥有多少对话数据以及你的机器人有多复杂。对于简单的机器人,使用脚本化流程会更快。当脚本机器人变大时,将难以扩展。

这是我在学习 RASA 时阅读的几篇好文章。 https://medium.com/rasa-blog/a-new-approach-to-conversational-software-2e64a5d05f2a

https://medium.com/@harjun1601/building-a-chatbot-with-botkit-and-rasa-a18aa4d69ebb