Classificazione semantica in Azure AI Search

In Azure AI Search, semantic ranker è una funzionalità che migliora in modo prevedibile la pertinenza della ricerca usando i modelli di comprensione del linguaggio di Microsoft per reranking dei risultati della ricerca. Il classificatore semantico è integrato all'interno del recupero agentico. Questo articolo è un'introduzione di alto livello per comprendere i comportamenti e i vantaggi del ranker semantico.

Il ranker semantico è una funzionalità Premium fatturata in base all'utilizzo, ma è possibile usarla gratuitamente in base ai limiti del servizio per il livello gratuito. È consigliabile usare questo articolo per informazioni di base, ma se si preferisce iniziare, seguire questa procedura.

Che cos'è la classificazione semantica?

Il classificatore semantico è una raccolta di funzionalità lato query che migliorano la qualità di un risultato di ricerca con classificazione BM25 iniziale o RRF per le query basate su testo, la parte di testo delle query vettoriali e le query ibride. La classificazione semantica estende la pipeline di esecuzione delle query in tre modi:

  • In primo luogo, aggiunge sempre una classificazione secondaria su un set di risultati iniziali classificato utilizzando BM25 o Reciprocal Rank Fusion (RRF). Questa classificazione secondaria usa modelli multilingue e di Deep Learning adattati da Microsoft Bing per promuovere i risultati più rilevanti in modo semantico.

  • In secondo luogo, restituisce didascalie e facoltativamente estrae le risposte, che si possono visualizzare su una pagina di ricerca per migliorare l'esperienza di ricerca dell'utente.

  • In terzo luogo, se si abilita la riscrittura della query, si espande una stringa di query iniziale in più stringhe di query semanticamente simili.

La classificazione secondaria e le "risposte" si applicano alla risposta della query. La riscrittura delle query fa parte della richiesta di query.

Ecco le funzionalità del reranker semantico.

Capacità Descrizione
Classifica L2 Usa il contesto o il significato semantico di una query per calcolare un nuovo punteggio di pertinenza sui risultati pre-classificati.
Didascalie semantiche ed evidenziazioni Estrae frasi verbatim da campi che riepilogano meglio il contenuto, con evidenziazioni sui passaggi chiave per una facile lettura. Le didascalie che riepilogano un risultato sono utili quando i singoli campi di contenuto sono troppo densi per la pagina dei risultati della ricerca. Il testo evidenziato eleva i termini e le frasi più rilevanti in modo che gli utenti possano determinare rapidamente il motivo per cui una corrispondenza è stata considerata rilevante.
Risposte semantiche Una sottostruttura facoltativa e aggiuntiva restituita da una query semantica. Fornisce una risposta diretta a una richiesta simile a una domanda. Richiede che un documento abbia testo con le caratteristiche di una risposta.
Riscrittura della query Utilizzando query testuali o parti testuali di query vettoriali, il ranker semantico crea fino a 10 varianti della query, correggendo eventuali errori di digitazione o ortografia o riformulando una query usando sinonimi generati. La query riscritta viene eseguita nel motore di ricerca. I risultati vengono valutati utilizzando il punteggio BM25 o RRF e quindi rivalutati da un classificatore semantico.

Come funziona il classificatore semantico

Il ranker semantico accetta una query e i risultati, quindi li invia ai modelli di comprensione del linguaggio ospitati da Microsoft. Analizza le corrispondenze migliori.

La figura seguente illustra il concetto. Si consideri il termine "capitale". Ha significati diversi a seconda che il contesto sia finanziario, legale, geografico o grammaticale. Tramite la comprensione del linguaggio, il ranker semantico rileva il contesto e promuove i risultati che soddisfano la finalità della query.

Illustrazione della rappresentazione vettoriale per il contesto.

La classificazione semantica usa molte risorse e tempo. Per completare l'elaborazione all'interno della latenza prevista di un'operazione di query, il sistema consolida e riduce gli input al ranker semantico. Questo approccio consente di completare il passaggio di reranking il più rapidamente possibile.

