Indexeerfunctie maken of bijwerken (PREVIEW-REST API)

Van toepassing op: 2023-07-01-Preview, 2021-04-30-Preview, 2020-06-30-Preview

Belangrijk

2023-07-01-Preview (geen wijzigingen).

2021-04-30-Preview voegt ondersteuning voor beheerde identiteiten toe voor verrijkingscache en versleutelingssleutels:

  • 'storageConnectionString' accepteert een resource-id voor een door het systeem toegewezen beheerde identiteitverbinding met Azure Storage. Deze eigenschap bevindt zich onder 'cache'. Door de gebruiker toegewezen beheerde identiteit wordt niet ondersteund.
  • 'identiteit' accepteert een door de gebruiker toegewezen beheerde identiteit.

2020-06-30-Preview voegt toe:

Een indexeerfunctie automatiseert het indexeren van ondersteunde gegevensbronnen door verbinding te maken met een vooraf gedefinieerde gegevensbron, gegevens op te halen en te serialiseren en door te geven aan een zoekservice voor gegevensopname. Voor AI-verrijking van afbeeldingen en ongestructureerde tekst kunnen indexeerfuncties ook een vaardighedenset accepteren die verwerking van afbeeldingen en natuurlijke taal toevoegt.

U kunt POST of PUT gebruiken voor een create-aanvraag. Voor beide biedt de aanvraagbody de objectdefinitie.

POST https://[service name].search.windows.net/indexers?api-version=[api-version]
    Content-Type: application/json  
    api-key: [admin key]  

Voor updateaanvragen gebruikt u PUT en geeft u de naam van de indexeerfunctie op de URI op.

PUT https://[service name].search.windows.net/indexers/[indexer name]?api-version=[api-version]
    Content-Type: application/json  
    api-key: [admin key]    

HTTPS is vereist voor alle serviceaanvragen. Als de indexeerfunctie niet bestaat, wordt deze gemaakt. Als deze al bestaat, wordt deze bijgewerkt naar de nieuwe definitie, maar moet u een aanvraag indexeerfunctie uitvoeren als u de uitvoering van de indexeerfunctie wilt uitvoeren.

Als u een indexeerfunctie maakt , wordt deze toegevoegd aan uw zoekservice en uitgevoerd. Als de aanvraag is geslaagd, wordt de index gevuld met doorzoekbare inhoud uit de gegevensbron.

Als u een indexeerfunctie bijwerkt , wordt deze niet automatisch uitgevoerd, maar afhankelijk van uw wijzigingen en de gekoppelde gegevensbron, moet u deze mogelijk opnieuw instellen en opnieuw uitvoeren. Wanneer u een bestaande indexeerfunctie bijwerkt, wordt de volledige definitie vervangen door de inhoud van de aanvraagbody. Over het algemeen is het beste patroon voor updates om de definitie van de indexeerfunctie op te halen met een GET, deze te wijzigen en deze vervolgens bij te werken met PUT.

De configuratie van de indexeerfunctie is afhankelijk van het type gegevensbron. Voor gegevensplatformspecifieke richtlijnen voor het maken van indexeerfuncties begint u met overzicht van indexeerfuncties, dat de volledige lijst met gerelateerde artikelen bevat.

Notitie

Het maximum aantal indexeerfuncties dat u kunt maken, verschilt per prijscategorie. Zie Servicelimieten voor Azure AI Search voor meer informatie.

URI-parameters

Parameter Beschrijving
servicenaam Vereist. Stel deze in op de unieke, door de gebruiker gedefinieerde naam van uw zoekservice.
naam van indexeerfunctie Vereist voor de URI als u PUT gebruikt. De naam moet uit kleine letters bestaan, beginnen met een letter of cijfer, geen schuine streepjes of puntjes hebben en minder 128 tekens bevatten. Nadat u de naam met een letter of cijfer hebt gestart, kan de rest van de naam een willekeurige letter, cijfer en streepjes bevatten, zolang de streepjes niet opeenvolgend zijn.
api-versie Vereist. De huidige preview-versie is 2023-07-01-Preview. Zie API-versies voor meer versies.

Aanvraagheaders

In de volgende tabel worden de vereiste en optionele aanvraagheaders beschreven.

