Introduzione alla ricerca vettoriale

Questo documento fornisce una panoramica della ricerca vettoriale in BigQuery. Vettore la ricerca consente di cercare negli incorporamenti per identificare entità semanticamente simili.

Gli incorporamenti sono vettori numerici di alta dimensione che rappresentano una determinata entità, come un testo o un file audio. I modelli di machine learning (ML) utilizzano gli embedding per codificare la semantica di queste entità in modo da facilitare il ragionamento e il confronto. Ad esempio, un'operazione comune nei modelli di clustering, classificazione e consigli è misurare la distanza tra i vettori in uno spazio di embedding per trovare gli elementi più semanticamente simili.

Per eseguire una ricerca vettoriale, utilizza la classe Funzione VECTOR_SEARCH e, facoltativamente, un indice vettoriale. Quando un vettore utilizzare l'indice, VECTOR_SEARCH usa Vicino approssimato più vicino di ricerca per contribuire a migliorare il rendimento della ricerca vettoriale, con compromesso nella riduzione richiamo con la restituzione di risultati più approssimativi. La forza bruta viene utilizzata per restituire dati quando non è disponibile un indice vettoriale e puoi scegliere di usare per ottenere risultati esatti anche quando è disponibile un indice vettoriale.

Casi d'uso

La combinazione della generazione di incorporamenti e della ricerca vettoriale consente di casi d'uso interessanti, RAG (Retrieval-Augmented Generation) quella canonica. Ecco altri possibili casi d'uso:

  • Dato un gruppo di nuove richieste di assistenza, trova diverse richieste risolte simili per ciascuna. Passa le informazioni sulle richieste risolte a un modello linguistico (LLM) da utilizzare come contesto per riassumere e suggerire le soluzioni per le nuove richieste di assistenza.
  • Data una voce dell'audit log, trova le voci più simili tra quelle gli ultimi 30 giorni.
  • Genera incorporamenti dai dati del profilo del paziente e poi utilizza la ricerca vettoriale trovare pazienti con profili simili al fine di esplorare i piani terapeutici efficaci prescritti a quella coorte di pazienti.
  • Dati gli incorporamenti che rappresentano i momenti pre-incidente di tutti sensori e fotocamere di una flotta di scuolabus, trovano momenti simili da di tutti gli altri veicoli della flotta per ulteriori analisi, messe a punto e il riaddestramento dei modelli che regolano il coinvolgimento delle funzionalità di sicurezza.
  • Data una foto, trova le immagini più correlate in una nella tabella di oggetti BigQuery e passare queste immagini a un modello generare didascalie.

Prezzi

L'istruzione CREATE VECTOR INDEX e la funzione VECTOR_SEARCH utilizzano i prezzi di BigQuery Compute. Per l'istruzione CREATE VECTOR INDEX, viene considerata solo la colonna indicizzata di byte elaborati.

L'elaborazione necessaria per creare e aggiornare gli indici di vettori non comporta alcun costo se le dimensioni totali dei dati delle tabelle indicizzate sono inferiori al limite per organizzazione. Per supportare l'indicizzazione oltre questo limite, devi: fornire una prenotazione per la gestione dei job di gestione degli indici. Gli indici vettoriali comportano costi di archiviazione quando sono attivi. Puoi trovare le dimensioni dello spazio di archiviazione dell'indice nella visualizzazione INFORMATION_SCHEMA.VECTOR_INDEXES. Se l'indice di vettori non ha ancora raggiunto la copertura del 100%, ti verrà comunque addebitato tutto lo spazio di archiviazione dell'indice indicato nella visualizzazione INFORMATION_SCHEMA.VECTOR_INDEXES.

Quote e limiti

Per ulteriori informazioni, vedi Limiti degli indici vettoriali.

Limitazioni

  • Le query che contengono la funzione VECTOR_SEARCH non vengono accelerate da BigQuery BI Engine.
  • Le regole di governance e di sicurezza dei dati di BigQuery si applicano all'uso di VECTOR_SEARCH. Per ulteriori informazioni, consulta la sezione Limitazioni in VECTOR_SEARCH. Queste regole non si applicano alla generazione di indici di vettori.

Passaggi successivi

  • Scopri di più sulla creazione di un indice vettoriale.
  • Prova il tutorial Cercare gli embedding con la ricerca vettoriale per scoprire come creare un indice vettoriale e poi eseguire una ricerca vettoriale per gli embedding sia con che senza l'indice.
  • Prova il tutorial Genera ed esegui embedding di testo per scoprire come svolgere le seguenti attività:

    • Genera incorporamenti di testo.
    • Crea un indice vettoriale sugli embedding.
    • Esegui una ricerca vettoriale con gli embedding per cercare testo simile.
    • Esegui la generazione basata sul recupero (RAG) utilizzando i risultati di ricerca vettoriali per aumentare l'input del prompt e migliorare i risultati.