La classificazione semantica prevede tre passaggi:

  1. Raccogliere e riepilogare gli input
  2. Assegnare un punteggio ai risultati usando il ranker semantico
  3. Produzione dei risultati ricalcolati, didascalie e risposte

Come il sistema raccoglie e riepiloga gli input

Nella classificazione semantica, il sottosistema di query passa i risultati della ricerca come input ai modelli di riepilogo e classificazione. Poiché i modelli di classificazione hanno vincoli di dimensione di input e richiedono un utilizzo intensivo dell'elaborazione, i risultati della ricerca devono essere ridimensionati e strutturati (riepilogati) per una gestione efficiente.

  1. Il ranker semantico inizia con un risultato classificato BM25 da una query di testo o da un risultato classificato RRF da una query vettoriale o ibrida. L'esercizio di reranking usa solo il testo. Anche se i risultati includono più di 50 risultati, solo i primi 50 risultati avanzano nella classificazione semantica. In genere, la classificazione semantica usa campi informativi e descrittivi.

  2. Per ogni documento nel risultato della ricerca, il modello di riepilogo accetta fino a 2.000 token, dove un token è di circa 10 caratteri. Il modello assembla gli input dai campi "title", "keyword" e "content" elencati nella configurazione semantica.

  3. Il sistema taglia stringhe eccessivamente lunghe per garantire che la lunghezza complessiva soddisfi i requisiti di input del passaggio di riepilogo. Questo esercizio di taglio è il motivo per cui è importante aggiungere campi alla configurazione semantica in ordine di priorità. Se sono presenti documenti di grandi dimensioni con campi con testo elevato, il sistema ignora qualsiasi elemento dopo il limite massimo.

    Campo semantico Limite di token
    "title" 128 token
    "parole chiave 128 token
    contenuto token rimanenti
  4. L'output di riepilogo è una stringa di riepilogo per ogni documento, composta dalle informazioni più rilevanti di ogni campo. Il sistema invia stringhe di riepilogo al ranker per l'assegnazione dei punteggi e ai modelli di comprensione della lettura automatica per sottotitoli e risposte.

    A partire da novembre 2024, la lunghezza massima di ogni stringa di riepilogo generata passata al ranker semantico è di 2.048 token. In precedenza, erano 256 token.

Come vengono assegnati punteggi ai risultati

Il sistema assegna punteggi ai risultati in base alla didascalia e a qualsiasi altro contenuto della stringa di riepilogo che riempie la lunghezza di 2.048 token.

  1. Il sistema valuta le didascalie per pertinenza concettuale e semantica, in relazione alla query specificata.

  2. Il sistema assegna un @search.rerankerScore a ogni documento in base alla pertinenza semantica del documento per la query specificata. I punteggi vanno da 4 a 0 (alto a basso), dove un punteggio più alto indica una rilevanza maggiore.

    Punteggio Significato
    4.0 Il documento è estremamente rilevante e risponde completamente alla domanda, anche se il passaggio potrebbe contenere testo aggiuntivo non correlato alla domanda.
    3.0 Il documento è rilevante ma non contiene dettagli che lo renderebbero completi.
    2.0 Il documento è piuttosto rilevante; risponde alla domanda parzialmente o solo ad alcuni aspetti della domanda.
    1.0 Il documento è correlato alla domanda e risponde a una piccola parte di esso.
    0.0 Il documento è irrilevante.
  3. Il sistema elenca le corrispondenze in ordine decrescente in base al punteggio e le include nel payload della risposta di query. Il payload include risposte, testo semplice, didascalie evidenziate e tutti i campi contrassegnati come recuperabili o specificati in una clausola SELECT.

Nota

Per una determinata query, le distribuzioni di @search.rerankerScore possono presentare lievi variazioni a causa di condizioni a livello di infrastruttura. Anche gli aggiornamenti del modello di classificazione possono influire sulla distribuzione. Per questi motivi, se si scrive codice personalizzato per soglie minime o si imposta la proprietà threshold per le query vettoriali e ibride, non rendere i limiti troppo granulari.