Velden Description
Content-Type Vereist. Stel dit in op application/json
api-key Optioneel als u Azure-rollen gebruikt en er een Bearer-token is opgegeven voor de aanvraag, anders is een sleutel vereist. Een API-sleutel is een unieke, door het systeem gegenereerde tekenreeks die de aanvraag verifieert bij uw zoekservice. Create-aanvragen moeten een api-key header bevatten die is ingesteld op uw beheerderssleutel (in plaats van een querysleutel). Zie Verbinding maken met Azure AI Search met behulp van sleutelverificatie voor meer informatie.

Aanvraagbody

Een gegevensbron, index en vaardighedenset maken deel uit van een definitie van een indexeerfunctie , maar elk is een onafhankelijk onderdeel dat in verschillende combinaties kan worden gebruikt. U kunt bijvoorbeeld dezelfde gegevensbron gebruiken met meerdere indexeerfuncties, of dezelfde index met meerdere indexeerfuncties of meerdere indexeerfuncties die naar één index schrijven.

De volgende JSON is een weergave op hoog niveau van de belangrijkste onderdelen van de definitie.

{   
    "name" : (optional on PUT; required on POST) "Name of the indexer",  
    "description" : (optional) "Anything you want, or nothing at all", 
    "dataSourceName" : (required) "Name of an existing data source",  
    "targetIndexName" : (required) "Name of an existing index",  
    "skillsetName" : (required for AI enrichment) "Name of an existing skillset",
    "cache":  { ... },
    "schedule" : (optional but runs once immediately if unspecified) { ... },  
    "parameters" : (optional) {
        "batchSize": null,
        "maxFailedItems": 0,
        "maxFailedItemsPerBatch": 0,
        "base64EncodeKeys": null,
        "configuration": { }
    },
    "fieldMappings" : (optional) { ... },
    "outputFieldMappings" : (required for AI enrichment) { ... },
    "encryptionKey":(optional) { },
    "disabled" : (optional) Boolean value indicating whether the indexer is disabled. False by default.
}  

Aanvraag bevat de volgende eigenschappen:

Eigenschap Beschrijving
naam Vereist. De naam moet uit kleine letters bestaan, beginnen met een letter of cijfer, geen schuine streepjes of puntjes hebben en minder 128 tekens bevatten. Nadat u de naam met een letter of cijfer hebt gestart, kan de rest van de naam een willekeurige letter, cijfer en streepjes bevatten, zolang de streepjes niet opeenvolgend zijn.
beschrijving Optioneel. Beschrijving van de indexeerfunctie.
dataSourceName Vereist. Naam van een bestaande gegevensbron die verbindingsgegevens en andere eigenschappen biedt.
targetIndexName Vereist. Naam van een bestaande index.
skillsetName Vereist voor AI-verrijking. Naam van een bestaande vaardighedenset.
Cache Optioneel voor AI-verrijking, maakt hergebruik van ongewijzigde documenten mogelijk.
Schema Optioneel, maar wordt onmiddellijk uitgevoerd als dit niet is opgegeven.
parameters Optioneel. Eigenschappen voor het wijzigen van runtimegedrag.
fieldMappings Optioneel. Wordt gebruikt wanneer bron- en doelvelden verschillende namen hebben.
outputFieldMappings Vereist voor AI-verrijking. Hiermee wordt uitvoer van een vaardighedenset toegewezen aan een index of projectie.
encryptionKey Optioneel. Wordt gebruikt voor het versleutelen van inactieve indexeerfunctiegegevens met uw eigen sleutels, beheerd in uw Azure Key Vault. Zie Azure AI Search-versleuteling met door de klant beheerde sleutels in Azure Key Vault voor meer informatie.
Handicap Optioneel. Booleaanse waarde die aangeeft of de indexeerfunctie is uitgeschakeld. Standaard onwaar.

Antwoord

201 Gemaakt voor een geslaagde aanvraag.

Voorbeelden

Voorbeeld: Indexeerfunctie op basis van tekst met schema en parameter

In dit voorbeeld wordt een indexeerfunctie gemaakt die gegevens kopieert uit de tabel waarnaar wordt verwezen door de order-sds gegevensbron naar de orders-idx index volgens een schema dat begint op 1 januari 2022 UTC en elk uur wordt uitgevoerd. Elke aanroep van de indexeerfunctie is geslaagd als er niet meer dan 5 items in elke batch worden geïndexeerd en er in totaal niet meer dan 10 items worden geïndexeerd. Veldtoewijzingen bieden een gegevenspad wanneer veldnamen en -typen niet overeenkomen.

