Consulta de datos en un índice de Búsqueda de Azure AI

Completado

El diseño del índice y el de la consulta están estrechamente vinculados. Después de compilar el índice, podemos realizar consultas. Un componente crucial que hay que entender es que el esquema del índice determina a qué consultas se puede responder.

Las consultas de Búsqueda de Azure AI se pueden enviar como una solicitud de API de REST o HTTP, y la respuesta se devuelve como JSON. Las consultas pueden especificar qué campos se van a buscar y a devolver, qué forma tendrán los resultados de la búsqueda y cómo se deben filtrar u ordenar estos resultados. Una consulta que no especifique el campo que se quiere buscar se ejecutará en todos los campos de búsqueda del índice.

Búsqueda de Azure AI admite dos tipos de sintaxis: simple y Lucene completa. La sintaxis simple cubre todos los escenarios de consulta comunes, mientras que la versión completa de Lucene es útil para escenarios avanzados.

Solicitudes de consulta simples

Una solicitud de consulta es una lista de palabras (términos de búsqueda) y operadores de consulta (simple o completa) de lo que quiere obtener en un conjunto de resultados. Vamos a buscar los componentes que conforman una consulta de búsqueda. Pongamos este ejemplo de búsqueda simple:

coffee (-"busy" + "wifi")

Esta consulta está intentando encontrar contenido sobre café, quitando "ocupado" e incluyendo "wifi".

Al dividir la consulta en componentes, consta de términos de búsqueda (coffee), más dos frases textuales, "busy" y "wifi", y operadores (-, + y ( )). Los términos de búsqueda pueden coincidir en el índice de búsqueda en cualquier orden o ubicación del contenido. Las dos frases solo coincidirán con lo que se especifique exactamente, por lo que wi-fi no sería una coincidencia. Por último, una consulta puede contener varios operadores. En este ejemplo, el operador - indica al motor de búsqueda que estas frases NO deben incluirse en los resultados. Los paréntesis agrupan los términos y establecen su prioridad.

De forma predeterminada, el motor de búsqueda coincidirá con cualquiera de los términos de la consulta. Un contenido que incluya solo coffee sería una coincidencia. En este ejemplo, el uso de -"busy" daría lugar a que los resultados de la búsqueda incluyeran todo el contenido sin la cadena exacta "ocupado".

La sintaxis de consulta simple de Búsqueda de Azure AI excluye algunas de las características más complejas de la sintaxis de consulta completa de Lucene y es la sintaxis de búsqueda predeterminada para las consultas.

Puede obtener más información sobre la sintaxis de consulta en la documentación.