Creare applicazioni di AI generativa utilizzando Cloud SQL

Questa pagina fornisce una panoramica delle funzionalità offerte da Cloud SQL per PostgreSQL per aiutarti a creare applicazioni di AI generativa. Per iniziare a utilizzare un'applicazione di esempio, consulta Iniziare a utilizzare Cloud SQL per le applicazioni di AI generativa.

RAG (Retrieval-Augmented Generation) è una tecnica per ottimizzare l'output di un modello linguistico di grandi dimensioni (LLM) facendo riferimento a una knowledge base autorevole prima di generare una risposta. RAG migliora le applicazioni di AI generativa migliorandone l'accuratezza. I database Cloud SQL offrono funzionalità selezionate per le applicazioni RAG e di AI generativa, come spiegato in questa pagina.

Genera incorporamenti vettoriali

Gli incorporamenti vettoriali sono essenziali per i RAG perché consentono una comprensione semantica e una ricerca efficiente della somiglianza. Questi incorporamenti sono rappresentazioni numeriche di testo, immagini, audio e video. I modelli di incorporamento generano gli incorporamenti vettoriali in modo che, se due parti di contenuto sono semanticamente simili, i rispettivi incorporamenti si trovino uno vicino all'altro nello spazio vettoriale di incorporamento.

Cloud SQL si integra con Vertex AI. Puoi usare i modelli ospitati da Vertex AI per generare incorporamenti vettoriali mediante query SQL.

Cloud SQL estende la sintassi PostgreSQL con una funzione di incorporamento per generare incorporamenti vettoriali di testo. Dopo aver generato questi incorporamenti, puoi archiviarli in un database Cloud SQL senza bisogno di un database vettoriale separato.

Puoi anche utilizzare Cloud SQL per archiviare gli incorporamenti vettoriali generati al di fuori di Cloud SQL. Ad esempio, puoi archiviare gli incorporamenti vettoriali generati utilizzando modelli preaddestrati in Vertex AI Model Garden. Puoi utilizzare questi incorporamenti di vettori come input delle funzioni pgvector per le somiglianze e le ricerche semantiche.

Archivia, indicizza ed esegui query su incorporamenti di vettori con pgvector

Puoi archiviare, indicizzare ed eseguire query su incorporamenti di vettori in Cloud SQL utilizzando l'estensione PostgreSQL pgvector.

Per ulteriori informazioni sulla configurazione di questa estensione, consulta Configurare le estensioni PostgreSQL. Per saperne di più su archiviazione, indicizzazione ed esecuzione di query sugli incorporamenti di vettori, consulta Archiviare un incorporamento generato e Eseguire query e indicizzare gli incorporamenti utilizzando pgvector.

Richiamare previsioni online utilizzando query SQL

Puoi chiamare previsioni online utilizzando modelli archiviati in Vertex AI Model Garden utilizzando query SQL.

Utilizzare l'integrazione di LangChain

Cloud SQL si integra con LangChain, un framework di orchestrazione LLM open source, per semplificare lo sviluppo di applicazioni di AI generativa. Puoi utilizzare i seguenti pacchetti LangChain:

Migliorare le prestazioni della ricerca vettoriale

Puoi migliorare il rendimento di una ricerca vettoriale utilizzando quanto segue:

  • Cache dei dati: utilizza una cache dei dati integrata che sfrutta una velocità SSD locale per archiviare le pagine di dati lette di frequente. Puoi ottenere un miglioramento delle prestazioni di lettura fino a tre volte superiore rispetto alla lettura da un disco permanente.
  • Metriche della cache dei dati: ottimizzano le query in base all'efficacia con cui la cache dei dati viene utilizzata in una ricerca vettoriale.

    Cloud SQL fornisce le seguenti metrics in Metrics Explorer in Cloud Monitoring:

    Metrica Descrizione Etichetta metrica
    Cache dati utilizzata Utilizzo della cache dei dati (in byte) database/data_cache/bytes_used
    Quota per la cache dei dati La dimensione massima della cache di dati (in byte) database/data_cache/quota
    Numero di successo della cache dei dati Il numero totale di operazioni di lettura successo della cache dati per un'istanza database/postgresql/data_cache/hit_count
    Conteggio fallimento della cache dei dati Il numero totale di operazioni di mancata lettura nella cache di dati per un'istanza database/postgresql/data_cache/miss_count
    Percentuale successi cache dei dati Il rapporto tra le operazioni di lettura successo della cache dei dati e quelle di mancata lettura della cache dei dati per un'istanza
    database/postgresql/data_cache/hit_ratio
  • System Insights: fornisce metriche di sistema come utilizzo della CPU, utilizzo del disco e velocità effettiva per aiutarti a monitorare l'integrità delle istanze e risolvere i problemi che influiscono sulle prestazioni delle applicazioni di AI generativa. Per visualizzare queste metriche, utilizza la dashboard di Cloud SQL System Insights.

  • Query Insights: rileva, diagnostica e previeni problemi di prestazioni delle query. Ciò è utile per migliorare le prestazioni della ricerca vettoriale nelle tue applicazioni di AI generativa.

    Puoi utilizzare la dashboard di Cloud SQL Query Insights per osservare le prestazioni delle query principali e analizzare queste query utilizzando piani di query visivi. Puoi anche monitorare le prestazioni a livello di applicazione e tracciare l'origine di una query problematica nello stack di applicazioni nel database utilizzando SQLcommenter. Questa è una libreria di auto-strumentazione open source, ORM (Object-Relational Mapping)

    Query Insights può inoltre aiutarti a integrarti con i tuoi strumenti di monitoraggio delle applicazioni (APM) esistenti in modo da poter risolvere i problemi relativi alle query utilizzando strumenti che conosci.

Vantaggi dell'utilizzo di Cloud SQL per le applicazioni di AI generativa

L'uso di Cloud SQL per creare applicazioni di AI generativa offre quanto segue:

  • Utilizza PostgreSQL per creare applicazioni di AI generativa. Cloud SQL per PostgreSQL supporta pgvector e si integra con Vertex AI e LangChain.
  • Utilizza un servizio affidabile che offra protezione, sicurezza e governance dei dati di livello aziendale. Utilizzando Cloud SQL, ottieni i seguenti vantaggi:
    • Uno SLA ad alta disponibilità del 99,99% che include la manutenzione
    • un servizio gestito che offre funzionalità come backup automatici, replica, patch, crittografia e incrementi automatici della capacità di archiviazione
    • Funzionalità di sicurezza, governance e conformità
  • Combinare con dati operativi contestuali. Usa join e filtri sui dati operativi mentre usi le incorporamenti vettoriali per ottenere risposte contestuali, accurate e aggiornate nelle tue applicazioni di AI generativa.
  • Riduci il carico di lavoro delle operazioni. Utilizza Cloud SQL come database vettoriale per ridurre il carico di lavoro delle operazioni associato all'esportazione dei dati in un database vettoriale separato.
  • Accedi agli ultimi modelli di AI generativa. Utilizza le query SQL per accedere agli ultimi modelli di AI ospitati in Vertex AI.

Inizia a utilizzare Cloud SQL per le applicazioni di AI generativa

Per iniziare a creare applicazioni di IA generativa, utilizza questa app di esempio. L'app utilizza Cloud SQL, Google Kubernetes Engine e Vertex AI.

La soluzione include i seguenti contenuti:

  • Modelli Terraform per configurare l'infrastruttura con best practice per la sicurezza
  • Un'app di esempio per un chatbot basato su LLM

Passaggi successivi