Indexování blobů a souborů CSV pomocí režimu zpracování textu s oddělovači

Poznámka:

Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.

Platí pro: Indexery úložiště objektů blob, indexery souborů (Preview)

Ve službě Azure AI Vyhledávač podporují indexery pro Azure Blob Storage a Azure Files režim analýzy delimitedText pro soubory CSV, který zpracovává každý řádek v CSV jako samostatný vyhledávací dokument. Například, vzhledem k následujícímu textu s oddělovači, režim analýzy delimitedText by měl za následek dva dokumenty v indexu vyhledávání.

id, datePublished, tags
1, 2016-01-12, "azure-search,azure,cloud"
2, 2016-07-07, "cloud,mobile"

Pokud pole uvnitř souboru CSV obsahuje oddělovač, měl by být zabalen do uvozovek. Pokud pole obsahuje uvozovky, musí být uvozené pomocí dvojitých uvozovek ("").

id, datePublished, tags
1, 2020-01-05, "tags,with,""quoted text"""

delimitedText Bez režimu analýzy by celý obsah souboru CSV byl považován za jeden vyhledávací dokument.

Při vytváření více vyhledávacích dokumentů z jediného blobu je důležité zkontrolovat indexování blobů k vytvoření více vyhledávacích dokumentů pro pochopení fungování přiřazování klíčů k dokumentům. Indexer objektů blob dokáže najít nebo generovat hodnoty, které jednoznačně definují každý nový dokument. Konkrétně může vytvořit tranzitivní AzureSearch_DocumentKey , když se objekt blob analyzuje do menších částí, kde se hodnota pak použije jako klíč vyhledávacího dokumentu v indexu.

Nastavení indexování CSV

Pokud chcete indexovat objekty blob CSV, vytvořte nebo aktualizujte definici indexeru pomocí delimitedText režimu analýzy v požadavku Create Indexer .

Podporuje se pouze kódování UTF-8.

{
  "name" : "my-csv-indexer",
  ... other indexer properties
  "parameters" : { "configuration" : { "parsingMode" : "delimitedText", "firstLineContainsHeaders" : true } }
}

firstLineContainsHeaders označuje, že první řádek (neprázdný) každého objektu blob obsahuje záhlaví. Pokud objekty blob neobsahují počáteční řádek záhlaví, měly by se hlavičky zadat v konfiguraci indexeru:

"parameters" : { "configuration" : { "parsingMode" : "delimitedText", "delimitedTextHeaders" : "id,datePublished,tags" } } 

Znak oddělovače můžete přizpůsobit pomocí delimitedTextDelimiter konfiguračního nastavení. Například:

"parameters" : { "configuration" : { "parsingMode" : "delimitedText", "delimitedTextDelimiter" : "|" } }

Poznámka:

V režimu analýzy textu s oddělovači Azure AI Vyhledávač předpokládá, že všechny objekty typu blob jsou CSV. Pokud máte ve stejném zdroji dat kombinaci objektů blob CSV a jiných objektů blob než CSV, zvažte použití filtrů přípon souborů k řízení importovaných souborů v jednotlivých spuštěních indexeru.

Žádejte příklady

Dáváme to všechno dohromady, tady jsou kompletní příklady datových nákladů.

Zdroj dat:

POST https://[service name].search.windows.net/datasources?api-version=2026-04-01
Content-Type: application/json
api-key: [admin key]
{
    "name" : "my-blob-datasource",
    "type" : "azureblob",
    "credentials" : { "connectionString" : "DefaultEndpointsProtocol=https;AccountName=<account name>;AccountKey=<account key>;" },
    "container" : { "name" : "my-container", "query" : "<optional, my-folder>" }
}   

Indexer

POST https://[service name].search.windows.net/indexers?api-version=2026-04-01
Content-Type: application/json
api-key: [admin key]
{
  "name" : "my-csv-indexer",
  "dataSourceName" : "my-blob-datasource",
  "targetIndexName" : "my-target-index",
  "parameters" : { "configuration" : { "parsingMode" : "delimitedText", "delimitedTextHeaders" : "id,datePublished,tags" } }
}