Pesquisar um índice

Concluído

Depois de criar e preencher um índice, você pode consultá-lo para pesquisar por informações no conteúdo do documento indexado. Embora você possa recuperar entradas de índice com base na correspondência de valor de campo simples, a maioria das soluções de pesquisa usa a semântica de pesquisa de texto completo para consultar um índice.

A pesquisa de texto completo descreve soluções de pesquisa que analisam o conteúdo do documento baseado em texto para encontrar termos de consulta. As consultas de pesquisa de texto completo na Pesquisa de IA do Azure baseiam-se na sintaxe de consulta Lucene, que fornece um conjunto avançado de operações de consulta para pesquisar, filtrar e classificar dados em índices. A Pesquisa de IA do Azure dá suporte a duas variantes da sintaxe Lucene:

  • Simple – uma sintaxe intuitiva que facilita a execução de pesquisas básicas que fazem a correspondência de termos de consulta literais enviados por um usuário.
  • Full – uma sintaxe estendida que dá suporte a filtragem complexa, expressões regulares e outras consultas mais sofisticadas.

Os aplicativos cliente enviam consultas à Pesquisa de IA do Azure especificando uma expressão de pesquisa junto com outros parâmetros que determinam como a expressão é avaliada e os resultados retornados. Alguns parâmetros comuns enviados com uma consulta incluem:

  • search – uma expressão de pesquisa que inclui os termos a serem encontrados.
  • queryType – a sintaxe Lucene a ser avaliada (simple ou full).
  • searchFields – os campos de índice a serem pesquisados.
  • select – os campos a serem incluídos nos resultados.
  • searchMode – critérios para inclusão de resultados com base em vários termos de pesquisa. Por exemplo, suponha que você pesquise por hotel confortável. Um valor de searchMode de Any retorna documentos que contenham "confortável", "hotel" ou ambos, enquanto um valor de searchMode de All restringe os resultados a documentos que contenham tanto "confortável" quanto "hotel".

O processamento de consulta consiste em quatro estágios:

  1. Análise de consulta. A expressão de pesquisa é avaliada e reconstruída como uma árvore de subconsultas apropriadas. As subconsultas podem incluir consultas de termo (localizando palavras individuais específicas na expressão de pesquisa, por exemplo, hotel), consultas de frase (localizando frases de vários termos especificadas entre aspas na expressão de pesquisa, por exemplo, "estacionamento gratuito") e consultas de prefixo (localizando termos com um prefixo especificado, por exemplo, ar*, que corresponderia a vias aéreas, ar-condicionado e aeroporto).
  2. Análise lexical – os termos de consulta são analisados e refinados com base em regras linguísticas. Por exemplo, o texto é convertido em letras minúsculas e palavras irrelevantes não essenciais (como "o", "um", "é" e assim por diante) são removidas. Em seguida, as palavras são convertidas em sua forma raiz (por exemplo, "confortável" pode ser simplificada para "conforto") e as palavras compostas são divididas em seus termos constituintes.
  3. Recuperação de documentos – os termos de consulta são correspondidos aos termos indexados, e o conjunto de documentos correspondentes é identificado.
  4. Pontuação – uma pontuação de relevância é atribuída a cada resultado com base em um cálculo de TF/IDF (frequência de termo/frequência de documento inversa).

Observação

Para obter mais informações sobre como consultar um índice e detalhes sobre sintaxe simples e completa, confira tipos de consulta e composição na Pesquisa de IA do Azure na documentação da Pesquisa de IA do Azure.