第一次发帖,所以如果我可以改进这篇文章的某些方面,请随时给我反馈......现在来回答我的问题。
我目前正在开发一个 Google Action,该 Action 将允许用户定义重要事件,例如 Bob 的生日或 Fred 的毕业,并保存有关所述事件的数据。稍后,用户将能够询问有关事件的信息并将其返回给他们。
我将 Dialogflow API 与“内联编辑器”实现一起使用,以使其现在尽可能简单。我遇到的问题是,该事件的实体类型为@sys.any,因此用户所说的任何内容都被排除为有效输入。然而,我想要某种方式偏向于我已经为用户存储的事件,以便他们更有可能找到他们正在寻找的事件。
我在这里找到了另一个讨论语音偏见 (What is meant by speech bias and how to use speechBiasHints in google-actions appResponse) 的答案,该答案将语音偏见定义为“影响语音到文本识别”的能力,这正是我相信我想要的。虽然该答案提供了示例代码,但它适用于 Actions SDK,而不是我正在使用的 Dialogflow SDK。
任何人都可以提供一个示例,说明如何使用 DialogFlow Webkook 填充 Conversation Webhook 的 ExpectedInput 响应的“speechBiasingHints”部分?
注意:这是一个学生项目,我是开发 Google Actions 的新手,并且仍然非常了解 Google Actions 的所有功能。非常欢迎任何反馈或建议。
最佳答案
您链接到的问题与您采用的方法有很多不同。 Action SDK 提供了更多的低级控制,但没有 Dialogflow 提供的自然语言处理 (NLP) 功能。
Dialogflow 通过使用 Entities 以稍微不同的方式处理偏差,因此您无需直接控制语音偏差,Dialogflow 可以在某种程度上为您处理。
由于每个用户可能有不同的事件名称,您可能希望使用 User Entity ,这是您定义的实体,然后通过 Dialogflow 的 API 逐个用户填充。在您的示例短语中,您可以使用此实体名称代替 @sys:any
,或创建另一组使用此实体的短语。
关于actions-on-google - 将 "speechBiasingHints"与 Dialogflow Webhook 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50416556/