首页 > 解决方案 > Microsoft Azure LUIS API:缺少短语列表功能字段

问题描述

我正在使用 Microsoft LUIS 的 API。我通过他们的 Web 界面将模型下载为 json 文件,然后通过 Web 界面将其上传,没有问题。然后我写了一些代码来通过他们的 API 上传 json 文件,我得到一个 400: Bad Argument with this: Missing phraselist features field。

这是代码

open System.IO
let baseModelPath = @"C:\Resources\Model.2.json"
let text = File.ReadAllText(baseModelPath)

#r "System.Net.Http"
open System.Net.Http
open System.Text

let versionId = "0.3"
let uri = "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/apps/XXXXXX/versions/import?versionId=" + versionId
let subscriptionKey = "XXXXXXXXXXX"
let client = new HttpClient()
client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", subscriptionKey)
let content = new StringContent(text, Encoding.UTF8, "application/json")
let response = client.PostAsync(uri,content).Result
let resultJson = response.Content.ReadAsStringAsync().Result
resultJson

有没有人见过这个?互联网帮助不大...

标签: azure-language-understanding

解决方案


这是模型以及 V2 API 如何处理重复项的问题。我毫无问题地上传了 Intents 的唯一值。当我上传话语(“示例”端点)时,一些话语没有持续存在。事实证明,如果您为话语文本传递相同的值,即使它具有不同的意图名称,第一个意图也会丢失该话语引用,而第二个意图会得到它。因此,当加载整个模型时,一些意图有 0 个关联的话语。尝试建立模型 - 它失败了


推荐阅读