Compartilhar via


Indexar blobs e arquivos de texto sem formatação na Pesquisa de IA do Azure

Aplica-se a: Indexadores de blobs, Indexares de arquivos

Ao usar um indexador para extrair conteúdo de arquivo ou texto de blob pesquisável 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 content de um blob como uma parte única de texto. No entanto, se todos os seus blobs e arquivos contiverem texto sem formatação na mesma codificação, você poderá melhorar significativamente o desempenho de indexação usando o modo de análise text.

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

  • O tipo de arquivo é .txt
  • Os arquivos são de qualquer tipo, mas o próprio conteúdo é 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 serão passados 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 em um campo grande como "content": "<file-contents>". Nova linha e instruções de retorno novas são inseridas no campo de conteúdo e expressas como \r\n\.

Se você desejar 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 a quebra de 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 campos de pesquisa diferentes. 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 aprendizado personalizado que entenda seu conteúdo, encapsulado 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 propriedade de configuração parsingMode definida como text em uma solicitação Criar indexador:

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

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

Por padrão, a codificação UTF-8 será assumida. Para especificar uma codificação diferente, use a propriedade de configuração encoding. A lista de codificações com suporte está na coluna de suporte do .NET 5 e posterior.

{
  ... other parts of indexer definition
  "parameters" : { "configuration" : { "parsingMode" : "text", "encoding" : "iso-8859-1" } }
}

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=2024-07-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óximas etapas