Dialogflow es DialogFlow vs Lex用于流意图检测

Dialogflow es DialogFlow vs Lex用于流意图检测,dialogflow-es,chatbot,amazon-lex,aws-lex,Dialogflow Es,Chatbot,Amazon Lex,Aws Lex,对于我目前的项目,我正在寻找一个具有以下功能的bot构建平台 应支持通过API创建/更新新的/现有的bot 支持流式音频的意图检测 允许在单个项目中托管多个bot代理 修改现有bot/agent并将其另存为新bot/agent的API 因此,我深入研究并使用DialogFlow开发了一个简单的工作原型。DialogFlow支持流式音频的意图检测。但不支持第1点和第3点。DialogFlow目前不支持通过API创建代理。此外,最大的限制是,对于每个GCP项目,只能创建一个DialogFlow代理。

对于我目前的项目,我正在寻找一个具有以下功能的bot构建平台

应支持通过API创建/更新新的/现有的bot

支持流式音频的意图检测

允许在单个项目中托管多个bot代理

修改现有bot/agent并将其另存为新bot/agent的API

因此,我深入研究并使用DialogFlow开发了一个简单的工作原型。DialogFlow支持流式音频的意图检测。但不支持第1点和第3点。DialogFlow目前不支持通过API创建代理。此外,最大的限制是,对于每个GCP项目,只能创建一个DialogFlow代理。假设我创建了多个代理gcp项目。我还运行了一个web应用程序,它通过WebSocket从另一个外部资源接收音频流,以进行意图检测。为了将音频流定向到构建的特定DialogFlow代理,我需要在运行时解析特定GCP项目的凭据。我已经读到,我可以用一个凭证创建一个服务帐户并管理多个GCP项目,但这还需要尝试

正如第4点所指出的,我也在寻找一种在运行时使用API创建现有代理的新版本的方法。目前,DialogFlow支持版本和环境,但其实际用途与我提到的不同。此外,这是一个测试版功能,不确定它是否会被包括在生产中

另一方面,我在调查AWS Lex。莱克斯只支持我的一项要求。AWS Lex目前不支持流中的意图检测,我找不到任何用于此目的的API


所以我的问题是如何利用现有的DialogFlow特性来满足我的需求?或者在AWS Lex中有没有一种方法可以从流式音频输入中检测意图?

没有通过API创建新Dialogflow代理的机制,所以第1部分。四,。这是不可能的


对于3,如您所述,您可以在运行时管理凭据,也可以配置一个可以访问所有GCP项目的服务帐户。

供将来参考:Dialogflow上也可以使用第1点和第4点。要以编程方式创建dialogflow代理,您需要执行以下操作:-

主项目,您可以通过它来协调其他资源的创建。 通过编程创建一个新的GCP项目,例如:使用CloudDeployment Manager或Terraform。 将主项目中的服务帐户添加为Dialogflow和其他管理员/用户。 使用Dialogflow v2 beta API创建新的机器人、创建新的意图和新的实体。 还可以将现有bot导出为zip,修改诸如bot name之类的zip内容,并使用zip上载功能创建新bot。然后继续更新/创建新的意图和实体