3

我正在使用 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%

假设用户问“我想申请贷款”,所以我可以分类意图并提取实体并相应地回复用户。但是如果用户说“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在对话流程方面的区别吗?

4

1 回答 1

7

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

于 2018-02-25T15:35:09.843 回答