Risultati del ranker semantico

Da ogni stringa di riepilogo, i modelli di comprensione della lettura automatica trovano passaggi che sono i più rappresentativi.

Gli output sono:

  • Didascalia semantica per il documento. Ogni didascalia è disponibile in una versione di testo normale e in una versione di evidenziazione ed è spesso inferiore a 200 parole per ogni documento.

  • Una risposta semantica facoltativa, presupponendo che il answers parametro sia stato specificato, la query sia stata posta come domanda e che venga trovato un passaggio nella stringa lunga che fornisce una risposta probabile alla domanda.

Le didascalie e le risposte sono sempre testo letterale dall'indice. In questo flusso di lavoro non esiste alcun modello di intelligenza artificiale generativa che crea o compone nuovi contenuti.

Funzionalità e limitazioni semantiche

Che cosa può fare il ranker semantico:

  • Alzare di livello le corrispondenze che sono semanticamente più vicine alla finalità della query originale.

  • Trova le stringhe da usare come didascalie e risposte. La risposta restituisce sottotitoli e risposte, che possono essere visualizzate in una pagina dei risultati della ricerca.

Il classificatore semantico non può eseguire di nuovo la query sull'intero corpus per trovare risultati semanticamente rilevanti. La classificazione semantica classifica il set di risultati esistente, costituito dai primi 50 risultati come segnati dall'algoritmo di classificazione predefinito. Inoltre, il ranker semantico non può creare nuove informazioni o stringhe. I modelli linguistici estraggono sottotitoli e risposte verbatim dal contenuto, quindi se i risultati non includono testo simile a una risposta, non ne produrranno uno.

Anche se la classificazione semantica non è utile in ogni scenario, alcuni contenuti possono trarre vantaggio in modo significativo dalle sue funzionalità. I modelli linguistici in semantic ranker funzionano meglio su contenuto ricercabile ricco di informazioni e strutturato come prosa. Una knowledge base, la documentazione online o i documenti che contengono contenuto descrittivo visualizzano i maggiori vantaggi derivanti dalle funzionalità di classificazione semantica.

La tecnologia sottostante proviene da Bing e Microsoft Research e integrata nell'infrastruttura Azure AI Search come funzionalità aggiuntiva. Per altre informazioni sugli investimenti di ricerca e intelligenza artificiale che supportano il ranker semantico, vedere Come l'intelligenza artificiale di Bing sta supportando Azure AI Search (blog sulla ricerca Microsoft).

Il video seguente offre una panoramica delle funzionalità.

Come il ranker semantico usa le mappe sinonimiche

Se si abilita il supporto per le mappe sinonimiche associate a un campo nell'indice di ricerca e si include tale campo nella configurazione del ranker semantico, il ranker semantico applica automaticamente i sinonimi configurati durante il processo di reranking.

Disponibilità e prezzi

Il ranker semantico è disponibile nelle aree selezionate. Può essere usato come funzionalità autonoma o come componente predefinito del recupero agentico. Ogni funzionalità viene fatturata in modo indipendente.

Il classificatore semantico offre un piano gratuito (di default) con una quota mensile di richieste gratuita e un piano standard con pagamento a consumo dopo l'esaurimento della quota gratuita. Per altre informazioni, consultare Abilitare o disabilitare la fatturazione del classificatore semantico.

Gli addebiti per il ranker semantico si verificano quando le richieste di query includono queryType=semantic e la stringa di ricerca non è vuota , ad esempio search=pet friendly hotels in New York. Se la stringa di ricerca è vuota (search=*), non viene addebitato alcun addebito, anche se queryType è impostato su semantica.

Come iniziare

  1. Controllare la disponibilità a livello di area.

  2. (Facoltativo) Passare al piano di fatturazione standard per l'utilizzo oltre la quota mensile gratuita.

  3. Configurare il ranker semantico in un indice di ricerca.

  4. Configurare le query per restituire didascalie semantiche ed evidenziazioni.

  5. (Facoltativo) Restituisce risposte semantiche.