Ricerca vettoriale nello strumento di analisi dei dati

È possibile utilizzare le funzionalità di Oracle AI Vector Search per cercare il testo pertinente dai dati di origine in una colonna specifica.

La ricerca vettoriale consente di individuare e abbinare rapidamente i dati simili al testo fornito come input di ricerca.

Requisiti indispensabili

Per utilizzare la funzione di ricerca vettoriale nello strumento Analisi dati, è necessario quanto riportato di seguito.
  • È necessario disporre di un database 23ai con supporto vettoriale.
  • Le API REST ORDS devono supportare il tipo di dati VECTOR.
  • È necessario utilizzare la pagina Impostazioni di Data Studio per selezionare la stessa credenziale utilizzata per la ricerca vettoriale.
  • I dati di origine devono avere già una colonna non numerica da incorporare per prima.
  • Per utilizzare la ricerca vettoriale nello strumento Analisi dati, è necessario disporre dei seguenti elementi:
    • Un servizio di account OpenAI, Cohere o Azure OpenAI con credito
    • Accesso ai pacchetti DBMS_VECTOR e DBMS_VECTOR_CHAIN.UTL_TO_EMBEDDING.
    Nota

Lo strumento di analisi dei dati utilizza il pacchetto PL/SQL di Vector Utility DBMS_VECTOR e DBMS_VECTOR_CHAIN.UTL_TO_EMBEDDING per fornire le API REST di terze parti che consentono di interagire con modelli di incorporamento esterni come Cohere, Google AI, Hugging Face, Oracle Cloud Infrastructure (OCI) Generative AI, OpenAI o Vertex AI. È necessario comprendere i termini di utilizzo dei modelli di incorporamento di terze parti.

Nota

Alcune funzioni del database possono consentire di accedere ai servizi offerti separatamente da terze parti, ad esempio mediante l'uso di specifiche JSON che facilitano l'accesso alle API REST.

L'utilizzo di queste funzionalità è esclusivamente a vostro rischio e siete gli unici responsabili del rispetto di tutti i termini e condizioni relativi all'utilizzo di tali servizi di terze parti. In deroga a eventuali altri termini e condizioni relativi ai servizi di terzi, l'utilizzo delle suddette funzionalità del database da parte Vostra implica l'accettazione di tale rischio e l'esclusione esplicita della responsabilità o della responsabilità di Oracle per eventuali danni derivanti da tale accesso.

Supponiamo che tu sia un appassionato di finance e che tu voglia conoscere il finance attraverso le notizie per ottenere un migliore senso dei prodotti e degli investimenti finanziari. In questo esempio, è possibile utilizzare la funzione Ricerca vettoriale per trovare le notizie relative alla parola Bank.

Si consideri una tabella con le colonne CATEGORY, FILENAME, TITLE, CONTENT e un'altra colonna con etichetta VECTOR, che contiene la rappresentazione vettoriale della colonna CONTENT. Poiché è possibile utilizzare la ricerca vettoriale su colonne di origine con dati non numerici (immagine o testo), qualsiasi colonna non numerica può essere incorporata e memorizzata come colonna vettoriale. Ma in questo esempio, dobbiamo cercare il testo pertinente dalla colonna CONTENT.

È possibile utilizzare lo strumento Analisi dati per eseguire la ricerca vettoriale.

Per indicare quale incorporamento della colonna è conservato nella colonna vettoriale, dobbiamo prima mappare la colonna appropriata con il vettore appropriato utilizzando lo strumento di analisi dei dati, cercare testo simile e quindi eseguire la query. Nella scheda Risultato query viene visualizzato il contenuto simile a Bank.

  1. Nello strumento Analisi dati fare clic su + in Analisi per creare una nuova analisi.
  2. Selezionare lo schema dall'elenco a discesa Schema ed eseguire una query dall'elenco a discesa Tipo.
  3. Selezionare la tabella di cui si desidera eseguire una query dal browser tabelle. In questo esempio verrà eseguita la selezione di BBCNEWS_DATA_ENCODE.



  4. Immettere l'istruzione Select nell'area di modifica del foglio di lavoro SQL per recuperare tutte le colonne dalla tabella BBCNEWS_DATA_ENCODE.

    Specificare il comando seguente:
    Select * from BBCNEWS_DATA_ENCODE;
  5. Fare clic su Esegui.



    È possibile visualizzare tutte le colonne della tabella BBCNEWS_DATA_ENCODE nella scheda Risultati query.

  6. Selezionare la vista tabulare della modalità dalle icone che visualizzano varie modalità di visualizzazione del risultato della query.



  7. Trascinare e rilasciare la colonna CONTENT nell'area di rilascio Colonna e fare clic su di essa per mappare la colonna vettoriale.



  8. Nella procedura guidata Mappa colonna vettoriale specificare i seguenti valori di campo:
    • Vettore mappa: selezionare la colonna costituita dalle integrazioni vettoriali della colonna selezionata dall'elenco a discesa. In questo esempio, è VECTOR.
    • Seleziona servizio: selezionare il servizio AI che si utilizzerà per utilizzare questa funzione dello strumento. In questo esempio si tratta di AI generativa OCI.
    • Seleziona credenziale: immettere la credenziale creata dalle impostazioni di Data Studio per accedere al provider di servizi di terze parti. Sono necessarie queste credenziali per abilitare l'accesso durante le chiamate API REST al provider di servizi di terze parti scelto.
    • URL AI generativa: specificare l'URL AI generativa che verrà utilizzato per chiamare il provider di servizi di terze parti, ad esempio Cohere, Google AI, Hugging Face, Oracle Cloud Infrastructure (OCI) Generative AI, OpenAI o Vertex AI.
    • Seleziona modello: specificare il modello di incorporamento che verrà utilizzato per generare incorporamenti dal testo. In questo esempio, verrà immesso cohere.embed-english-light-v2.0.

    Per salvare il mapping, fare clic su Salva. Selezionare Cancella per cancellare i valori dei campi menzionati in questo passo.

  9. Nei filtri con facet è possibile visualizzare la casella di testo sotto la colonna Contenuto. Fare clic sul segno + per espandere la casella di testo.



  10. Immettere il testo seguente nella casella di testo per il contenuto simile alla parola Bank nella colonna CONTENT:
    BANK

    Fare clic su Cerca.



  11. Nella scheda Risultati query del pannello Output viene visualizzata la colonna di contenuto costituita da contenuto correlato a Bank.



    È possibile passare il puntatore del mouse su ogni contenuto per visualizzarne la forma espansa.