Indexar blobs e arquivos de texto sem formatação no Azure AI Search

Aplica-se a: Indexadores de Blob, Indexadores de arquivo

Ao usar um indexador para extrair texto de blob pesquisável ou conteúdo de arquivo para pesquisa de texto completo, você pode atribuir um modo de análise para obter melhores resultados de indexação. Por padrão, o indexador analisa a propriedade de content um blob como um único pedaço de texto. No entanto, se todos os blobs e arquivos contiverem texto sem formatação na mesma codificação, você poderá melhorar significativamente o desempenho da indexação usando o text modo de análise.

As recomendações para text análise incluem uma das seguintes características:

  • O tipo de ficheiro é .txt
  • Os arquivos são de qualquer tipo, mas o conteúdo em si é texto (por exemplo, código-fonte do programa, HTML, XML e assim por diante). Para arquivos em uma linguagem de marcação, os caracteres de sintaxe vêm como texto estático.

Lembre-se de que todos os indexadores serializam para JSON. Por padrão, o conteúdo de todo o arquivo de texto é indexado dentro de um campo grande como "content": "<file-contents>". Novas instruções de linha e retorno são incorporadas no campo de conteúdo e expressas como \r\n\.

Se você quiser um resultado mais refinado ou granular e se o tipo de arquivo for compatível, considere as seguintes soluções:

Uma terceira opção alternativa para dividir o conteúdo em várias partes requer recursos avançados na forma de enriquecimento de IA. Ele adiciona análise que identifica e atribui partes do arquivo a diferentes campos de pesquisa. Você pode encontrar uma solução completa ou parcial por meio de habilidades internas, como reconhecimento de entidade ou extração de palavras-chave, mas uma solução mais provável pode ser um modelo de aprendizagem personalizado que compreenda seu conteúdo, envolvido em uma habilidade personalizada.

Configurar a indexação de texto sem formatação

Para indexar blobs de texto sem formatação, crie ou atualize uma definição de indexador com a parsingMode propriedade de configuração definida como text em uma solicitação Criar Indexador :

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

Por padrão, a UTF-8 codificação é assumida. Para especificar uma codificação diferente, use a encoding propriedade configuration:

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

Exemplo de solicitação

Os modos de análise são especificados na definição do indexador.

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

Próximos passos