【问题标题】:LUIS Authoring API: How do I filter LUIS utterances by intent?LUIS 创作 API:如何按意图过滤 LUIS 话语?
【发布时间】:2017-12-15 22:27:49
【问题描述】:

我需要为特定意图检索所有标记的话语(又名示例)。

LUIS 创作 API 中执行此操作的唯一调用似乎是 GET review labeled examples

/luis/api/v2.0/apps/:appId/versions/:versionId/examples?skip=0&take=500 /luis/api/v2.0/apps/:appId/versions/:versionId/examples?skip=500&take=500

这将为 all 意图返回 all 话语。我有 880 个标记的话语,由于冗长的回复,它是一个 2.5MB 的文件。这使它变慢。

LUIS Web UI 使用过滤调用: /luis/webapi/v2.0/apps/:appId/versions/0.1/models/:modelId/reviewLabels。生成的文件通常为 10-50kB。但是,没有关于此调用的文档(请注意路径中的 webapi 而不仅仅是 api)。

那么:是否有一种支持的方法来检索经过过滤的话语列表?

【问题讨论】:

  • 我认为微软没有为该功能公开 API。或者,您可以export 模型并应用 LINQ 根据意图过滤掉话语。这是恕我直言的唯一方法
  • @KunalMukherjee 导出模型(即https://westus.api.cognitive.microsoft.com/luis/api/v2.0/apps/:appId/versions/:versionId/export)会生成一个小得多的文件,但它不提供任何 ID。没有 id,从编程的角度来看是没有用的。
  • 你说的是版本号???
  • @KunalMukherjee 当您致电 /examples/ 时,每个示例都有一个唯一的数字 ID。 /export 没有提供。
  • 你可以从这个Programmatic API分批500个得到所有/examples

标签: botframework azure-language-understanding


【解决方案1】:

是否有一种支持的方法来检索经过过滤的话语列表?

AFAIK,我无法从服务器端找到一个 API,经过研究我发现即使 Luis Web UI 也不使用服务器提供的任何过滤器,它只是从服务器端获取所有话语并创建过滤器在前台使用js。

由于 Luis Web UI 使用 webapi 对结果进行分层,因此经过测试,我们可以将此称为 webapi 与调用 apiOcp-Apim-Subscription-Key 作为 head 完全相同,例如我们可以C# 中的代码如下:

try
{
    using (var client = new HttpClient())
    {
        client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "{SubscriptionKey}");
        var uri = "https://westus.api.cognitive.microsoft.com/luis/webapi/v2.0/apps/{appId}/versions/{versionNumber}/models/{modelId}/reviewLabels";
        var response = await client.GetAsync(uri);
        //TODO:
    }
}
catch (Exception e)
{
    Debug.WriteLine(e.Message);
}

没有关于这个webapi的官方文档,但是我们可以尝试使用Postman来分析http请求。

【讨论】:

  • /reviewLabels URI 不提供实体信息。 entityLabels 作为空数组发送。因此,很遗憾,它不能完全替代 /examples
  • @ChrisMcGrath,这个webapi 是迄今为止我能找到的唯一方法,我不能说它是可靠的,因为没有官方支持。我在 Luis 服务中使用了一些内置意图和自定义的“问候”意图进行测试,entityLabels 向我返回了正确的响应。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-01
  • 2017-12-18
  • 1970-01-01
相关资源
最近更新 更多