{
    "name" : "myindexer",  
    "description" : "a cool indexer",  
    "dataSourceName" : "orders-ds",  
    "targetIndexName" : "orders-idx", 
    "fieldMappings" : [
      {
          "sourceFieldName" : "content",
          "targetFieldName" : "sourceContent"
      }
    ], 
    "schedule" : { "interval" : "PT1H", "startTime" : "2022-01-01T00:00:00Z" },  
    "parameters" : { "maxFailedItems" : 10, "maxFailedItemsPerBatch" : 5 }  
}

Voorbeeld: Vaardighedenset-indexeerfunctie

In dit voorbeeld wordt een AI-verrijking gedemonstreerd, aangegeven door de verwijzing naar een vaardighedenset en outputFieldMappings waarmee uitvoer van vaardigheden wordt toegewezen aan velden in een zoekindex. Vaardighedensets zijn resources op hoog niveau, afzonderlijk gedefinieerd.

Nieuw in deze preview en alleen van toepassing op vaardighedensets, kunt u de cache-eigenschap opgeven om documenten opnieuw te gebruiken die niet worden beïnvloed door wijzigingen in de definitie van uw vaardighedenset.

{
  "name":"demo-indexer",	
  "dataSourceName" : "demo-data",
  "targetIndexName" : "demo-index",
  "skillsetName" : "demo-skillset",
  "cache" : 
    {
      "storageConnectionString" : "DefaultEndpointsProtocol=https;AccountName=<storage-account-name>;AccountKey=<storage-account-key>;EndpointSuffix=core.windows.net",
      "enableReprocessing": true
    },
  "fieldMappings" : [ ],
  "outputFieldMappings" : 
  [
    {
        "sourceFieldName" : "/document/organizations", 
        "targetFieldName" : "organizations"
    },
  ],
  "parameters":
  {
  	"maxFailedItems":-1,
  	"configuration": 
    {
    "dataToExtract": "contentAndMetadata",
    "imageAction": "generateNormalizedImages"
    }
  }
}

Voorbeeld: Verrijkingscache met een beheerde identiteitsverbinding

In dit voorbeeld ziet u de verbindingsreeks indeling bij het gebruik van Azure Active Directory voor verificatie. De zoekservice moet worden geconfigureerd voor het gebruik van een beheerde identiteit. De identiteit moet de machtigingen 'Bijdrager voor opslagblobgegevens' hebben, zodat deze naar de cache kan schrijven. De verbindingsreeks is de unieke resource-id van uw opslagaccount en moet de container bevatten die wordt gebruikt voor het opslaan van de verrijking in de cache.

{
  "name":"demo-indexer",
  "dataSourceName" : "demodata-ds",
  "targetIndexName" : "demo-index",
  "skillsetName" : "demo-skillset",
  "cache" : 
    {
      "storageConnectionString" : "ResourceId=/subscriptions/<subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/<container-name>;",
      "enableReprocessing": true
    },
  "fieldMappings" : [  ],
  "outputFieldMappings" :  [  ],
  "parameters": {  }
}

Definities

Koppeling Beschrijving
Cache Hiermee configureert u caching voor AI-verrijking en uitvoering van vaardighedensets.
encryptionKey Hiermee configureert u een verbinding met Azure Key Vault voor door de klant beheerde versleuteling.
fieldMappings Bron-aan-doelveldtoewijzingen voor velden die niet overeenkomen op naam en type.
outputFieldMappings Wijst knooppunten in een verrijkt document toe aan velden in een index. Vereist als u vaardighedensets gebruikt.
parameters Hiermee configureert u een indexeerfunctie. Parameters omvatten algemene parameters en bronspecifieke parameters.
Schema Hiermee geeft u het interval en de frequentie van geplande uitvoering van de indexeerfunctie op.

cache (preview)

Incrementeel indexeren is de mogelijkheid om verrijkte documenten in de cache opnieuw te gebruiken bij het verwerken van een vaardighedenset. Het meest voorkomende scenario is hergebruik van OCR of afbeeldingsanalyse van afbeeldingsbestanden, wat kostbaar en tijdrovend kan zijn om te verwerken.

"cache" : 
  {
    "storageConnectionString" : "<YOUR-STORAGE-ACCOUNT-CONNECTION-STRING>",
    "enableReprocessing": true
  }

