如何在 QnA Maker 中预筛选用户输入的答案?

How can I pre-filter answers from user input in QnA Maker?

我目前正在使用 QnA Maker 开发聊天机器人。我通过上传包含所有必需问题、答案和其他必要详细信息的 excel 文件来使用多回合功能。

我的前提如下:

我有一个工具列表、它们的描述以及这些工具属于哪个类别。

机器人应该根据用户给出的描述引导用户使用工具。

工具的描述是知识库中的问题,工具名称是答案。

工具分为不同的类别。例如,假设我们有类别 1、类别 2 和类别 3 以及工具 A、工具 B、工具 C 和工具 D。

类别 1 包含工具 A 和工具 C

类别 2 包含工具 B 和工具 C

类别 3 包含工具 A、工具 C 和工具 D

用户首先会看到按钮形式的类别选择,我希望能够相应地预先过滤答案。

因此,如果用户选择类别 1,则机器人应该将搜索限制为仅工具 A 和 C

有没有办法在 QnA Maker 中实现这一点,或者可以在 excel 中添加类别?

project_screenshot

无论何时将类别信息传递到 QnA maker,您都应该添加过滤器数据(工具 A)作为元数据。检查您的自动化代码并在绑定(类别按钮)时验证来自 QnA Maker 的信息类型。单击这些按钮时,您将获得类别名称,将它们传递到一个开关盒中,并为进一步的处理选择正确的元数据名称或工具名称。您可以将此元数据作为过滤器传递到 QnA Maker 查询中。

示例:

{
"question": "Category 1",
"top": 3, // 3 top answers will get based on the threshold score.
"isTest": true,
"scoreThreshold": 30,
"strictFilters": [
{
    "name": "category1", 
    "value": "Tools A"
}],

}

参考:

  1. QnA Maker Docs