Eseguire query sui dati in un indice di Ricerca di intelligenza artificiale di Azure

Completato

La progettazione degli indici e quella delle query sono strettamente correlate. Dopo aver compilato l'indice, è possibile eseguire le query. È fondamentale comprendere che lo schema dell'indice determina le query a cui è possibile rispondere.

Le query di Ricerca di intelligenza artificiale di Azure possono essere inviate come richiesta API HTTP o REST, con la risposta restituita come JSON. Nelle query è possibile specificare quali campi cercare e restituire, come modellare i risultati della ricerca e come filtrare o ordinare i risultati. Una query che non specifica il campo per la ricerca verrà eseguita su tutti i campi ricercabili all'interno dell'indice.

Ricerca di intelligenza artificiale di Azure supporta due tipi di sintassi: Lucene semplice e completa. La sintassi semplice copre tutti gli scenari di query comuni, mentre la sintassi Lucene completa è utile per scenari avanzati.

Richieste di query semplici

Una richiesta di query è un elenco di parole (termini di ricerca) e di operatori di query (semplici o completi) di ciò che si vuole vedere restituito in un set di risultati. Di seguito verranno esaminati i componenti che costituiscono una query di ricerca. Considerare il semplice esempio di ricerca seguente:

coffee (-"busy" + "wifi")

Questa query sta cercando di trovare contenuto sul caffè, escludendo "occupato" e includendo "wifi".

Suddividendo la query in componenti, sono costituiti da termini di ricerca (coffee), più due frasi verbatim, "busy" e operatori , e "wifi"(-, +e ( )). I termini di ricerca possono trovare la corrispondenza nell'indice di ricerca in qualsiasi ordine o posizione all'interno del contenuto. Per le due frasi verrà trovata solo una corrispondenza esatta, quindi se si specifica wi-fi non verrà trovata una corrispondenza. Infine, una query può contenere svariati operatori. In questo esempio l'operatore - indica al motore di ricerca che queste frasi NON devono essere incluse nei risultati. Le parentesi raggruppano i termini e ne impostano la precedenza.

Per impostazione predefinita, il motore di ricerca troverà corrispondenze per qualsiasi termine nella query. Un contenuto che contiene solo coffee sarebbe una corrispondenza. In questo esempio se si usa -"busy", i risultati di ricerca includeranno tutti i contenuti che non contengono la stringa esatta "occupato".

La sintassi di query semplice in Ricerca di intelligenza artificiale di Azure esclude alcune delle funzionalità più complesse della sintassi di query Lucene completa ed è la sintassi di ricerca predefinita per le query.

Per altre informazioni sulla sintassi di query, vedere la documentazione.