Het cacheobject heeft vereiste en optionele eigenschappen.

Eigenschap Beschrijving
storageConnectionString Vereist. Hiermee geeft u het opslagaccount op dat wordt gebruikt om de tussenliggende resultaten in de cache op te slaan. Met behulp van het account dat u opgeeft, maakt de zoekservice een blobcontainer met ms-az-search-indexercache het voorvoegsel en aangevuld met een GUID die uniek is voor de indexeerfunctie. Deze moet worden ingesteld op een verbindingsreeks met volledige toegang die een sleutel bevat, of de unieke resource-id van uw opslagaccount voor aanvragen die worden geverifieerd met behulp van Azure AD.

Als u zich wilt verifiëren via Azure AD, moet de zoekservice worden geconfigureerd voor het gebruik van een beheerde identiteit en moet die identiteit de machtiging Bijdrager voor opslagblobgegevens hebben.
enableReprocessing Optioneel. Booleaanse eigenschap (true standaard) voor het beheren van de verwerking van binnenkomende documenten die al in de cache zijn vertegenwoordigd. Wanneer true (standaard) documenten die al in de cache staan, opnieuw worden verwerkt wanneer u de indexeerfunctie opnieuw uitvoert, ervan uitgaande dat uw vaardigheidsupdate van invloed is op dat document. Wanneer false, worden bestaande documenten niet opnieuw verwerkt, waarbij nieuwe, binnenkomende inhoud effectief prioriteit wordt gesteld boven bestaande inhoud. U moet alleen instellen enableReprocessing op false een tijdelijke basis. Om consistentie in het hele corpus te garanderen, enableReprocessing moet true meestal worden gecontroleerd of alle documenten, zowel nieuwe als bestaande, geldig zijn volgens de huidige definitie van de vaardighedenset.
Id Alleen-lezen. Gegenereerd zodra de cache is gemaakt. De ID is de id van de container in het opslagaccount die wordt gebruikt als de cache voor deze indexeerfunctie. Deze cache is uniek voor deze indexeerfunctie en als de indexeerfunctie wordt verwijderd en opnieuw wordt gemaakt met dezelfde naam, wordt de ID opnieuw gegenereerd. De ID kan niet worden ingesteld. Deze wordt altijd gegenereerd door de service.

schedule

Een indexeerfunctie kan desgewenst een planning opgeven. Zonder een planning wordt de indexeerfunctie onmiddellijk uitgevoerd wanneer u de aanvraag verzendt: verbinding maken met, verkennen en indexeren van de gegevensbron. Voor sommige scenario's, waaronder langlopende indexeringstaken, worden planningen gebruikt om het verwerkingsvenster te verlengen tot na het maximum van 24 uur. Als er een planning aanwezig is, wordt de indexeerfunctie periodiek uitgevoerd volgens de planning. De scheduler is ingebouwd; u kunt geen externe planner gebruiken. Een planning heeft de volgende kenmerken:

  • interval: vereist. Een duurwaarde die een interval of periode voor indexeerfuncties aangeeft. Het kleinste toegestane interval is vijf minuten; de langste is één dag. Deze moet worden opgemaakt als een XSD-waarde 'dayTimeDuration' (een beperkte subset van een ISO 8601-duurwaarde ). Het patroon hiervoor is: "P[nD][T[nH][nM]]". Voorbeelden: PT15M voor elke 15 minuten, PT2H voor elke 2 uur.

  • startTime: optioneel. Een UTC-datum/tijd waarop de indexeerfunctie moet worden uitgevoerd.

Notitie

Als een indexeerfunctie is ingesteld op een bepaald schema, maar telkens opnieuw mislukt in hetzelfde document wanneer het wordt uitgevoerd, wordt de indexeerfunctie uitgevoerd met een minder frequent interval (tot het maximum van ten minste eenmaal per 24 uur) totdat de voortgang opnieuw wordt uitgevoerd. Als u denkt dat u het probleem hebt opgelost dat ertoe leidde dat de indexeerfunctie op een bepaald moment vastliep, kunt u een uitvoering op aanvraag van de indexeerfunctie uitvoeren. Als dat lukt, keert de indexeerfunctie weer terug naar het ingestelde schema-interval.

parameters

Een indexeerfunctie kan eventueel configuratieparameters gebruiken waarmee runtime-gedrag wordt gewijzigd. Configuratieparameters worden door komma's gescheiden in de indexeerfunctieaanvraag.

