Share via


Guida introduttiva: Vettorizzazione integrata (anteprima)

Importante

La procedura guidata Importa e vettorizza dati è disponibile in anteprima pubblica in Condizioni supplementari per l'utilizzo. È destinato all'API REST 2023-10-01-Preview.

Introduzione alla vettorializzazione integrata (anteprima) tramite la procedura guidata Importa e vettorizza dati nella portale di Azure. Questa procedura guidata chiama un modello di incorporamento di testo OpenAI di Azure per vettorizzare il contenuto durante l'indicizzazione e per le query.

In questa versione di anteprima della procedura guidata:

  • I dati di origine sono solo BLOB, usando la modalità di analisi predefinita (un documento di ricerca per BLOB).

  • Lo schema dell'indice non è configurabile. I campi di origine includono content (in blocchi e vettorializzati), metadata_storage_name per titolo e per metadata_storage_path la chiave del documento, rappresentati come parent_id nell'indice.

  • La vettorializzazione è solo Azure OpenAI (text-embedding-ada-002), usando l'algoritmo HNSW (Hierarchical Navigable Small Worlds) con le impostazioni predefinite.

  • La suddivisione in blocchi non è configurabile. Le impostazioni valide sono:

    textSplitMode: "pages",
    maximumPageLength: 2000,
    pageOverlapLength: 500
    

Per altre opzioni di configurazione e origine dati, provare Python o le API REST. Per informazioni dettagliate, vedere l'esempio di vettorializzazione integrata.

  • Una sottoscrizione di Azure. Crearne una gratuitamente.

  • Ricerca di intelligenza artificiale di Azure, in qualsiasi area e in qualsiasi livello. La maggior parte dei servizi esistenti supporta la ricerca vettoriale. Per un piccolo subset di servizi creato prima di gennaio 2019, alla creazione di un indice contenente campi vettoriali non riesce. In questo caso, è necessario creare un nuovo servizio.

  • Endpoint OpenAI di Azure con una distribuzione di text-embedding-ada-002 e una chiave API o autorizzazioni utente OpenAI di Servizi cognitivi per caricare i dati. È possibile scegliere un solo vettore in questa anteprima e il vettore deve essere Azure OpenAI.

  • Archiviazione di Azure account, prestazioni standard (utilizzo generico v2), livelli di accesso frequente, sporadico e ad accesso sporadico.

  • BLOB che forniscono solo contenuto di testo, documenti non strutturati e metadati. In questa anteprima l'origine dati deve essere BLOB di Azure.

  • Autorizzazioni di lettura in Archiviazione di Azure. Un stringa di connessione di archiviazione che include una chiave di accesso consente di accedere in lettura al contenuto di archiviazione. Se invece si usano account di accesso e ruoli di Microsoft Entra, assicurarsi che l'identità gestita del servizio di ricerca abbia Archiviazione autorizzazioni di lettura dati BLOB.

  • Tutti i componenti (endpoint di incorporamento e origine dati) devono disporre dell'accesso pubblico abilitato per consentire ai nodi del portale di accedervi. In caso contrario, la procedura guidata ha esito negativo. Dopo l'esecuzione della procedura guidata, i firewall e gli endpoint privati possono essere abilitati nei diversi componenti di integrazione per la sicurezza. Se gli endpoint privati sono già presenti e non possono essere disabilitati, l'opzione alternativa consiste nell'eseguire il rispettivo flusso end-to-end da uno script o programma da una macchina virtuale all'interno della stessa rete virtuale dell'endpoint privato. Di seguito è riportato un esempio di codice Python per la vettorializzazione integrata. Nello stesso repository GitHub sono esempi in altri linguaggi di programmazione.

Verificare lo spazio

Molti clienti iniziano con il servizio gratuito. Il livello gratuito è limitato a tre indici, tre origini dati, tre set di competenze e tre indicizzatori. Assicurarsi di avere spazio per gli elementi aggiuntivi prima di iniziare, Questa guida introduttiva crea uno di ogni oggetto.

Verificare la classificazione semantica

Questa procedura guidata supporta la classificazione semantica, ma solo sul livello Basic e versioni successive e solo se la classificazione semantica è già abilitata nel servizio di ricerca. Se si usa un livello fatturabile, verificare se la classificazione semantica è abilitata.

Screenshot della pagina di configurazione del ranker semantico.

Preparare i dati di esempio

Questa sezione illustra i dati che funzionano per questa guida introduttiva.

  1. Accedere al portale di Azure con l'account Azure e passare all'account Archiviazione di Azure.

  2. Nel riquadro di spostamento, in Data Archiviazione selezionare Contenitori.

  3. Creare un nuovo contenitore e quindi caricare i documenti PDF del piano di integrità usati per questa guida introduttiva.

  4. Prima di lasciare l'account Archiviazione di Azure nell'portale di Azure, concedere Archiviazione autorizzazioni di lettura dati BLOB nel contenitore, presupponendo che si desideri l'accesso basato sui ruoli. In alternativa, ottenere un stringa di connessione all'account di archiviazione dalla pagina Chiavi di accesso.

Ottenere i dettagli della connessione per Azure OpenAI

