Panoramica di Vector Assist

Vector Assist è un'estensione di Cloud SQL per PostgreSQL che semplifica il deployment e la gestione dei carichi di lavoro vettoriali di Cloud SQL. Fornisce un framework SQL dichiarativo che ti aiuta a configurare funzionalità di ricerca vettoriale pronte per la produzione, come la generazione di embedding, l'ottimizzazione delle query e la creazione di indici. Questo framework riduce la complessità dei workload vettoriali:

  • Semplificazione della dichiarazione di intent: i requisiti (ad esempio tabella, colonna di testo o recupero del target) vengono dichiarati utilizzando funzioni SQL.
  • Automazione delle best practice: genera comandi SQL ottimizzati, noti anche come consigli, per configurare il workload vettoriale utilizzando la specifica vettoriale definita e un algoritmo di ottimizzazione automatica che calcola la configurazione ottimale dell'indice.
  • Fornire trasparenza e controllo: fornisce spiegazioni chiare per ogni consiglio quando automatizza le attività che ti consentono di esaminare, modificare e applicare i consigli al tuo ritmo.
  • Abilitazione della prototipazione rapida: consente di eseguire rapidamente il deployment di una configurazione di ricerca vettoriale ben ottimizzata, riducendo il tempo che intercorre tra il concept e la produzione.
  • Concentrandosi sulla facilità d'uso: semplifica la complessità della ricerca semantica, colma il divario tra i requisiti aziendali e quelli di ingegneria.

Con l'assistenza vettoriale, puoi creare applicazioni end-to-end con funzionalità di ricerca semantica e una configurazione semplificata.

Come funziona l'aiuto vettoriale

L'utilizzo dell'aiuto vettoriale richiede la definizione delle specifiche del vettore. Il framework utilizza queste specifiche vettoriali, note anche come specifiche vettoriali, per generare i passaggi necessari per creare un indice vettoriale. Vector Assist restituisce i passaggi necessari per il deployment del workload vettoriale come suggerimenti. Ogni volta che modifica la specifica vettoriale, l'assistenza vettoriale rigenera i consigli.

Una volta generato l'indice vettoriale utilizzando questi passaggi consigliati, puoi utilizzare l'assistenza vettoriale per generare query di ricerca ottimizzate.

Specifiche dell'assistenza vettoriale

La configurazione della specifica dell'indice vettoriale, o specifica vettoriale, è il primo passo per utilizzare l'assistenza vettoriale. Una specifica del vettore è un oggetto in cui definisci l'intent e i requisiti per il tuo workload vettoriale. Include tutte le informazioni necessarie, tra cui:

  • Le tabelle e le colonne pertinenti (testo o vettore)
  • Preferenze del modello di embedding (se utilizzi la generazione di embedding)
  • Tipo di indice preferito, ad esempio HNSW o IVFFlat.
  • Recupero del target per le query di ricerca
  • Limitazioni di memoria o altri vincoli di prestazioni

Definisci la specifica del vettore utilizzando la funzione vector_assist.define_spec e puoi modificarla in qualsiasi momento. Il sistema assegna a ogni specifica un ID univoco e lo memorizza in una tabella denominata vector_assist.vector_specs.

Vector Assist deduce gli input delle specifiche e un algoritmo di ottimizzazione automatica ottimizzato che calcola la configurazione ottimale dell'indice. Sebbene l'assistenza vettoriale utilizzi questi valori per semplificare il processo di sviluppo, puoi comunque personalizzarli in base alle tue preferenze.

Suggerimenti per l'assistenza vettoriale

Dopo aver definito la specifica del vettore, l'assistenza vettoriale elabora l'input e genera consigli. Questi consigli sono un elenco ordinato di passaggi utili, in genere comandi SQL, che devi eseguire per eseguire il deployment del carico di lavoro vettoriale in base alle tue specifiche. Ogni consiglio include:

  • La query SQL da eseguire.
  • Una spiegazione dettagliata di cosa fa la query e perché è consigliata.
  • Informazioni su potenziali compromessi o costi, come le dimensioni stimate dell'indice o il tempo di compilazione.

Vector Assist memorizza i consigli in una tabella chiamata vector_assist.recommendation, che puoi rivedere, modificare e applicare singolarmente o nel complesso.

Ogni volta che modifichi la specifica del vettore per il tuo carico di lavoro, l'assistente vettoriale rigenera i suggerimenti in conformità con le specifiche aggiornate.

Limitazioni

Quando utilizzi l'assistente vettoriale con le tue istanze Cloud SQL per PostgreSQL, tieni presente le seguenti limitazioni:

  • Vector Assist supporta solo PostgreSQL versione 12 e successive.
  • Sebbene l'assistenza vettoriale supporti tutte le versioni di pgvector, ti consigliamo di utilizzare la versione più recente per prestazioni ottimali e supporto delle funzionalità. Per maggiori informazioni, consulta il pgvector changelog.
  • Se la tua istanza utilizza l'estensione google_ml_integration per generare incorporamenti, le relative limitazioni si applicano anche quando utilizzi l'assistenza vettoriale. Per saperne di più, consulta la panoramica della gestione degli endpoint del modello.
  • Vector Assist supporta solo i tipi di indice HNSW e IVFFlat.
  • Vector Assist supporta solo i modelli di text embedding per la generazione automatica degli embedding e utilizza text_column_name come parametro di input. Se il tuo workload vettoriale richiede un modello di incorporamento multimodale, utilizza l'estensione google_ml_integration o un'altra estensione per generare manualmente questi incorporamenti prima di utilizzare l'assistente vettoriale per attivare la ricerca semantica su questi incorporamenti.

Passaggi successivi