{
  "name" : "my-blob-indexer-for-cognitive-search",
  ... other indexer properties
  "parameters" : { 
        "batchSize": null,
        "maxFailedItems": 0,
        "maxFailedItemsPerBatch": 0,
        "base64EncodeKeys": null,
        "configuration" : { 
            "parsingMode" : "json", 
            "indexedFileNameExtensions" : ".json, .jpg, .png", 
            "imageAction" : "generateNormalizedImages", 
            "dataToExtract" : "contentAndMetadata" } }
}

Algemene parameters voor alle indexeerfuncties

Parameter Type en toegestane waarden Gebruik
"batchSize" Geheel getal
De standaardwaarde is bronspecifiek (1000 voor Azure SQL Database en Azure Cosmos DB, 10 voor Azure Blob Storage)
Hiermee geeft u het aantal items op dat wordt gelezen uit de gegevensbron en geïndexeerd als één batch om de prestaties te verbeteren.
"maxFailedItems" Geheel getal
De standaardwaarde is 0
Het aantal fouten dat moet worden getolereerd voordat een indexeerfunctieuitvoering als een fout wordt beschouwd. Stel in op -1 als u niet wilt dat fouten het indexeringsproces stoppen. U kunt informatie over mislukte items ophalen met Behulp van Indexeerfunctiestatus ophalen.
"maxFailedItemsPerBatch" Geheel getal
De standaardwaarde is 0
Het aantal fouten dat in elke batch moet worden getolereerd voordat een indexeerfunctie wordt uitgevoerd als een fout. Stel in op -1 als u niet wilt dat fouten het indexeringsproces stoppen.
"base64EncodeKeys" Booleaans
De standaardwaarde is waar
Geldige waarden zijn null, true of false. Als deze optie is ingesteld op onwaar, codeert de indexeerfunctie niet automatisch de waarden van het veld dat is aangewezen als de documentsleutel. Als u deze eigenschap instelt, hoeft u geen toewijzingsfunctie op te geven waarmee base64 sleutelwaarden (zoals streepjes) codeert die anders niet geldig zijn in een documentsleutel.

Blob-configuratieparameters

Verschillende parameters zijn exclusief voor een bepaalde indexeerfunctie, zoals Azure Blob-indexering.

Parameter Typ en toegestane waarden Gebruik
"parsingMode" Tekenreeks
"text"
"delimitedText"
"json"
"jsonArray"
"jsonLines"
Voor Azure-blobs stelt u in op text om de indexeringsprestaties voor tekstbestanden zonder opmaak in blobopslag te verbeteren.
Voor CSV-blobs stelt u in op delimitedText wanneer blobs gewone CSV-bestanden zijn.
Voor JSON-blobs stelt u in op json om gestructureerde inhoud te extraheren of om jsonArray afzonderlijke elementen van een matrix te extraheren als afzonderlijke documenten in Azure AI Search. Gebruik jsonLines om afzonderlijke JSON-entiteiten, gescheiden door een nieuwe regel, te extraheren als afzonderlijke documenten in Azure AI Search.
"excludedFileNameExtensions" Tekenreeks
Lijst met door komma's gescheiden
door de gebruiker gedefinieerd
Voor Azure-blobs negeert u alle bestandstypen in de lijst. U kunt bijvoorbeeld '.png, .png .mp4' uitsluiten om deze bestanden over te slaan tijdens het indexeren.
"indexedFileNameExtensions" Tekenreeks
Lijst met door komma's gescheiden
door de gebruiker gedefinieerd
Voor Azure-blobs selecteert u blobs als de bestandsextensie in de lijst voorkomt. U kunt bijvoorbeeld indexering richten op specifieke toepassingsbestanden '.docx, .pptx, .msg' om specifiek die bestandstypen op te nemen.
"failOnUnsupportedContentType" Booleaans
true
false (standaard)
Voor Azure-blobs stelt u in op false als u wilt doorgaan met indexeren wanneer er een niet-ondersteund inhoudstype wordt aangetroffen en u niet van tevoren alle inhoudstypen (bestandsextensies) kent.
"failOnUnprocessableDocument" Booleaans
true
false (standaard)
Voor Azure-blobs stelt u in op false als u wilt doorgaan met indexeren als het indexeren van een document mislukt.
"indexStorageMetadataOnly
ForOversizedDocuments"
Booleaanse waarde waar
false (standaard)
Voor Azure-blobs stelt u deze eigenschap in op true om nog steeds opslagmetagegevens te indexeren voor blob-inhoud die te groot is om te verwerken. Oversized blobs worden standaard behandeld als fouten. Zie Servicelimieten voor limieten voor blobgrootte.
"delimitedTextHeaders" Tekenreeks
Lijst met door komma's gescheiden
door de gebruiker gedefinieerd
Voor CSV-blobs geeft u een door komma's gescheiden lijst met kolomkoppen op, handig voor het toewijzen van bronvelden aan doelvelden in een index.
"delimitedTextDelimiter" Tekenreeks
één teken
door de gebruiker gedefinieerd
Voor CSV-blobs geeft u het regeleindescheidingsteken op voor CSV-bestanden waarbij elke regel een nieuw document start (bijvoorbeeld "|").
"firstLineContainsHeaders" Booleaans
true (standaard)
onjuist
Voor CSV-blobs geeft aan dat de eerste (niet-lege) regel van elke blob headers bevat.
"documentRoot" Tekenreeks
door de gebruiker gedefinieerd pad
Voor JSON-matrices, op basis van een gestructureerd of semi-gestructureerd document, kunt u met deze eigenschap een pad naar de matrix opgeven.
"dataToExtract" Tekenreeks
"storageMetadata"
"allMetadata"
"contentAndMetadata" (standaard)
Voor Azure-blobs:
Stel in op "storageMetadata" om alleen de standaard-blobeigenschappen en door de gebruiker opgegeven metagegevens te indexeren.
Ingesteld op "allMetadata" om metagegevens te extraheren die worden geleverd door het Azure Blob Storage-subsysteem en de specifieke metagegevens van het inhoudstype (bijvoorbeeld metagegevens die uniek zijn voor alleen .png bestanden) worden geïndexeerd.
Stel in op "contentAndMetadata" om alle metagegevens en tekstinhoud uit elke blob te extraheren.

