Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Nota
Azure AI Search è disponibile tramite il portale di Azure, le API REST e Azure SDK. È inoltre alla base di Foundry IQ, il livello di conoscenza gestito che trasforma il contenuto aziendale in knowledge base riutilizzabili e con riconoscimento delle autorizzazioni per gli agenti nel portale di Microsoft Foundry.
In questa guida introduttiva si usa la procedura guidata Importa dati nel portale di Azure per iniziare a usare integrated vectorization. La procedura guidata suddivide il contenuto e chiama un modello di embedding per vettorizzare i blocchi durante l'indicizzazione e l'esecuzione di query.
Questa guida introduttiva usa pdf basati su testo e immagini semplici dal repository azure-search-sample-data. Tuttavia, è possibile usare file diversi e completare comunque questa guida introduttiva.
Suggerimento
Hai documenti ricchi di immagini? Consulta Quickstart: Ricerca multimodale nel portale di Azure per estrarre, archiviare e cercare immagini insieme al testo.
Prerequisiti
Un account Azure con una sottoscrizione attiva. Creare gratuitamente un account.
Un servizio Azure AI Search. Questa configurazione rapida richiede il livello Basic o superiore per il supporto delle identità gestite.
Fonte di dati supportata.
Modello di incorporamento supportato.
Familiarità con la procedura guidata. Vedere Importa guidata dati nel portale di Azure.
Origini dati supportate
La procedura guidata supporta diverse origini dati Azure. Tuttavia, questa guida introduttiva illustra solo le origini dati che funzionano con interi file, descritti nella tabella seguente.
| Origine dati | Descrizione |
|---|---|
| Archiviazione BLOB di Azure | Questa origine dati funziona con BLOB e tabelle. È necessario usare un account standard per le prestazioni (utilizzo generico v2). I livelli di accesso possono essere ad accesso frequente, raro o di lunga durata. |
| Azure Data Lake Storage (ADLS) Gen2 | Si tratta di un account Archiviazione di Azure con uno spazio dei nomi gerarchico abilitato. Per verificare di avere Data Lake Storage, controllare la scheda Properties nella pagina Overview. |
| Microsoft OneLake | Questa origine dati si connette ai file e ai collegamenti di OneLake. |
Modelli di incorporamento supportati
Il portale supporta i modelli di incorporamento seguenti per la vettorializzazione integrata. Le istruzioni di distribuzione vengono fornite in una sezione successiva.
| Fornitore | Modelli supportati |
|---|---|
| Account multiservizio Azure AI1 | Per testo e immagini: Azure Vision multimodale |
| Progetto del hub Microsoft Foundry | Per il testo:
|
| Progetto Microsoft Foundry | Per il testo:
|
| risorsa Azure OpenAI3, 4 | Per il testo:
|
1 Ai fini della fatturazione, è necessario collegare l'account multiservizio all'insieme di competenze di Azure AI Search. La procedura guidata richiede che il servizio di ricerca e l'account multiservizio si trovino nella stessa area supportata per la competenza Incorporamenti multimodali di Visione di Azure (anteprima).
2 La procedura guidata supporta solo le distribuzioni di API serverless per questo modello. È possibile usare il interfaccia della riga di comando di Azure per effettuare il provisioning della distribuzione serverless (anteprima).
3 L'endpoint Azure della risorsa OpenAI deve avere un sottodominio custom, ad esempio https://my-unique-name.openai.azure.com. Se la risorsa è stata creata nel portale di Azure, questo sottodominio viene generato automaticamente durante l'installazione delle risorse.
4 risorse Azure OpenAI (con accesso ai modelli di incorporamento) create nel portale Microsoft Foundry non sono supportate. È necessario creare una risorsa OpenAI Azure nel portale di Azure.
Per le indicazioni più recenti sul ciclo di vita del modello, comprese le deprecazioni, consulta Ritiro e deprecazione dei modelli.
Requisiti dell'endpoint pubblico
Tutte le risorse precedenti devono disporre dell'accesso pubblico abilitato in modo che la procedura guidata possa accedervi. In caso contrario, la procedura guidata non ha esito positivo. Dopo l'esecuzione della procedura guidata, è possibile abilitare i firewall e gli endpoint privati nei componenti di integrazione per la sicurezza. Per altre informazioni, vedere Proteggere le connessioni nella procedura guidata di importazione.
Se gli endpoint privati sono già presenti e non è possibile disabilitarli, l'opzione alternativa consiste nell'eseguire il rispettivo flusso end-to-end da uno script o programma in una macchina virtuale. La macchina virtuale deve trovarsi nella stessa rete virtuale dell'endpoint privato. Ecco un esempio di codice Python per la vettorializzazione integrata. Lo stesso repository GitHub include esempi in altri linguaggi di programmazione.
Configurare l'accesso
Prima di iniziare, assicurarsi di disporre delle autorizzazioni per accedere al contenuto e alle operazioni. Questo avvio rapido usa Microsoft Entra ID per l'autenticazione e l'accesso basato su ruoli per l'autorizzazione. Per assegnare i ruoli, è necessario essere proprietario o amministratore accesso utenti . Se i ruoli non sono fattibili, usare invece l'autenticazione basata su chiave .
Configurare i ruoli obbligatori e i ruoli condizionali identificati in questa sezione.
Ruoli obbligatori
Azure AI Search fornisce la pipeline di ricerca vettoriale. Configurare l'accesso per se stessi e il servizio di ricerca per leggere i dati, eseguire la pipeline e interagire con altre risorse Azure.
Nel servizio Azure AI Search:
Assegnare i ruoli seguenti a se stessi.
Collaboratore servizio di ricerca
Contributore di dati dell'indice di ricerca
Lettore di dati dell'indice di ricerca
Ruoli condizionali
Le schede seguenti illustrano tutte le risorse compatibili con la procedura guidata per la ricerca vettoriale. Selezionare solo le schede che si applicano all'origine dati scelta e al modello di embedding.
Archiviazione BLOB di Azure e Azure Data Lake Storage Gen2 richiedono al servizio di ricerca l'accesso in lettura ai contenitori di archiviazione.
Nell'account Archiviazione di Azure:
- Assegnare Storage Blob Data Reader all'identità gestita del tuo servizio di ricerca.
Preparare i dati di esempio
In questa sezione si preparano i dati di esempio per l'origine dati scelta.
Nel portale Azure, passare all'account di archiviazione di Azure.
Nel riquadro sinistro selezionareContenitori>.
Creare un contenitore e quindi caricare i documenti PDF del piano sanitario usati per questo avvio rapido.
(Facoltativo) Sincronizzare le eliminazioni nel contenitore con le eliminazioni nell'indice di ricerca. Per configurare l'indicizzatore per il rilevamento dell'eliminazione:
Abilitare l'eliminazione temporanea nell'account di archiviazione. Se si usa l'eliminazione temporanea nativa, il passaggio successivo non è obbligatorio.
Aggiungere metadati personalizzati che un indicizzatore può analizzare per determinare quali BLOB sono contrassegnati per l'eliminazione. Assegnare alla proprietà personalizzata un nome descrittivo. Ad esempio, denominare la proprietà "IsDeleted" e impostarla su false. Ripeti questo passaggio per ogni BLOB nel contenitore. Quando si vuole eliminare il BLOB, modificare la proprietà su true. Per ulteriori informazioni, vedere Rilevamento delle modifiche ed eliminazioni durante l'indicizzazione da Archiviazione di Azure.
Preparare il modello di incorporamento
Nota
Se si usa Azure Visione, ignorare questo passaggio. Gli incorporamenti multimodali sono incorporati nell'account multiservizio e non richiedono la distribuzione del modello.
La procedura guidata supporta diversi modelli di incorporamento da Azure OpenAI e dal catalogo dei modelli Microsoft Foundry. Per distribuire i modelli necessari per il modello di embedding, vedere Distribuire i modelli di Microsoft Foundry nel portale Foundry.
Avviare la procedura guidata
Passare al servizio di ricerca nel portale Azure.
Nella pagina Panoramica selezionare Importa dati.
Selezionare l'origine dati: Archiviazione BLOB di Azure, ADLS Gen2 o OneLake.
Selezionare RAG.
Eseguire la procedura guidata
La procedura guidata consente di eseguire diversi passaggi di configurazione. Questa sezione illustra ogni passaggio in sequenza.
Connettersi ai dati
In questo passaggio, colleghi Azure AI Search al origine dati scelto per l'inserimento e l'indicizzazione del contenuto.
Nella pagina Connetti ai dati selezionare la sottoscrizione Azure.
Selezionare l'account di archiviazione e il contenitore che forniscono i dati di esempio.
Se è stata abilitata l'eliminazione temporanea e sono stati aggiunti metadati personalizzati in Preparare i dati di esempio, selezionare la casella di controllo Abilita rilevamento eliminazioni.
Nelle esecuzioni successive dell'indicizzazione, l'indice di ricerca viene aggiornato per rimuovere i documenti di ricerca collegati ai BLOB eliminati temporaneamente in Archiviazione di Azure.
I BLOB supportano l'eliminazione temporanea di BLOB nativi o l'eliminazione temporanea usando metadati personalizzati.
Se i blob sono stati configurati per l'eliminazione temporanea, specificare la coppia nome-valore della proprietà dei metadati. Ti consigliamo IsDeleted. Se IsDeleted è impostato su true in un BLOB, l'indicizzatore elimina il documento di ricerca corrispondente nella successiva esecuzione dell'indicizzatore.
La procedura guidata non controlla in Archiviazione di Azure l’esistenza di impostazioni valide e non genera un errore se i requisiti non sono soddisfatti. Il rilevamento dell'eliminazione non funziona e l'indice di ricerca tenderà a raccogliere documenti orfani nel corso del tempo.
Selezionare la casella di controllo Autentica con identità gestita . Lasciare il tipo di identità assegnato dal sistema.
Selezionare Avanti.
Vettorizzare il testo
Durante questo passaggio, la procedura guidata usa il modello di incorporamento scelto per vettorizzare i dati suddivisi in blocchi. La suddivisione in blocchi è incorporata e non configurabile. Le impostazioni valide sono:
"textSplitMode": "pages",
"maximumPageLength": 2000,
"pageOverlapLength": 500,
"maximumPagesToTake": 0, #unlimited
"unit": "characters"
Nella pagina Vectorize your text selezionare Azure OpenAI per il tipo.
Selezionare la sottoscrizione Azure.
Selezionare la risorsa Azure OpenAI e quindi selezionare il modello distribuito in Prepare embedding model.
Per il tipo di autenticazione selezionare Identità assegnata dal sistema.
Selezionare la casella di controllo che riconosce gli effetti di fatturazione dell'uso di queste risorse.
Selezionare Avanti.
Vettorizzare e arricchire le immagini
I PDF del piano sanitario includono un logo aziendale, ma per il resto, non ci sono immagini. È possibile ignorare questo passaggio se si usano i documenti di esempio.
Tuttavia, se il contenuto include immagini utili, è possibile applicare l'intelligenza artificiale in uno o entrambi i modi seguenti:
Usare un modello di incorporamento di immagini supportato dal catalogo dei modelli di Microsoft Foundry o dall'API embedding di Azure Vision( tramite un account multiservizio) per vettorizzare le immagini.
Usare il riconoscimento ottico dei caratteri (OCR) per estrarre testo dalle immagini. Questa opzione richiama la competenza OCR.
Nella pagina Vectorize and enrich your images (Vettorizza e arricchire le immagini ) selezionare la casella di controllo Vectorize images (Vettorizza immagini ).
Per il tipo, selezionare il provider di modelli: Microsoft Foundry o Azure Vision in Foundry Tools.
Selezionare la sottoscrizione Azure, la risorsa e la distribuzione del modello di embedding (se applicabile).
Per il tipo di autenticazione, selezionare Identità assegnata dal sistema se non si usa un progetto basato su hub. In caso contrario, lasciarlo come chiave API.
Selezionare la casella di controllo che riconosce gli effetti di fatturazione dell'uso di queste risorse.
Selezionare Avanti.
Aggiungere una classificazione semantica
Nella pagina Impostazioni avanzate è possibile aggiungere facoltativamente una classificazione semantica per rerank dei risultati alla fine dell'esecuzione della query.On the Advanced settings page, you can optionally add semantic ranking to rerank results at the end of query execution. La riclassificazione promuove le corrispondenze più rilevantemente semantiche ai primi posti.
Eseguire il mapping di nuovi campi
Nella pagina Impostazioni avanzate è possibile aggiungere facoltativamente nuovi campi, presupponendo che l'origine dati fornisca metadati o campi che non vengono prelevati al primo passaggio. Per impostazione predefinita, la procedura guidata genera i campi descritti nella tabella seguente.
| Campo | Si applica a | Descrizione |
|---|---|---|
| chunk_id | Vettori di testo e immagine | Campo stringa generato. Ricercabile, recuperabile e ordinabile. Questa è la chiave del documento per l'indice. |
| parent_id | Vettori di testo | Campo stringa generato. Recuperabile e filtrabile. Identifica il documento padre da cui ha origine il blocco. |
| blocco | Vettori di testo e immagine | Campo di tipo stringa. Versione leggibile dall'uomo del blocco di dati. Ricercabile e recuperabile, ma non filtrabile, non con possibilità di creare faccette, o non ordinabile. |
| Titolo | Vettori di testo e immagine | Campo di tipo stringa. Titolo del documento di facile comprensione o titolo della pagina o numero di pagina. Ricercabile e recuperabile, ma non filtrabile, non con possibilità di creare faccette, o non ordinabile. |
| text_vector | Vettori di testo | Collection(Edm.single). Rappresentazione vettoriale del blocco. Ricercabile e recuperabile, ma non filtrabile, non con possibilità di creare faccette, o non ordinabile. |
Non è possibile modificare i campi generati o i relativi attributi, ma è possibile aggiungere nuovi campi se l'origine dati li fornisce. Ad esempio, Archiviazione BLOB di Azure fornisce una raccolta di campi di metadati.
Per aggiungere campi allo schema dell'indice:
Nella pagina Impostazioni avanzate , in Campi indice selezionare Anteprima e modifica.
Selezionare Aggiungi campo.
Selezionare un campo di origine nei campi disponibili, immettere un nome di campo per l'indice e accettare (o eseguire l'override) del tipo di dati predefinito.
Se si vuole ripristinare lo schema nella versione originale, selezionare Reimposta.
Punti chiave su questo passaggio:
Lo schema dell'indice fornisce campi vettoriali e non vettoriali per dati segmentati.
La modalità di analisi dei documenti crea blocchi (un documento di ricerca per blocco).
Pianificare l'indicizzazione
Per le origini dati in cui i dati sottostanti sono volatili, è possibile pianificare l'indicizzazione per acquisire le modifiche a intervalli specifici o date e ore specifiche.
Per pianificare l'indicizzazione:
Nella pagina Impostazioni avanzate , in Pianificazione dell'indicizzazione, specificare una pianificazione di esecuzione per l'indicizzatore. Si consiglia Once per questa guida introduttiva.
Selezionare Avanti.
Completare la procedura guidata
Il passaggio finale consiste nel esaminare la configurazione e creare gli oggetti necessari per la ricerca vettoriale. Se necessario, tornare alle pagine precedenti della procedura guidata per modificare la configurazione.
Per completare la procedura guidata:
Nella pagina Rivedi e crea specificare un prefisso per gli oggetti creati dalla procedura guidata. Un prefisso comune consente di rimanere organizzati.
Selezionare Crea.
Oggetti creati dalla procedura guidata
Al termine della configurazione, la procedura guidata crea gli oggetti seguenti:
| Oggetto | Descrizione |
|---|---|
| Origine dati | Rappresenta una connessione all'origine dati scelta. |
| Indice | Contiene campi vettoriali, vettorizzatori, profili vettoriali e algoritmi vettoriali. Non è possibile modificare l'indice predefinito durante il flusso di lavoro della procedura guidata. Gli indici sono conformi all'API REST di anteprima più recente in modo da poter usare le funzionalità di anteprima. |
| Set di competenze | Contiene le competenze e la configurazione seguenti:
|
| Indicizzatore | Guida la pipeline di indicizzazione, con mapping dei campi e mapping dei campi di output (se applicabile). |
Suggerimento
Gli oggetti creati dalla procedura guidata hanno definizioni JSON configurabili. Per visualizzare o modificare queste definizioni, selezionare Gestione ricerche nel riquadro sinistro, in cui è possibile visualizzare gli indici, gli indicizzatori, le origini dati e i set di competenze.
Controllare i risultati
Search Explorer accetta stringhe di testo come input e quindi vettorizza il testo per l'esecuzione di query vettoriali.
Per interrogare l'indice vettoriale:
Nel portale di Azure passare a Search Management>Indexes e quindi selezionare l'indice.
Selezionare Opzioni query e quindi selezionare Nascondi valori vettoriali nei risultati della ricerca. Questo passaggio rende i risultati più leggibili.
Dal menu Visualizza selezionare Visualizzazione JSON in modo da poter immettere testo per la query vettoriale nel parametro di
textquery vettoriale.La query predefinita è una ricerca vuota (
"*"), ma include parametri per la restituzione delle corrispondenze di numero. Si tratta di una query ibrida che esegue query di testo e vettoriali in parallelo. Include anche la classificazione semantica e specifica i campi da restituire nei risultati tramite l'istruzioneselect.{ "search": "*", "count": true, "vectorQueries": [ { "kind": "text", "text": "*", "fields": "text_vector,image_vector" } ], "queryType": "semantic", "semanticConfiguration": "my-demo-semantic-configuration", "captions": "extractive", "answers": "extractive|count-3", "queryLanguage": "en-us", "select": "chunk_id,text_parent_id,chunk,title,image_parent_id" }Sostituisci entrambi i segnaposto asterisco (
*) con una domanda correlata ai piani sanitari, ad esempioWhich plan has the lowest deductible?.{ "search": "Which plan has the lowest deductible?", "count": true, "vectorQueries": [ { "kind": "text", "text": "Which plan has the lowest deductible?", "fields": "text_vector,image_vector" } ], "queryType": "semantic", "semanticConfiguration": "my-demo-semantic-configuration", "captions": "extractive", "answers": "extractive|count-3", "queryLanguage": "en-us", "select": "chunk_id,text_parent_id,chunk,title" }Per eseguire la query, selezionare Cerca.
Ogni documento è un blocco del PDF originale. Il
titlecampo mostra il pdf da cui proviene il blocco. Ognunochunkè lungo. È possibile copiare e incollarne uno in un editor di testo per leggere l'intero valore.Per visualizzare tutti i blocchi di un documento specifico, aggiungere un filtro per il
title_parent_idcampo per un PDF specifico. È possibile controllare la scheda Campi dell'indice per verificare che il campo sia filtrabile.{ "select": "chunk_id,text_parent_id,chunk,title", "filter": "text_parent_id eq 'aHR0cHM6Ly9oZWlkaXN0c3RvcmFnZWRlbW9lYXN0dXMuYmxvYi5jb3JlLndpbmRvd3MubmV0L2hlYWx0aC1wbGFuLXBkZnMvTm9ydGh3aW5kX1N0YW5kYXJkX0JlbmVmaXRzX0RldGFpbHMucGRm0'", "count": true, "vectorQueries": [ { "kind": "text", "text": "*", "k": 5, "fields": "text_vector" } ] }
Pulire le risorse
Quando si lavora nella propria sottoscrizione, è consigliabile completare un progetto rimuovendo le risorse non più necessarie. Le risorse che rimangono in esecuzione hanno un costo.
Nel portale di Azure selezionare Tutte le risorse o Gruppi di risorse dal riquadro sinistro per trovare e gestire le risorse. È possibile eliminare le risorse singolarmente o eliminare il gruppo di risorse per rimuovere tutte le risorse contemporaneamente.
Passaggio successivo
In questa guida introduttiva è stata presentata la procedura guidata Importa dati , che crea tutti gli oggetti necessari per la vettorializzazione integrata. Per esplorare in dettaglio ogni passaggio, vedere Impostare la vettorizzazione integrata in Azure AI Search.