如何在Dialogflow中实现多语言代理的语言切换?

问题描述 投票:5回答:2

我正在使用Google Dialogflow(使用V2 API),我想建立一个机器人,如果用户需要,它可以在多种语言之间切换。

我已经在不同的语言中设置了所有的意图,现在我希望用户能够选择一种语言,例如通过发送一个简单的消息或使用预定义的按钮(这个实现细节还不确定,但可能不会影响问题)。

我知道 detectIntent 方法有一个 languageCode 参数,据我了解,这个参数是可选的。

在Dialogflow的API环境中,在 开发者.google.comapis-explorer我可以向我的代理商发送以下请求。

POST https://dialogflow.googleapis.com/v2/projects/<session>/agent/sessions/new:detectIntent?key={YOUR_API_KEY}

{
 "queryInput": {
  "text": {
   "text": "hi",
   "languageCode": "en-EN"
  }
 }
}

当发送一个 queryInput 包括 languageCode,代理会用相应的语言进行响应,甚至可以在对话中进行切换,我认为这是一个很棒的功能。

换句话说,在这个测试环境中,语言切换工作正常,你可以手动发送 languageCode 参数,如果你想的话,可以修改它。

现在我的问题是:有没有一种方法,最好是简单的方法,让我使用这段代码?

有没有一种方法,最好是简单的方法 让我可以使用这段代码?

恐怕我必须使用JavaScript和HTML从头开始建立一个完整的实现,才能让它运行。目前,我正在考虑建立一个带有嵌入式iframe的网站,让你以某种方式改变Node.JS代码。

欢迎并感谢任何建议。除非,请不要建议我设置两个独立的机器人,那不是我想要的。

另外,有没有更好的方法使用Dialogflow来解决这个问题?

谢谢你。

node.js dialogflow actions-on-google
2个回答
0
投票

如果你使用的是Dialogflow集成,你目前可以只 一语中的. 如果你要与终端用户实现自己的接口,只需要询问终端用户喜欢的语言,并在每次检测意图的调用中提供语言代码。

© www.soinside.com 2019 - 2024. All rights reserved.