La procedura guidata richiede un endpoint, una distribuzione di text-embedding-ada-002 e una chiave API o un'identità gestita del servizio di ricerca con autorizzazioni utente OpenAI di Servizi cognitivi.

  1. Accedere al portale di Azure con l'account Azure e passare alla risorsa OpenAI di Azure.

  2. In Chiavi e gestione copiare l'endpoint.

  3. Nella stessa pagina copiare una chiave o selezionare Controllo di accesso per assegnare i membri del ruolo all'identità del servizio di ricerca.

  4. In Distribuzioni di modelli selezionare Gestisci distribuzioni per aprire Azure AI Studio. Copiare il nome della distribuzione di text-embedding-ada-002.

Avviare la procedura guidata

Per iniziare, passare al servizio di ricerca di Intelligenza artificiale di Azure nella portale di Azure e aprire la procedura guidata Importa e vettorizza dati.

  1. Accedere al portale di Azure con l'account Azure e passare al servizio di ricerca di intelligenza artificiale di Azure.

  2. Nella pagina Panoramica selezionare Importa e vettorizza dati.

    Screenshot del comando della procedura guidata.

Connettersi ai dati

Il passaggio successivo consiste nel connettersi a un'origine dati da usare per l'indice di ricerca.

  1. Nella procedura guidata Importa e vettorizza dati nella scheda Connessione ai dati espandere l'elenco a discesa Origine dati e selezionare Archiviazione BLOB di Azure.

  2. Specificare la sottoscrizione di Azure, l'account di archiviazione e il contenitore che fornisce i dati.

  3. Per la connessione, fornire un accesso completo stringa di connessione che include una chiave o specificare un'identità gestita con autorizzazioni di lettura dati BLOB Archiviazione nel contenitore.

  4. Specificare se si vuole il rilevamento dell'eliminazione:

    Screenshot della pagina dell'origine dati.

  5. Selezionare Avanti: Vettorizza e Arricchisci per continuare.

Arricchire e vettorizzare i dati

In questo passaggio specificare il modello di incorporamento usato per vettorizzare i dati in blocchi.

  1. Specificare la sottoscrizione, l'endpoint, la chiave API e il nome della distribuzione del modello.

  2. Facoltativamente, è possibile crackare immagini binarie (ad esempio, file di documenti analizzati) e usare OCR per riconoscere il testo.

  3. Facoltativamente, è possibile aggiungere la classificazione semantica per rerank dei risultati alla fine dell'esecuzione della query, promuovendo le corrispondenze più rilevanti in modo semantico alla parte superiore.

  4. Specificare una pianificazione di runtime per l'indicizzatore.

    Screenshot della pagina di arricchimento.

  5. Selezionare Avanti: Crea e rivedi per continuare.

Eseguire la procedura guidata

Questo passaggio crea gli oggetti seguenti:

  • Connessione all'origine dati al contenitore BLOB.

  • Indice con campi vettoriali, vettorizzatori, profili vettoriali, algoritmi vettoriali. Non viene richiesto di progettare o modificare l'indice predefinito durante il flusso di lavoro della procedura guidata. Gli indici sono conformi alla versione 2023-10-01-Preview.

  • Set di competenze con competenza Dividi testo per la suddivisione in blocchi e AzureOpenAIEmbeddingModel per la vettorializzazione.

  • Indicizzatore con mapping dei campi e mapping dei campi di output (se applicabile).

Se si verificano errori, esaminare prima le autorizzazioni. È necessario l'utente OpenAI di Servizi cognitivi in Azure OpenAI e Archiviazione lettore di dati BLOB in Archiviazione di Azure. I BLOB devono essere non strutturati (i dati in blocchi vengono estratti dalla proprietà "content" del BLOB).

Controllare i risultati

Esplora ricerche accetta stringhe di testo come input e quindi vettorizza il testo per l'esecuzione di query vettoriali.

  1. Seleziona l'indice.

  2. Facoltativamente, selezionare Opzioni query e nascondere i valori vettoriali nei risultati della ricerca. Questo passaggio semplifica la lettura dei risultati della ricerca.

    Screenshot del pulsante Opzioni query.

  3. Selezionare visualizzazione JSON in modo che sia possibile immettere testo per la query vettoriale nel parametro di query del vettore di testo .

    Screenshot del selettore JSON.

    Questa procedura guidata offre una query predefinita che esegue una query vettoriale sul campo "vector", restituendo i 5 vicini più vicini. Se si è scelto di nascondere i valori vettoriali, la query predefinita include un'istruzione "select" che esclude il campo vettore dai risultati della ricerca.

    {
       "select": "chunk_id,parent_id,chunk,title",
       "vectorQueries": [
           {
              "kind": "text",
              "text": "*",
              "k": 5,
              "fields": "vector"
           }
        ]
    }
    
  4. Sostituire il testo "*" con una domanda correlata ai piani di integrità, ad esempio "quale piano ha la deducibile più bassa".

  5. Selezionare Cerca per eseguire la query.

    Screenshot dei risultati della ricerca.

    Verranno visualizzate 5 corrispondenze, dove ogni documento è un blocco del PDF originale. Il campo del titolo mostra il file PDF da cui proviene il blocco.

  6. Per visualizzare tutti i blocchi di un documento specifico, aggiungere un filtro per il campo del titolo 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

Ricerca di intelligenza artificiale di Azure è una risorsa fatturabile. Se non è più necessario, eliminarlo dalla sottoscrizione per evitare addebiti.

Passaggi successivi

In questa guida introduttiva è stata presentata la procedura guidata Importa e vettorizza dati che crea tutti gli oggetti necessari per la vettorializzazione integrata. Per esplorare in dettaglio ogni passaggio, provare un esempio di vettorizzazione integrato.