可以将API.ai/ RASA NLU与Tensorflow集成以制作聊天机器人

时间:2017-11-19 17:26:27

标签: tensorflow deep-learning chatbot dialogflow rasa-nlu

以下是令我困惑的问题。希望这里的朋友能清除它。

  1. Api.ai和RASA NLU都是用于自然语言处理和自然语言生成的库?我是对的

  2. 我们可以在Tensorflow中执行NLU,以便我们可以在Tensorflow中执行所有NLU + ML操作吗?

  3. 如果我使用Api.ai或RASA NLU用于NLU目的,我如何使用Api.ai或RASA NLU执行ML操作?我们可以建立自己的ML模型并使其与Api.ai或RASA NLU一起使用

  4. 方案

    假设我只是想构建一个聊天机器人。

    1. 我使用API​​.ai或RASA NLU作为NLU,即将输入分解为意图和实体。

    2. 现在我必须创建自己的ML模型来训练我将使用Tensor流创建的一些数据集。

    3. 如何整合这两者以使其强大?

    4. 提前致谢

2 个答案:

答案 0 :(得分:3)

回答您的具体问题:

  1. 不,Rasa NLU是一个图书馆; API.ai(现称为Dialogflow)是一种产品,目前由Google拥有。自然语言生成也不是。他们主要做自然语言理解。对于Rasa NLU,这仅限于意图和实体分类。 Dialogflow还包括上下文,Web挂钩等内容。要使用Rasa获得更多功能,您还需要查看Rasa Core
  2. 当然people使用tensorflow进行NLU。 Rasa NLU不使用它,我不知道我们是否确切了解Dialogflow的工作原理。
  3. 使用像Rasa NLU或Dialoflow这样的东西的全部意义在于抽象出很多关于ML如何运作的必要知识。如果您想要实现自己的分类器,请参阅上面的链接以了解tensorflow,或者查看MITIEspacy和sklearn,这是Rasa打包的两个后端。
  4. 希望能够解决问题。要整合您给出的方案,如果您使用Rasa或DialogFlow,则不需要额外的ML。他们在各自的帽子下做到这一点。

    • Dialogflow打包完整聊天机器人解决方案所需的一切。
    • Rasa NLU可与Botkit或Rasa Core一起使用,以获得完整的聊天机器人解决方案。

答案 1 :(得分:1)

1)如上所述,RASA NLU是一个库,而Api.AI是一个服务。

2)是! RASA现在支持将TensorFlow用作管道的一部分。

3)RASA的优点之一是,它使您可以使用与Api.ai(现在的Dialogflow)相同的API,因此您可以对两者使用相同的训练数据。但是,我认为与Dialogflow之类的服务相比,您最好还是坚持使用RASA。