4

第一次发帖,如果我可以改进这篇文章,请随时给我反馈……现在开始我的问题。

我目前正在开发一个 Google Action,该 Action 将允许用户定义重要事件,例如 Bob 的生日或 Fred 的毕业典礼,并保存有关所述事件的数据。稍后,用户将能够询问有关该事件的信息并将其返回给他们。

我正在使用具有“内联编辑器”功能的 Dialogflow API,以使其现在尽可能简单。我遇到的问题是,该事件的实体类型为@sys.any,因此用户所说的任何内容都被排除在有效输入之外。但是,我希望通过某种方式偏向我已经为用户存储的事件,以便他们更有可能找到他们正在寻找的事件。

我在这里找到了另一个讨论语音偏见的答案(什么是语音偏见以及如何在google-actions appResponse中使用speechBiasHints),它将语音偏见定义为“影响语音到文本识别”的能力,这正是我所相信的我想。虽然该答案提供了示例代码,但它适用于 Actions SDK,而不是我正在使用的 Dialogflow SDK。

谁能提供一个示例,说明如何使用 DialogFlow Webkook 填充对话 Webhook 的 ExpectedInput 响应的“speechBiasingHints”部分?

注意:这是针对学生项目的,我是开发 Google Actions 的新手,并且仍然非常了解 Google Actions 的所有功能。非常欢迎任何反馈或建议。

4

1 回答 1

1

您链接到的问题与您采用的方法有很多不同。Action SDK 提供了更多的低级控制,但没有 Dialogflow 提供的太多自然语言处理 (NLP) 功能。

Dialogflow 通过使用Entities处理偏差略有不同,因此您无需直接控制语音偏差,Dialogflow 可以在某种程度上为您处理。

由于每个用户可能有不同的事件名称,您可能希望使用User Entity,这是您定义的实体,然后通过 Dialogflow 的 API 逐个用户填充。然后,在您的示例短语中,您可以使用此实体名称而不是@sys:any,或者创建另外一组使用此实体的短语。

于 2018-05-18T18:13:20.107 回答