Blobs en bestanden zonder opmaak indexeren in Azure AI Search

Van toepassing op: Blob-indexeerfuncties, bestandsindexeerfuncties

Wanneer u een indexeerfunctie gebruikt om doorzoekbare blobtekst of bestandsinhoud te extraheren voor zoekopdrachten in volledige tekst, kunt u een parseermodus toewijzen om betere indexeringsresultaten te verkrijgen. Standaard parseert de indexeerfunctie de eigenschap van content een blob als één stuk tekst. Als alle blobs en bestanden echter tekst zonder opmaak bevatten in dezelfde codering, kunt u de indexeringsprestaties aanzienlijk verbeteren met behulp van de text parseringsmodus.

Aanbevelingen voor text parseren zijn een van de volgende kenmerken:

  • Bestandstype is .txt
  • Bestanden zijn van elk type, maar de inhoud zelf is tekst (bijvoorbeeld de broncode van het programma, HTML, XML, enzovoort). Voor bestanden in een opmaaktaal worden de syntaxistekens weergegeven als statische tekst.

Denk eraan dat alle indexeerfuncties serialiseren naar JSON. Standaard wordt de inhoud van het hele tekstbestand geïndexeerd binnen één groot veld als "content": "<file-contents>". Nieuwe regel- en retourinstructies worden ingesloten in het inhoudsveld en uitgedrukt als \r\n\.

Als u een verfijnder of gedetailleerd resultaat wilt en als het bestandstype compatibel is, kunt u de volgende oplossingen overwegen:

Een alternatieve derde optie voor het splitsen van inhoud in meerdere onderdelen vereist geavanceerde functies in de vorm van AI-verrijking. Er wordt een analyse toegevoegd waarmee segmenten van het bestand worden geïdentificeerd en toegewezen aan verschillende zoekvelden. Mogelijk vindt u een volledige of gedeeltelijke oplossing via ingebouwde vaardigheden zoals entiteitsherkenning of trefwoordextractie, maar een meer waarschijnlijke oplossing is een aangepast leermodel dat uw inhoud begrijpt, verpakt in een aangepaste vaardigheid.

Indexering van tekst zonder opmaak instellen

Als u blobs met tekst zonder opmaak wilt indexeren, maakt of werkt u een indexeerfunctiedefinitie bij met de parsingMode configuratie-eigenschap ingesteld text op een aanvraag voor indexeerfunctie maken:

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

{
  ... other parts of indexer definition
  "parameters" : { "configuration" : { "parsingMode" : "text" } }
}

Standaard wordt ervan uitgegaan dat de UTF-8 codering wordt gebruikt. Als u een andere codering wilt opgeven, gebruikt u de encoding configuratie-eigenschap:

{
  ... other parts of indexer definition
  "parameters" : { "configuration" : { "parsingMode" : "text", "encoding" : "windows-1252" } }
}

Aanvraagvoorbeeld

Parseringsmodi worden opgegeven in de definitie van de indexeerfunctie.

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

{
  "name" : "my-plaintext-indexer",
  "dataSourceName" : "my-blob-datasource",
  "targetIndexName" : "my-target-index",
  "parameters" : { "configuration" : { "parsingMode" : "delimitedText", "delimitedTextHeaders" : "id,datePublished,tags" } }
}

Volgende stappen