【问题标题】:How to filter QnAMaker Question based on Source如何根据来源过滤 QnAMaker 问题
【发布时间】:2019-04-08 15:33:13
【问题描述】:

我在我的 Bot Framework 中使用 QnAMaker REST API 来查询知识库。

它工作正常,但我想根据requestData 中指定的“来源”过滤“问题”。参考文档-https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/metadata-generateanswer-usage 我没有看到任何选项可以做到这一点。文档指出“来源”只是响应答案的一部分,而不是请求的一部分。

我尝试将“源”作为元数据传递给strictFilters

Dictionary<string, object> requestData = new Dictionary<string, object>
{
    ["question"] = question,
    ["top"] = top,
    ["strictFilters"] = new Dictionary<string, object>
    {
        ["source"] = "test.tsv"
    }
};

string requestBody = JsonConvert.SerializeObject(requestData);
kbId = _configuration[qnaKbName];
method = "/knowledgebases/" + kbId + "/generateAnswer/";
var uri = host + method;
var response = await Post(uri, requestBody);
return response;

请求 JSON 格式-

{"question":"flexible working","top":5,"strictFilters":{"source":"test.tsv"}}

它不起作用,我得到以下响应-

{
  "error": {
    "code": "BadArgument",
    "message": "Parameter is null"
  }
}

尝试像这样创建请求 JSON-

{"question":"sabbatical","top":5,"strictFilters":[{"name":"source","value":"test.tsv"}]}

得到以下响应-

{
  "error": {
    "code": "Unspecified",
    "message": "Something happened. Please retry after some time."
  }
}

有没有办法做到这一点?如果我可以提供更多详细信息,请告诉我..

【问题讨论】:

  • 你不能简单地过滤你得到的结果,因为它们包含source 字段吗?因为你尝试使用过滤器但这些过滤器值必须在元数据中指定,目前还没有完成
  • @NicolasR Here-github.com/MicrosoftDocs/azure-docs/issues/14778 他们说我们可以。如果我们得到很大的过滤响应,过滤结果也很麻烦并且性能成本很高。
  • 正如他们在 Github 的帖子中所说的那样,source 不是元数据中的信息:“源不是元数据。我们将明确添加为元数据的元数据视为名称:值对。”
  • @NicolasR 是的,我正在与他们联系。
  • 因此,如果您想使用这些过滤器,请确保首先添加元数据。那么它应该可以工作

标签: c# botframework azure-cognitive-services qnamaker


【解决方案1】:

当传递的输入 json 与 QnA API 请求正文不匹配时,会出现错误 BadArgument, Parameter is null。例如,如果 API 期待 {"question":"this is my question"} 而我们传递了 {"questionAB":"this is my question"},这将引发错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-21
    • 1970-01-01
    相关资源
    最近更新 更多