Guida introduttiva: Vettorializzare testo e immagini tramite il portale di Azure
Questo argomento di avvio rapido illustra come iniziare a usare la vettorizzazione integrata tramite la procedura guidata di importazione e vettorizzazione dei dati nel portale di Azure. La procedura guidata suddivide il contenuto e chiama un modello di incorporamento per vettorizzare il contenuto durante l'indicizzazione e per le query.
Prerequisiti
Una sottoscrizione di Azure. Crearne una gratuitamente.
Un servizio di ricerca di intelligenza artificiale di Azure nella stessa area dell'intelligenza artificiale di Azure. È consigliabile usare il livello Basic o superiore.
Origine dati supportata.
Modello di incorporamento supportato.
Familiarità con la procedura guidata. Per informazioni dettagliate, vedere Importazione guidata dati nella portale di Azure.
Origini dati supportate
La procedura guidata Importa e vettorizza dati supporta un'ampia gamma di origini dati di Azure, ma questa guida introduttiva illustra solo le origini dati che funzionano con interi file:
Archiviazione BLOB di Azure per BLOB e tabelle. L’archivio di Azure deve essere un account con prestazioni standard (utilizzo generico v2). I livelli di accesso possono essere ad accesso frequente, sporadico e sporadico.
Azure Data Lake Storage (ADLS) Gen2 (un account Archiviazione di Azure con uno spazio dei nomi gerarchico abilitato). È possibile verificare se si dispone di Data Lake Storage selezionando la scheda Proprietà nella pagina Panoramica.
Modelli di incorporamento supportati
Usare un modello di incorporamento in una piattaforma di intelligenza artificiale di Azure nella stessa area di Ricerca di intelligenza artificiale di Azure. Le Istruzioni di distribuzione sono disponibili in questo articolo.
Provider | Modelli supportati |
---|---|
Servizio OpenAI di Azure | text-embedding-ada-002, text-embedding-3-large, or text-embedding-3-small. |
Catalogo dei modelli di Studio AI della piattaforma Azure | Modelli di incorporamento di Azure, Cohere e Facebook. |
Account multiservizio di Servizi di intelligenza artificiale di Azure | Visione di Azure AI multimodale per la vettorializzazione di immagini e testo. Visione di Azure AI è disponibile nelle aree selezionate. Controllare la documentazione per un elenco aggiornato. A seconda del modo in cui si collega la risorsa multiservizio, potrebbe essere necessario che l'account si trovi nella stessa area di Ricerca di intelligenza artificiale di Azure. |
Se si usa il servizio Azure OpenAI, l'endpoint deve avere un sottodominio personalizzato associato. Un sottodominio personalizzato è un endpoint che include un nome univoco, ad esempio https://hereismyuniquename.cognitiveservices.azure.com
. Se il servizio è stato creato tramite il portale di Azure, questo sottodominio viene generato automaticamente come parte della configurazione del servizio. Assicurarsi che il servizio includa un sottodominio personalizzato prima di usarlo con l'integrazione di Ricerca di intelligenza artificiale di Azure.
Le risorse del servizio OpenAI di Azure (con accesso ai modelli di incorporamento) create in AI Studio non sono supportate. Solo le risorse del servizio OpenAI di Azure create nel portale di Azure sono compatibili con l'integrazione delle competenze di incorporamento di Azure OpenAI.
Requisiti dell'endpoint pubblico
Ai fini di questa guida introduttiva, tutte le risorse precedenti devono avere l'accesso pubblico abilitato in modo che i nodi del portale possano accedervi. In caso contrario, la procedura guidata ha esito negativo. 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 nelle procedure guidate di importazione.
Se gli endpoint privati sono già presenti e non possono essere disabilitati,è possibile eseguire in alternativa il rispettivo flusso end-to-end da uno script o programma in una macchina virtuale. La macchina virtuale deve appartenere alla stessa rete virtuale dell’endpoint privato. Di seguito è riportato un esempio di codice Python per la vettorizzazione integrata. Nello stesso repository GitHub sono disponibili esempi in altri linguaggi di programmazione.
Autorizzazioni
È possibile usare l'autenticazione della chiave e l'accesso completo stringa di connessione o l'ID Di Microsoft Entra con assegnazioni di ruolo. È consigliabile assegnare ruoli per le connessioni del servizio di ricerca ad altre risorse.
In Azure AI Search, abilitare i ruoli.
Configurare il servizio di ricerca per usare un'identità gestita.
Nella piattaforma di origine dati e nel provider di modelli di incorporamento, creare assegnazioni di ruolo che consentono al servizio di ricerca di accedere a dati e modelli. Preparare i dati di esempio fornisce istruzioni per la configurazione dei ruoli per ogni origine dati supportata.
Un servizio di ricerca gratuito supporta connessioni basate su ruoli a Ricerca intelligenza artificiale di Azure, ma non supporta le identità gestite nelle connessioni in uscita a Archiviazione di Azure o Visione artificiale di Azure. Questo livello di supporto significa che è necessario usare l'autenticazione basata su chiave per le connessioni tra un servizio di ricerca gratuito ad altri servizi di Azure.
Per connessioni più sicure:
- Usare il livello Basic o superiore.
- Configurare un'identità gestita e usare i ruoli per l'accesso autorizzato.
Nota
Se non è possibile proseguire con la procedura guidata perché le opzioni non sono disponibili (ad esempio, non è possibile selezionare un'origine dati o un modello di incorporamento), rivedere le assegnazioni di ruolo. I messaggi di errore indicano che i modelli o le distribuzioni non esistono, quando in realtà la causa reale è che il servizio di ricerca non dispone dell'autorizzazione per accedervi.
Verificare lo spazio
Se si inizia con il servizio gratuito, sono limitati a tre indici, origini dati, set di competenze e indicizzatori. I limiti di base sono 15. Assicurarsi di avere spazio per gli elementi aggiuntivi prima di iniziare, Questo avvio rapido crea uno di ogni oggetto.
Preparare i dati di esempio
Questa sezione illustra il contenuto che funziona per questa guida introduttiva.
Accedere al portale di Azure con l'account Azure e passare all'account di archiviazione di Azure.
Nel riquadro sinistro selezionare Archiviazione dati e quindi Contenitori.
Creare un nuovo contenitore e caricare i documenti PDF del piano di integrità usati per questo avvio rapido.
Nel riquadro sinistro, in Controllo di accesso, assegnare il ruolo di lettore di dati BLOB di archiviazione all'identità del servizio di ricerca. In alternativa, ottenere una stringa di connessione all'account di archiviazione dalla pagina Chiavi di accesso.
Facoltativamente, sincronizzare le eliminazioni nel contenitore con eliminazioni nell'indice di ricerca. I prossimi passaggi consentono di configurare l'indicizzatore per il rilevamento dell'eliminazione:
Abilitare l'eliminazione temporanea nell'account di archiviazione.
Se si usa l'eliminazione temporanea nativa, non sono necessari altri passaggi in Archiviazione di Azure.
In caso contrario, aggiungere metadati personalizzati che un indicizzatore possa analizzare per determinare quali BLOB sono contrassegnati per l'eliminazione. Assegnare alla proprietà personalizzata un nome descrittivo. Ad esempio, è possibile denominare la proprietà "IsDeleted" impostata su false. Eseguire questa operazione per ogni BLOB nel contenitore. In seguito, quando si vorrà eliminare il BLOB, impostare la proprietà su true. Per altre informazioni, vedere Rilevamento delle modifiche e dell'eliminazione durante l'indicizzazione da Archiviazione di Azure
Configurare i modelli di incorporamento
La procedura guidata può usare i modelli di incorporamento distribuiti da Azure OpenAI, Visione di Azure AI o dal catalogo dei modelli in Azure AI Studio.
La procedura guidata supporta text-embedding-ada-002, text-embedding-3-large e text-embedding-3-small. Internamente, la procedura guidata chiama la competenza AzureOpenAIEmbedding per connettersi ad Azure OpenAI.
Accedere al portale di Azure con l'account Azure e passare alla risorsa Azure OpenAI.
Impostare le autorizzazioni:
Nel menu a sinistra selezionare Controllo di accesso.
Selezionare Aggiungi e quindi selezionare Aggiungi assegnazione di ruolo.
In Ruoli della funzione processi selezionare Utente OpenAI di Servizi cognitivi e quindi selezionare Avanti.
In Membri selezionare Identità gestita e quindi selezionare Membri.
Filtrare in base alla sottoscrizione e al tipo di risorsa (servizi di ricerca) e quindi selezionare l'identità gestita del servizio di ricerca.
Seleziona Rivedi + assegna.
Nella pagina Panoramica selezionare Fare clic qui per visualizzare gli endpoint o Fare clic qui per gestire le chiavi se è necessario copiare un endpoint o una chiave API. È possibile incollare questi valori nella procedura guidata se si usa una risorsa OpenAI di Azure con l'autenticazione basata su chiave.
In Gestione risorse e distribuzioni di modelli, selezionare Gestisci distribuzioni per aprire Azure AI Studio.
Copiare il nome della distribuzione di
text-embedding-ada-002
o di un altro modello di incorporamento supportato. Se non si ha un modello di incorporamento, distribuirne uno ora.
Avviare la procedura guidata
Accedere al portale di Azure con l'account Azure e andare al servizio Azure AI Search.
Nella pagina Panoramica selezionare Importa e vettorizza dati.
Connettersi ai dati
Il passaggio successivo consiste nel connettersi a un'origine dati da usare per l'indice di ricerca.
In Connetti ai dati selezionare Archiviazione BLOB di Azure.
Specificare la sottoscrizione di Azure.
Scegliere l'account di archiviazione e il contenitore che forniscono i dati.
Specificare se si desidera il supporto di rilevamento dell'eliminazione. Nelle esecuzioni successive dell'indicizzazione, l'indice di ricerca viene aggiornato per rimuovere tutti i documenti di ricerca basati su BLOB eliminati temporaneamente in Archiviazione di Azure.
- I BLOB supportano l'eliminazione temporanea di BLOB nativi o l'eliminazione temporanea usando dati personalizzati.
- È necessario aver precedentemente abilitato l'eliminazione temporanea in Archiviazione di Azure e, facoltativamente, aver aggiunto metadati personalizzati che l'indicizzazione possa riconoscere come flag di eliminazione. Per altre informazioni su questi passaggi, vedere Preparare dati di esempio.
- Se i BLOB sono stati configurati per l'eliminazione temporanea usando dati personalizzati, specificare la coppia nome-valore della proprietà dei metadati in questo passaggio. È consigliabile usare "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 verifica la validità delle impostazioni di Archiviazione di Azure né genera un errore se i requisiti non sono soddisfatti. Al contrario, il rilevamento dell'eliminazione non funziona e l'indice di ricerca probabilmente raccoglierà documenti orfani nel corso del tempo.
Specificare se si vuole che il servizio di ricerca connettersi ad Archiviazione di Azure usando l'identità gestita.
- Viene richiesto di scegliere un'identità gestita dal sistema o gestita dall'utente.
- L'identità deve avere un ruolo di lettore di dati BLOB di archiviazione in Archiviazione di Azure.
- Non ignorare questo passaggio, Si verifica un errore di connessione durante l'indicizzazione se la procedura guidata non riesce a connettersi ad Archiviazione di Azure.
Selezionare Avanti.
Vettorizzare il testo
In questo passaggio specificare il modello di incorporamento da usare per vettorializzare i dati 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 Vettorializza il testo, scegliere l'origine del modello di incorporamento:
- OpenAI di Azure
- Catalogo dei modelli di Studio AI della piattaforma Azure
- Una risorsa di Visione di Azure AI esistente nella stessa area di Azure AI Search. Se non è disponibile un account multiservizio di Servizi di Azure AI nella stessa area, questa opzione non è disponibile.
Scegliere la sottoscrizione di Azure.
Effettuare le selezioni in base alla risorsa:
Per Azure OpenAI scegliere una distribuzione esistente di text-embedding-ada-002, text-embedding-3-large o text-embedding-3-small.
Per il catalogo di AI Studio, scegliere una distribuzione esistente di un modello di incorporamento di Azure, Cohere e Facebook.
Per gli incorporamenti multimodali di Visione AI, selezionare l'account.
Per altre informazioni, vedere Configurare i modelli di incorporamento nelle sezioni precedenti di questo articolo.
Specificare se si vuole che il servizio di ricerca esegua l'autenticazione usando una chiave API o un'identità gestita.
- L'identità deve avere un ruolo utente OpenAI di Servizi cognitivi nell'account multiservizi di Azure per intelligenza artificiale.
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 di integrità non includono immagini, quindi è possibile ignorare questo passaggio.
Tuttavia, se si usa contenuto che include immagini, è possibile applicare l'intelligenza artificiale in due modi:
Usare un modello di incorporamento di immagini supportato dal catalogo o scegliere l'API di incorporamento delle immagini incorporato di Visione artificiale di Azure per vettorizzare le immagini.
Usare il riconoscimento ottico dei caratteri (OCR) per riconoscere il testo nelle immagini. Questa opzione richiama la competenza OCR per leggere il testo dalle immagini.
Ricerca di intelligenza artificiale di Azure e la risorsa di Intelligenza artificiale di Azure devono trovarsi nella stessa area.
Nella pagina Vettorializza le immagini specificare il tipo di connessione che deve essere stabilita dalla procedura guidata. Per la vettorizzazione delle immagini, la procedura guidata può connettersi ai modelli di incorporamento in Studio AI della piattaforma Azure o in Visione di Azure AI.
Specificare la sottoscrizione.
Per il catalogo modelli di Studio AI della piattaforma Azure, specificare il progetto e la distribuzione. Per altre informazioni, vedere Configurare i modelli di incorporamento nelle sezioni precedenti di questo articolo.
Facoltativamente, è possibile crackare immagini binarie (ad esempio, file di documenti analizzati) e usare OCR per riconoscere il testo.
Selezionare la casella di controllo che riconosce gli effetti di fatturazione dell'uso di queste risorse.
Selezionare Avanti.
Aggiungi classificazione semantica
Nella pagina Impostazioni avanzate è possibile aggiungere facoltativamente la classificazione semantica per riclassificare i risultati alla fine dell'esecuzione della query. La riclassificazione propone per prime le corrispondenze più rilevanti dal punto di vista semantico.
Eseguire il mapping di nuovi campi
Punti chiave su questo passaggio:
- Lo schema dell'indice fornisce campi vettoriali e non di operatore per i dati in blocchi.
- È possibile aggiungere campi, ma non è possibile eliminare o modificare i campi generati.
- La modalità di analisi dei documenti crea blocchi (un documento di ricerca per blocco).
Nella pagina Impostazioni avanzate è possibile aggiungere facoltativamente nuovi campi. Per impostazione predefinita, la procedura guidata genera i campi seguenti con questi attributi:
Campo | Si applica a | Descrizione |
---|---|---|
chunk_id | Vettori di testo e immagine | Campo stringa generato. Ricercabile, recuperabile, ordinabile. Questa è la chiave del documento per l'indice. |
parent_id | Vettori di testo | Campo stringa generato. Recuperabile, filtrabile. Identifica il documento padre da cui ha origine il blocco. |
blocco | Vettori di testo e immagine | Campo stringa. Versione leggibile del blocco di dati. Ricercabile e recuperabile, ma non filtrabile, facetable o ordinabile. |
title | Vettori di testo e immagine | Campo stringa. Titolo o numero di pagina leggibile del documento o della pagina. Ricercabile e recuperabile, ma non filtrabile, facetable o ordinabile. |
text_vector | Vettori di testo | Collection(Edm.single). Rappresentazione vettoriale del blocco. Ricercabile e recuperabile, ma non filtrabile, facetable o 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.
Seleziona Aggiungi nuovo.
Scegliere un campo di origine dall'elenco dei campi disponibili, specificare un nome di campo per l'indice e accettare il tipo di dati predefinito o eseguire l'override in base alle esigenze.
I campi dei metadati sono ricercabili, ma non recuperabili, filtrabili, visualizzabili o ordinabili.
Selezionare Reimposta se si vuole ripristinare lo schema nella versione originale.
Pianificare l'indicizzazione
Nella pagina Impostazioni avanzate è possibile specificare facoltativamente una pianificazione di esecuzione per l'indicizzatore.
- Al termine, selezionare Avanti con la pagina Impostazioni avanzate .
Completare la procedura guidata
Nella pagina Verifica la configurazione specificare un prefisso per gli oggetti creati dalla procedura guidata. Un prefisso comune consente di rimanere organizzati.
Seleziona Crea.
Al termine della configurazione, la procedura guidata crea gli oggetti seguenti:
Connessione all'origine dati.
Indice con campi vettoriali, vettorizzatori, profili di vettori, algoritmi vettoriali. Non è possibile progettare o modificare l'indice predefinito durante il flusso di lavoro della procedura guidata. Gli indici sono conformi all'API REST 2024-05-01-preview.
Set di competenze con la competenza Dividi testo per la suddivisione in blocchi e una competenza di incorporamento per la vettorializzazione. La competenza di incorporamento è la competenza AzureOpenAIEmbeddingModel per Azure OpenAI o la competenza AML per il catalogo modelli di Studio AI della piattaforma Azure. Il set di competenze include anche la configurazione delle proiezioni di indici che consente di eseguire il mapping dei dati da un documento nell'origine dati ai blocchi corrispondenti in un indice "figlio".
Indicizzatore con mapping dei campi e mapping dei campi di output (se applicabile).
Controllare i risultati
Esplora ricerche accetta stringhe di testo come input e quindi vettorializza il testo per l'esecuzione di query vettoriali.
Nel portale di Azure passare a Gestione ricerca>Indici e quindi selezionare l'indice creato.
Facoltativamente, selezionare Opzioni query e nascondere i valori vettoriali nei risultati della ricerca. Questo passaggio semplifica la lettura dei risultati della ricerca.
Nel menu Visualizza selezionare Visualizzazione JSON in modo che sia possibile immettere testo per la query vettoriale nel parametro della query del vettore
text
.La procedura guidata offre una query predefinita che esegue una query vettoriale sul campo
vector
, restituendo i cinque vicini più prossimi. Se si è scelto di nascondere i valori vettoriali, la query predefinita include un'istruzioneselect
che esclude il campovector
dai risultati della ricerca.{ "select": "chunk_id,parent_id,chunk,title", "vectorQueries": [ { "kind": "text", "text": "*", "k": 5, "fields": "vector" } ] }
Per il valore
text
sostituire l'asterisco (*
) con una domanda correlata ai piani di integrità, ad esempioWhich plan has the lowest deductible?
.Selezionare Cerca per eseguire la query.
Vengono in genere visualizzate cinque corrispondenze. Ogni documento è un blocco del PDF originale. Il campo
title
mostra il file PDF da cui proviene il blocco.Per visualizzare tutti i blocchi di un documento specifico, aggiungere un filtro per il campo
title
per un PDF specifico:{ "select": "chunk_id,parent_id,chunk,title", "filter": "title eq 'Benefit_Options.pdf'", "count": true, "vectorQueries": [ { "kind": "text", "text": "*", "k": 5, "fields": "vector" } ] }
Eseguire la pulizia
Azure AI Search è una risorsa fatturabile. Se non è più necessario, eliminarlo dalla sottoscrizione per evitare addebiti.
Passaggio successivo
Questa guida introduttiva illustra la procedura guidata di importazione e vettorizzazione dei dati che crea tutti gli oggetti necessari per la vettorizzazione integrata. Per esplorare in dettaglio ogni passaggio, provare un esempio di vettorizzazione integrata.