Configurare il classificatore semantico e restituire i sottotitoli nei risultati della ricerca
La classificazione semantica esegue l'iterazione su un set di risultati iniziale, applicando una metodologia di classificazione L2 che promuove i risultati più pertinenti semanticamente all'inizio dello stack. È anche possibile ottenere didascalie semantiche, con evidenziazioni sui termini e sulle frasi più rilevanti e risposte semantiche.
Questo articolo illustra come configurare un indice di ricerca per la riclassificazione semantica.
Prerequisiti
Servizio di ricerca di livello Basic o superiore, soggetto alla disponibilità dell'area.
Classificatore semantico abilitato nel servizio di ricerca.
Indice di ricerca esistente con contenuto in formato RTF. La classificazione semantica si applica ai campi di tipo stringa (non vettoriale) e si adatta meglio ai contenuti informativi o descrittivi.
Scegliere un client
È possibile usare uno degli strumenti e degli SDK seguenti per aggiungere una configurazione semantica:
- Portale di Azure, usando progettazione indici per aggiungere una configurazione semantica.
- Visual Studio Code con il client REST
- Azure SDK per .NET
- Azure SDK per Python
- Azure SDK per Java
- Azure SDK per JavaScript
Aggiungere una configurazione semantica
Una configurazione semantica è una sezione dell'indice che stabilisce gli input dei campi per la classificazione semantica. È possibile aggiungere o aggiornare una configurazione semantica in qualsiasi momento, senza che sia necessario ricompilarla. Se si creano più configurazioni, è possibile specificare un valore predefinito. Durante l'esecuzione di una query, è possibile specificare una configurazione semantica in una richiesta di query o lasciare vuoto il campo per usare il valore predefinito.
La configurazione semantica ha un nome e le proprietà seguenti:
Proprietà | Caratteristiche |
---|---|
Campo Titolo | Una stringa breve, idealmente con meno di 25 parole. Questo campo può essere il titolo di un documento, il nome di un prodotto o un identificatore univoco. Se non si dispone di un campo appropriato, lasciarlo vuoto. |
Campi del contenuto | Frammenti di testo più lunghi redatti in linguaggio naturale, soggetti ai limiti massimi di input dei token nei modelli di Machine Learning. Esempi comuni includono il corpo di un documento, la descrizione di un prodotto o un altro testo in formato libero. |
Campi delle parole chiave | Un elenco di parole chiave, come i tag di un documento, o un termine descrittivo, ad esempio la categoria di un elemento. |
È possibile specificare un solo campo titolo, ma il numero di campi per il contenuto e le parole chiave si possono scegliere. Elencare i campi di contenuto e parole chiave in ordine di priorità, poiché quelli a bassa priorità potrebbero essere eliminati.
In tutte le proprietà di configurazione semantica, i campi assegnati devono essere:
- Attribuiti come
searchable
eretrievable
- Stringhe di tipo
Edm.String
,Collection(Edm.String)
, sottocampi della stringa diEdm.ComplexType
Accedere al portale di Azure e passare a un servizio di ricerca con classificazione semantica abilitata.
In Indici nel riquadro di spostamento a sinistra selezionare un indice.
Selezionare Configurazioni semantiche e quindi Aggiungi configurazione semantica.
Nella pagina Nuova configurazione semantica immettere un nome di configurazione semantica e selezionare i campi da usare nella configurazione semantica. Sono idonei solo i campi stringa ricercabili e recuperabili. Assicurarsi di elencare i campi per il contenuto e le parole chiave in ordine di priorità.
Selezionare Salva per salvare le impostazioni di configurazione.
Selezionare di nuovo Salva nella pagina dell'indice per salvare la configurazione semantica nell'indice.
Eseguire la migrazione dalle versioni di anteprima
Nel caso in cui il codice di classificazione semantica usi le API di anteprima, in questa sezione viene spiegato come eseguire la migrazione alle versioni stabili. È possibile controllare i log delle modifiche per verificare la disponibilità generale:
- 2024-07-01 (REST)
- Log delle modifiche di Azure SDK per .NET (11.5)
- Log delle modifiche di Azure SDK per Python (11.4)
- Log delle modifiche di Azure SDK per Java (11.6)
- Log delle modifiche di Azure SDK per JavaScript (12.0)
queryLanguage per il ranker semantico
A partire dal 14 luglio 2023, il classificatore semantico è indipendente dalla lingua. È infatti in grado di riclassificare i risultati composti da contenuti multilingue, senza alcun pregiudizio nei confronti di una lingua specifica. Nelle versioni di anteprima, la classificazione semantica priva di priorità i risultati che differiscono dalla lingua specificata dall'analizzatore di campo.
Interrompere l'uso queryLanguage
nel codice se lo si usa per la classificazione semantica. La queryLanguage
proprietà è ancora applicabile alle funzionalità come la correzione ortografia, ma non alla classificazione semantica.
searchFields per il ranker semantico
Per l'API REST e tutti i pacchetti SDK destinati alla versione 2021-04-30-Preview
e versioni successive, la proprietà non viene più usata per la searchFields
classificazione semantica.
Usare invece la semanticConfiguration
proprietà (in un indice di ricerca) per determinare quali campi di ricerca vengono usati nella classificazione semantica. Per specificare la definizione delle priorità dei campi, aggiungere un oggetto semanticConfiguration
a in uno schema di indice seguendo le istruzioni riportate in questo articolo.
È possibile mantenere searchFields
nelle richieste di query se si usa questa opzione per limitare la ricerca full-text all'elenco dei campi denominati.
Passaggi successivi
Testare la configurazione semantica eseguendo una query semantica.