Voor afbeeldingsanalyse in AI-verrijking, wanneer "imageAction" is ingesteld op een andere waarde dan "none", vertelt de "dataToExtract" instelling de indexeerfunctie welke gegevens moeten worden geëxtraheerd uit afbeeldingsinhoud. Is van toepassing op ingesloten afbeeldingsinhoud in een .PDF of andere toepassing, of afbeeldingsbestanden zoals .jpg en .png, in Azure-blobs.
"imageAction" Tekenreeks
"none"
"generateNormalizedImages"
"generateNormalizedImagePerPage"
Voor Azure-blobs stelt u in op"none" om ingesloten afbeeldingen of afbeeldingsbestanden in de gegevensset te negeren. Dit is de standaardinstelling.

Voor afbeeldingsanalyse in AI-verrijking stelt u in op"generateNormalizedImages" om tekst uit afbeeldingen te extraheren (bijvoorbeeld het woord 'stop' van een verkeersstopteken) en in te sluiten als onderdeel van het inhoudsveld. Tijdens de afbeeldingsanalyse maakt de indexeerfunctie een matrix met genormaliseerde afbeeldingen als onderdeel van het kraken van documenten en wordt de gegenereerde informatie in het inhoudsveld ingesloten. Deze actie vereist dat "dataToExtract" is ingesteld op "contentAndMetadata". Een genormaliseerde afbeelding verwijst naar extra verwerking, wat resulteert in uniforme afbeeldingsuitvoer, met een uniforme grootte en gedraaid om een consistente weergave te bevorderen wanneer u afbeeldingen opneemt in visuele zoekresultaten (bijvoorbeeld foto's van dezelfde grootte in een grafiekbesturingselement zoals te zien is in de JFK-demo). Deze informatie wordt gegenereerd voor elke afbeelding wanneer u deze optie gebruikt.

Als u instelt op "generateNormalizedImagePerPage", worden PDF-bestanden anders behandeld in plaats van ingesloten afbeeldingen te extraheren, wordt elke pagina weergegeven als een afbeelding en dienovereenkomstig genormaliseerd. Niet-PDF-bestandstypen worden hetzelfde behandeld als als was "generateNormalizedImages" ingesteld.

Als u de "imageAction" configuratie instelt op een andere waarde dan "none" , moet er ook een vaardighedenset aan die indexeerfunctie worden gekoppeld.
"normalizedImageMaxWidth"
"normalizedImageMaxHeight"
Een geheel getal tussen 50-10000 De maximale breedte of hoogte (in pixels) respectievelijk voor genormaliseerde afbeeldingen die worden gegenereerd wanneer een "imageAction" is ingesteld. De standaardwaarde is 2000.

De standaardwaarde van 2000 pixels voor de maximale breedte en hoogte van genormaliseerde afbeeldingen is gebaseerd op de maximale grootten die worden ondersteund door de OCR-vaardigheid en de vaardigheid afbeeldingsanalyse. De OCR-vaardigheid ondersteunt een maximale breedte en hoogte van 4200 voor niet-Engelse talen en 10000 voor Engels. Als u de maximumlimieten verhoogt, kan de verwerking van grotere afbeeldingen mislukken, afhankelijk van de definitie van uw vaardighedenset en de taal van de documenten.
"allowSkillsetToReadFileData" Booleaans
true
false (standaard)
Als u de "allowSkillsetToReadFileData" parameter instelt op true , wordt een pad /document/file_data gemaakt dat een object is dat de oorspronkelijke bestandsgegevens vertegenwoordigt die zijn gedownload uit uw blobgegevensbron. Hiermee kunt u de oorspronkelijke bestandsgegevens doorgeven aan een aangepaste vaardigheid voor verwerking binnen de verrijkingspijplijn of aan de vaardigheid Documentextractie. Het gegenereerde object wordt als volgt gedefinieerd: { "$type": "file", "data": "BASE64 encoded string of the file" }

Als u de "allowSkillsetToReadFileData" parameter true instelt op, moet er een vaardighedenset worden gekoppeld aan die indexeerfunctie, dat de "parsingMode" parameter is ingesteld op "default", "text" of "json"en dat de "dataToExtract" parameter is ingesteld op "contentAndMetadata" of "allMetadata".
"pdfTextRotationAlgorithm" Tekenreeks
"none" (standaard)
"detectAngles"
Als u de "pdfTextRotationAlgorithm" parameter instelt op "detectAngles" , kunt u betere en beter leesbare tekstextractie produceren uit PDF-bestanden die tekst hebben gedraaid. Houd er rekening mee dat er een kleine invloed kan zijn op de snelheid van de prestaties wanneer deze parameter wordt gebruikt. Deze parameter is alleen van toepassing op PDF-bestanden en alleen op PDF-bestanden met ingesloten tekst. Als de gedraaide tekst wordt weergegeven in een ingesloten afbeelding in het PDF-bestand, is deze parameter niet van toepassing.

Als u de "pdfTextRotationAlgorithm" parameter instelt op "detectAngles" , moet de "parsingMode" parameter worden ingesteld op "default".

Configuratieparameters voor Azure Cosmos DB

De volgende parameters zijn specifiek voor Cosmos DB-indexeerfuncties.

Parameter Typ en toegestane waarden Gebruik
"assumeOrderByHighWaterMarkColumn" Booleaans Voor Cosmos DB-indexeerfuncties met SQL API stelt u deze parameter in om een hint te geven aan Cosmos DB dat de query die wordt gebruikt om documenten voor indexering te retourneren, in feite is geordend op de _ts kolom. Als u deze parameter instelt, krijgt u betere resultaten voor incrementele indexeringsscenario's.

Azure SQL configuratieparameters

De volgende parameters zijn specifiek voor Azure SQL Database.

Parameter Typ en toegestane waarden Gebruik
"queryTimeout" Tekenreeks
"uu:mm:ss"
"00:05:00"
Stel deze parameter in om de standaardwaarde van 5 minuten te overschrijven.
"convertHighWaterMarkToRowVersion" Booleaans Stel deze parameter in op 'true' om het gegevenstype rowversion te gebruiken voor de kolom met hoge watermarkeringen. Wanneer deze eigenschap is ingesteld op true, trekt de indexeerfunctie er een af van de rowversion-waarde voordat de indexeerfunctie wordt uitgevoerd. Dit gebeurt omdat weergaven met een-op-veel-joins rijen met dubbele rowversion-waarden kunnen hebben. Als u er een aftrekken, zorgt u ervoor dat de indexeerfunctiequery deze rijen niet mist.
"disableOrderByHighWaterMarkColumn" Booleaans Stel deze parameter in op 'true' als u het ORDER BY-gedrag wilt uitschakelen in de query die wordt gebruikt voor wijzigingsdetectie. Als u het detectiebeleid voor hoogwatertekens gebruikt, gebruikt de indexeerfunctie WHERE- en ORDER BY-componenten om bij te houden welke rijen moeten worden geïndexeerd (WHERE [High Water Mark Column] > [Current High Water Mark Value] ORDER BY [High Water Mark Column]). Met deze parameter wordt het order by-gedrag uitgeschakeld. Indexeren wordt sneller voltooid, maar het nadeel is dat als de indexeerfunctie om welke reden dan ook wordt onderbroken, de volledige indexeertaak moet worden herhaald.

fieldMappings

Maak deze wanneer de bron-doelveldnamen of -typen niet overeenkomen of wanneer u een functie wilt opgeven. Veldtoewijzingen zijn niet hoofdlettergevoelig. Zie Veldtoewijzingen definiëren.

Kenmerk Beschrijving
sourceFieldName Vereist. Naam van de bronkolom.
targetFieldName Vereist. Naam van het bijbehorende veld in de zoekindex.
mappingFunction Optioneel. Hiermee wordt verwerking toegevoegd aan bronwaarden op weg naar het zoekprogramma. Een willekeurige tekenreekswaarde kan bijvoorbeeld base64-gecodeerd zijn, zodat deze kan worden gebruikt om een documentsleutelveld te vullen. Een toewijzingsfunctie heeft een naam en parameters. Geldige waarden zijn:

base64Encode
base64Decode
extractTokenAtPosition
jsonArrayToStringCollection
urlEncode
urlDecode

outputFieldMappings

Hiermee geeft u vaardigheidsuitvoer (of knooppunten in een verrijkingsstructuur) op naar velden in een zoekindex.

  "outputFieldMappings" : [
        {
          "sourceFieldName" : "/document/organizations", 
          "targetFieldName" : "organizations"
        },
        {
          "sourceFieldName" : "/document/pages/*/keyPhrases/*", 
          "targetFieldName" : "keyphrases"
        },
        {
            "sourceFieldName": "/document/languageCode",
            "targetFieldName": "language",
            "mappingFunction": null
        }      
   ],

encryptionKey

Hiermee configureert u een verbinding met Azure Key Vault voor aanvullende door de klant beheerde versleutelingssleutels (CMK). Versleuteling met door de klant beheerde sleutels is niet beschikbaar voor gratis services. Voor factureerbare services is deze alleen beschikbaar voor zoekservices die zijn gemaakt op of na 01-01-2019.

Een verbinding met de sleutelkluis moet worden geverifieerd. U kunt hiervoor 'accessCredentials' of een beheerde identiteit gebruiken.

Beheerde identiteiten kunnen door het systeem of door de gebruiker zijn toegewezen (preview). Als de zoekservice zowel een door het systeem toegewezen beheerde identiteit als een roltoewijzing heeft die leestoegang tot de sleutelkluis verleent, kunt u zowel 'identiteit' als 'accessCredentials' weglaten en wordt de aanvraag geverifieerd met behulp van de door het systeem beheerde identiteit. Als de zoekservice een door de gebruiker toegewezen identiteit en roltoewijzing heeft, stelt u de eigenschap 'identiteit' in op de resource-id van die identiteit.

Kenmerk Beschrijving
keyVaultKeyName Vereist. Naam van de Azure Key Vault-sleutel die wordt gebruikt voor versleuteling.
keyVaultKeyVersion Vereist. Versie van de Azure Key Vault-sleutel.
keyVaultUri Vereist. URI van Azure Key Vault (ook wel DNS-naam genoemd) die de sleutel levert. Een voorbeeld van een URI kan zijn https://my-keyvault-name.vault.azure.net
accessCredentials Weglaten als u een beheerde identiteit gebruikt. Anders bevatten applicationId de eigenschappen van accessCredentials (een Azure Active Directory-toepassings-id met toegangsmachtigingen voor uw opgegeven Azure Key Vault) en applicationSecret (de verificatiesleutel van de opgegeven Azure AD toepassing).
identity Optioneel, tenzij u een door de gebruiker toegewezen beheerde identiteit gebruikt voor de zoekserviceverbinding met Azure Key Vault. De indeling is "/subscriptions/[subscription ID]/resourceGroups/[resource group name]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[managed identity name]".

Zie ook