LangChain su Vertex AI

LangChain su Vertex AI (Anteprima) consente di sfruttare la libreria open source LangChain per creare applicazioni di IA generativa personalizzate e utilizzare Vertex AI per modelli, strumenti e deployment. Consente di selezionare il modello LLM con cui vuoi lavorare, definire gli strumenti per accedere alle API esterne, strutturare l'interfaccia tra l'utente e i componenti di sistema in un framework di orchestrazione ed eseguire il deployment del framework in un runtime gestito.

Componenti di sistema

La creazione e il deployment di un'applicazione di IA generativa personalizzata utilizzando OSS LangChain e Vertex AI sono costituiti dai seguenti quattro componenti:

ComponenteDescrizione
Modello
Gemini

Quando l'utente invia una query alla sua applicazione personalizzata, il modello LLM elabora la query e fornisce una risposta.

Puoi scegliere di definire un insieme di strumenti che comunicano con le API esterne e di fornirli al modello. Durante l'elaborazione di una query, il modello può scegliere di delegare determinate attività agli strumenti. Questo può implicare intrinsecamente una o più chiamate del modello a modelli generici o perfezionati.

Per scoprire di più, consulta Versioni e ciclo di vita dei modelli.

Strumenti
Chiamate alle funzioni Gemini

Puoi scegliere di definire un insieme di strumenti che comunicano con le API esterne (come database e così via) e di fornirli al modello. Durante l'elaborazione di una query, il modello può scegliere di delegare determinate attività agli strumenti definiti in precedenza.

Il deployment tramite il runtime gestito di Vertex AI è ottimizzato per l'utilizzo di strumenti basati sulla chiamata di funzioni Gemini, ma supporta qualsiasi implementazione di strumenti di OSS LangChain. Per saperne di più sulle chiamate delle funzioni Gemini, vedi Chiamate di funzione.

Framework per l'orchestrazione
Agente

LangChain su Vertex AI consente di sfruttare il framework di orchestrazione LangChain OSS in Vertex AI. Tramite LangChain, puoi decidere quanto deve essere deterministica la tua applicazione.

Se utilizzi già LangChain, puoi semplicemente utilizzare il codice LangChain open source esistente per eseguire il deployment della tua applicazione su Vertex AI. Altrimenti, puoi creare il tuo codice dell'applicazione e strutturarlo all'interno di un framework di orchestrazione utilizzando i modelli LangChain di Vertex AI.

Per scoprire di più, vedi Sviluppare un'applicazione.

Runtime gestito
Motore di ragionamento
LangChain su Vertex AI consente di eseguire il deployment dell'applicazione in un runtime gestito da Reasoning Engine. Questo runtime è un servizio Vertex AI che offre tutti i vantaggi dell'integrazione con Vertex AI: sicurezza, privacy, osservabilità e scalabilità. Puoi produrre e scalare la tua applicazione con una semplice chiamata API, trasformando rapidamente i prototipi testati localmente in deployment di livello enterprise. Per scoprire di più, vedi Eseguire il deployment di un'applicazione.

Esistono molti modi diversi per creare prototipi e creare applicazioni di IA generativa personalizzate che sfruttano le funzionalità degli agenti sovrapponendo strumenti, funzioni personalizzate e su modelli come Gemini. Al momento di portare la tua applicazione in produzione, devi valutare come eseguire il deployment e gestire l'agente e tutti i suoi componenti sottostanti.

Se lavori a un livello inferiore dello stack, finisci per cercare di gestire troppe cose. Se lavori a un livello superiore dell'elenco, rischi di perdere il controllo dello sviluppatore. Con i componenti di LangChain su Vertex AI, l'obiettivo è aiutarti a concentrarti e personalizzare gli aspetti della funzionalità dell'agente che ti interessano di più, come le funzioni personalizzate, il comportamento degli agenti e i parametri del modello, mentre Google si occupa di deployment, scalabilità, pacchettizzazione, versioni e così via.

Flusso di sistema in fase di runtime

Quando l'utente esegue una query, l'agente definito la formatta in una richiesta per l'LLM. L'LLM elabora il prompt e determina se vuole utilizzare uno degli strumenti.

Se l'LLM sceglie di utilizzare uno strumento, genera un FunctionCall con il nome e i parametri con cui deve essere chiamato lo strumento. L'agente richiama lo strumento con FunctionCall e fornisce i risultati dello strumento all'LLM. Se l'LLM sceglie di non utilizzare alcun strumento, genererà contenuti che vengono restituiti dall'agente all'utente.

Il seguente diagramma illustra il flusso di sistema in fase di runtime:

Flusso di sistema in fase di runtime 

Crea ed esegui il deployment di un'applicazione di AI generativa

Il flusso di lavoro generale per la creazione di applicazioni di AI generativa è il seguente:

Procedura Descrizione
1. Configurare l'ambiente Configura il tuo progetto Google e installa la versione più recente dell'SDK Vertex AI per Python.
2. Sviluppa un'applicazione Sviluppa un'applicazione LangChain di cui sia possibile eseguire il deployment su Reasoning Engine.
3. Esegui il deployment dell'applicazione Eseguire il deployment di un'applicazione su Reasoning Engine.
4. Utilizzare l'applicazione Motore di ragionamento delle query per i contenuti.
5. Gestire l'applicazione di cui è stato eseguito il deployment Gestisci ed elimina le applicazioni di cui hai eseguito il deployment in Reasoning Engine.

I passaggi sono illustrati dal seguente diagramma:

Crea ed esegui il deployment di un'applicazione di AI generativa 

Vantaggi

  • Completamente personalizzabile: grazie alle interfacce standardizzate di LangChain, LangChain su Vertex AI può essere adottato per creare tutti i tipi di applicazioni. È facile personalizzare la logica dell'applicazione e incorporare qualsiasi framework open source o interno, offrendo un elevato grado di flessibilità.
  • Facilità di utilizzo: LangChain su Vertex AI utilizza le stesse API semplici e intuitive di LangChain OSS per interagire con gli LLM e creare applicazioni. Semplifica e velocizza il deployment con gli LLM di Vertex AI, poiché il runtime di Reasoning Engine supporta il deployment con un solo clic per generare un'API conforme in base alla tua libreria.
  • Integrazione con gli ecosistemi di Google Cloud e Vertex AI: Reasoning Engine per LangChain su Vertex AI utilizza l'infrastruttura e i container predefiniti di Vertex AI per accelerare il deployment della tua applicazione LLM. Offre un'integrazione chiara dell'SDK con i servizi di Google Cloud come l'API Gemini, le chiamate di funzione e le estensioni, che sono sicure e senza soluzione di continuità.
  • Sicura, privata e scalabile: puoi utilizzare una singola chiamata SDK anziché gestire autonomamente il processo di sviluppo. Il runtime gestito di Reasoning Engine ti libera da attività come sviluppo di server di applicazioni, creazione di container e configurazione di autenticazione, IAM e scalabilità. Vertex AI gestisce scalabilità automatica, espansione a livello di regione, vulnerabilità dei container, osservabilità e orizzontali. Crea ogni motore di ragionamento in un contenitore separato e supporta una serie di ottimizzazioni orizzontali.

Casi d'uso

Puoi utilizzare LangChain su Vertex AI per le seguenti attività:

Passaggi successivi