Uppdatera kompetensuppsättning (REST API för Azure AI Search)

Du kan uppdatera en befintlig kunskapsuppsättning och ett kunskapslager med hjälp av en HTTP PUT och ange namnet på kompetensuppsättningen som ska uppdateras på begärande-URI:n.

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

Anteckning

Kompetensuppsättningar är grunden för AI-berikande i Azure AI Search. En kostnadsfri resurs är tillgänglig för begränsad bearbetning, men för större och mer frekventa arbetsbelastningar krävs en fakturerbar Cognitive Services-resurs. Mer information finns i Koppla en Cognitive Services-resurs till en Azure AI Search-kompetensuppsättning.

URI-parametrar

Parameter Beskrivning
tjänstnamn Krävs. Ange det unika, användardefinierade namnet på söktjänsten.
kompetensuppsättningens namn Krävs. Begärande-URI anger namnet på kompetensuppsättningen som ska uppdateras.
api-version Krävs. Den aktuella stabila versionen är api-version=2020-06-30. Se API-versioner för fler versioner.
disableCacheReprocessingChangeDetection Valfritt. Används för inkrementell berikning (false som standard). Ange till för att true förhindra uppdateringar av befintliga dokument baserat på den aktuella åtgärden. Mer information finns i cachehantering.

Rubriker för begäran

I följande tabell beskrivs nödvändiga och valfria begärandehuvuden.

Fält Description
Content-Type Krävs. Ange detta till application/json
api-key Valfritt om du använder Azure-roller och en ägartoken anges på begäran, annars krävs en nyckel. En API-nyckel är en unik, systemgenererad sträng som autentiserar begäran till söktjänsten. Uppdateringsbegäranden måste innehålla en api-key rubrik inställd på din administratörsnyckel (till skillnad från en frågenyckel). Mer information finns i Ansluta till Azure AI Search med nyckelautentisering .

Begärandetext

Syntaxen för begärandetext är samma som för Skapa kompetensuppsättning.

När du uppdaterar en befintlig kompetensuppsättning ersätts hela definitionen med innehållet i begärandetexten. I allmänhet är det bästa mönstret att använda för uppdateringar att hämta kompetensuppsättningsdefinitionen med en GET, ändra den och sedan uppdatera den med PUT.

Svarsåtgärder

För en lyckad begäran bör du se statuskoden "201 Skapad".

Som standard innehåller svarstexten JSON för den definition av kompetensuppsättning som skapades. Men om rubriken Prioritera begäran är inställd på return=minimal är svarstexten tom och statuskoden för lyckad status blir "204 Inget innehåll" i stället för "201 Skapad". Detta gäller oavsett om PUT eller POST används för att skapa kompetensuppsättningen.

Exempel

Exempel: Uppdatera en kompetensuppsättning

I följande exempel uppdateras en kompetensuppsättning som används för att utöka en samling finansiella dokument.

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

Brödtexten i begäran är ett JSON-dokument. Den här kompetensuppsättningen använder två färdigheter asynkront, oberoende bearbetning av /document/content ämnet i som två olika transformeringar. Du kan också dirigera utdata från en transformering till indata från en annan. Mer information finns i Så här definierar du en kompetensuppsättning.

{
  "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>"
  }
}

Exempel: Ta bort Cognitive Services-nyckeln

Om du vill uppdatera en befintlig kompetensuppsättning och ta bort cognitive services-nyckeln som är kopplad till den cognitiveServices ändrar du avsnittet genom att ange @odata.type till #Microsoft.Azure.Search.DefaultCognitiveServices.

{
  "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"
  }
}

Se även