你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

(Azure AI 搜索 REST API) 更新技能集

可以使用 HTTP PUT 更新现有 技能组知识存储 ,并指定要在请求 URI 上更新的技能组的名称。

PUT https://[servicename].search.windows.net/skillsets/[skillset name]?api-version=[api-version]
  Content-Type: application/json
  api-key: [admin key]

注意

技能集是 Azure AI 搜索中 AI 扩充 的基础。 免费资源可用于有限的处理,但对于更大且更频繁的工作负载,需要计费的认知服务资源。 有关详细信息,请参阅 将认知服务资源附加到 Azure AI 搜索技能集

URI 参数

参数 说明
服务名称 必需。 将其设置为搜索服务的唯一用户定义名称。
技能组名称 必需。 请求 URI 指定要更新的技能组的名称。
api-version 必需。 当前稳定版本为 api-version=2020-06-30。 有关更多 版本,请参阅 API 版本。
disableCacheReprocessingChangeDetection 可选。 默认情况下,用于增量扩充 (false) 。 true设置为 可阻止基于当前操作更新现有文档。 有关详细信息,请参阅 缓存管理

请求标头

下表介绍必需和可选的请求标头。

字段 说明
Content-Type 必需。 将其设置为 application/json
api-key 如果使用的是 Azure 角色 ,并且请求中提供了持有者令牌,则为可选,否则需要密钥。 api-key 是系统生成的唯一字符串,用于对搜索服务的请求进行身份验证。 更新请求必须包含 api-key 设置为管理密钥 (的标头,而不是) 查询密钥。 有关详细信息 ,请参阅使用密钥身份验证连接到 Azure AI 搜索

请求正文

请求正文语法与 创建技能组的语法相同。

更新现有技能组时,整个定义将替换为请求正文的内容。 通常,用于更新的最佳模式是使用 GET 检索技能组定义,对其进行修改,然后使用 PUT 更新它。

响应

对于成功的请求,应看到状态代码“201 Created”。

默认情况下,响应正文将包含已创建的技能组合定义的 JSON。 但是,如果 Prefer 请求标头设置为 return=minimal,响应正文将为空,并且成功状态代码将是“204 No Content”,而不是“201 Created”。 无论使用 PUT 还是 POST 创建技能组合都是如此。

示例

示例:更新技能组

以下示例更新用于扩充财务文档集合的技能组。

PUT https://[servicename].search.windows.net/skillsets/financedocenricher?api-version=2020-06-30
api-key: [admin key]
Content-Type: application/json

请求的正文是一个 JSON 文档。 此特定技能组异步使用两个技能,独立处理 作为两个不同的转换的 /document/content 实质内容。 或者,可将一个转换的输出指向另一个转换的输入。 有关详细信息,请参阅如何定义技能组合

{
  "name": "financedocenricher",
  "description": 
  "An updated version of a skillset used to extract sentiment from financial records, extract company names, and then find additional information about each company mentioned. This version changes the target names.",
  "skills":
  [
    {
      "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill",
      "categories": [ "Organization" ],
      "defaultLanguageCode": "en",
      "inputs": [
        {
          "name": "text",
          "source": "/document/content"
        }
      ],
      "outputs": [
        {
          "name": "organizations",
          "targetName": "companies"
        }
      ]
    },
    {
      "@odata.type": "#Microsoft.Skills.Text.SentimentSkill",
      "inputs": [
        {
          "name": "text",
          "source": "/document/content"
        }
      ],
      "outputs": [
        {
          "name": "score",
          "targetName": "positivityscore"
        }
      ]
    },
  ],
  "cognitiveServices": 
  {
  "@odata.type": "#Microsoft.Azure.Search.CognitiveServicesByKey",
  "description": "mycogsvcs resource in West US 2",
  "key": "<your key goes here>"
  }
}

示例:删除认知服务密钥

如果要更新现有技能集并删除附加到它的认知服务密钥,则通过将 设置为 @odata.type#Microsoft.Azure.Search.DefaultCognitiveServices修改 cognitiveServices 节。

{
  "name": "financedocenricher"
  "skills":
  [
    {
      "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill",
      "categories": [ "Organization" ],
      "defaultLanguageCode": "en",
      "inputs": [
        {
          "name": "text",
          "source": "/document/content"
        }
      ],
      "outputs": [
        {
          "name": "organizations",
          "targetName": "companies"
        }
      ]
    },
  ],
  "cognitiveServices": 
  {
  "@odata.type": "#Microsoft.Azure.Search.DefaultCognitiveServices"
  }
}

另请参阅