【问题标题】:Dialogflow SDK or Dialogflow REST API, which is faster in term of response time?Dialogflow SDK 或 Dialogflow REST API,哪个响应时间更快?
【发布时间】:2018-09-26 12:54:59
【问题描述】:

我使用 Dialogflow 为 Google Assistant 开发应用程序。我在 Dialogflow Web GUI 中创建了意图和实体,并且正在使用 Webhook 响应进行进一步对话。

现在我想构建一个聊天机器人,它是现有 Android 或 iOS 应用程序的一部分,并使用我已经为 Dialogflow 编写的代码作为其中的一部分。当我这样做时,我需要注意什么?看起来我可以使用该平台的 SDK 或调用 Dialogflow REST API。哪个更快或有任何权衡?我可以在不通过网络的情况下使用 Dialogflow NLP 吗?

【问题讨论】:

  • 当您说“SDK”时,您指的是哪一个? (您的问题有点含糊 - 示例和链接将有助于澄清您在问什么以及为什么。)
  • 好的,举个例子,你必须将聊天机器人集成到你现有的 android/ios 应用程序中。所以在那一刻,当用户向您的应用询问一些查询时,您应该调用其余的 api 来解析自然文本还是使用 SDK 方法(在应用程序的包中)?哪一种方法可以为您提供快速响应?有没有什么方法可以在不调用 REST API 的情况下使用对话流自然语言解析能力?

标签: dialogflow-es


【解决方案1】:

注意:Dialogflow API V1 已弃用,将于 2019 年 10 月 23 日关闭。 这意味着官方 Javascript、原生 Android、原生 iOS 和 Cordova 客户端将停止工作,因为它们都使用 V1。这些客户端是否以及何时升级到 V2 尚无定论。 所以现在最好的选择是使用 REST API。

【讨论】:

    【解决方案2】:

    在从为 Actions on Google 构建的实现转移到使用它为其他平台提供响应时,需要注意一些事项。 Actions on Google 预计响应的格式会略有不同,如果您使用的是 AoG 特定特征(例如 SimpleResponse 对象或 Card 对象),则它可能不会出现在其他 Dialogflow 集成中。因此,您需要检查您的 webhook 代码,以确保您发回的内容可以跨平台运行。您的逻辑和 Dialogflow UI 构建器应该几乎保持不变 - 只是您的后端可能需要一些工作。

    如您所说,要进行调用,您可以自己进行 REST 调用,也可以使用 Dialogflow 构建的 SDK。虽然 SDK 会稍微快一些,因为它使用 ProtoBuffs 而不是 REST,在大多数情况下差异可能相当小。如果您打算流式传输音频,则可能需要使用 SDK 或您自己的 ProtoBuff 实现,因为 REST 也无法处理。如果您只是发送文本,并且更喜欢使用 REST API,那么这是一个非常合理的方法。

    没有“本地 Dialogflow”库。所有呼叫都必须通过网络。如果您需要,还有其他库可以在本地执行 Speech-to-Text 和 NLP。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-23
      • 2019-04-25
      • 1970-01-01
      • 1970-01-01
      • 2019-11-10
      • 1970-01-01
      相关资源
      最近更新 更多