首页 > 解决方案 > 在 QnA Maker 中使用多个 StrictFilter

问题描述

我正在寻找使用 Microsoft QnA Maker 的 StrictFilter 函数来传递多个严格过滤器,但将它们视为 filterA OR filterB。似乎严格过滤器被视为过滤器A和过滤器B。有没有办法将它们更改为“或”?

https://docs.microsoft.com/sl-si/azure/cognitive-services/qnamaker/how-to/metadata-generateanswer-usage

看起来它最终是在查询 Azure 搜索,生成一个“filterA AND filterB”——直接查询 Azure 搜索而不是 GenerateAnswer 方法是否会成为其他人为此类事情采取的方法?

标签: botframeworkqnamaker

解决方案


因此,在这种情况下,当前不可能在同一个 API 调用中将过滤器组合在一起。但是,您可以通过使用不同的严格过滤器多次发布相同的查询然后将它们添加在一起来获得类似的效果。

Call1: "strictFilters": [ { "name": "filter1", "value": "value1" },{ "name": "filter2", "value": "value2" }]

Call2: "strictFilters": [ { "name": "filter1", "value": "value1" },{ "name": "filter2", "value": "value3" }]

这将返回 filter1 设置为 value1 且 filter2 设置为 value2 或 value3 的所有条目。如果不再需要此解决方法,文档可能会更新


推荐阅读