我需要为特定的意图检索所有标记的话语(也就是示例)。
似乎LUIS Authoring 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
这将返回所有意图的所有话语。我有880个标记的话语,由于冗长的回复,它是一个2.5MB的文件。这使它变慢。
LUIS Web UI使用过滤调用:/luis/webapi/v2.0/apps/:appId/versions/0.1/models/:modelId/reviewLabels
。生成的文件通常为10-50kB。但是,没有关于此调用的文档(注意路径中的webapi
而不仅仅是api
)。
那么:是否有一种支持的方法来检索过滤的话语列表?
是否有支持的方法来检索过滤的话语列表?
AFAIK,我无法从服务器端找到这个API,经过研究我发现即使是Luis Web UI也没有使用服务器提供的任何过滤器,它只是从服务器端获取所有话语并创建过滤器使用js in前景。
由于你使用webapi
为Luis Web UI对结果进行了分层,经过测试,我们可以将这个webapi
称为与api
一起调用Ocp-Apim-Subscription-Key
完全相同,例如我们可以在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请求。