Creazione di applicazioni basate su LLM utilizzando LangChain

Questa pagina introduce come creare applicazioni basate su LLM utilizzando LangChain. Le panoramiche in questa pagina rimandano alle guide alle procedure in GitHub.

Che cos'è LangChain?

LangChain è un framework di orchestrazione LLM che aiuta gli sviluppatori a creare applicazioni di AI generativa o flussi di lavoro RAG (retrieval-augmented Generation). Fornisce la struttura, gli strumenti e i componenti per semplificare i flussi di lavoro LLM complessi.

Per ulteriori informazioni su LangChain, consulta la pagina Google LangChain. Per ulteriori informazioni sul framework LangChain, consulta la documentazione del prodotto LangChain.

Componenti LangChain per Spanner

Spanner offre le seguenti interfacce LangChain:

Scopri come utilizzare questi componenti in un'applicazione con la Guida rapida LangChain per Spanner.

Negozio di vettori per Spanner

L'archivio vettoriale recupera e archivia documenti e metadati da un database vettoriale. L'archivio vettoriale offre a un'applicazione la possibilità di eseguire ricerche semantiche che interpretano il significato di una query utente. Questo tipo di ricerca è chiamata ricerca vettoriale e consente di trovare argomenti corrispondenti alla query concettualmente. Durante la fase di query, l'archivio vettoriale recupera i vettori di incorporamento più simili all'incorporamento della richiesta di ricerca. In LangChain, un archivio vettoriale si occupa dell'archiviazione dei dati incorporati e dell'esecuzione della ricerca vettoriale per conto tuo.

Per lavorare con l'archivio di vettori in Spanner, utilizza la classe SpannerVectorStore.

Per ulteriori informazioni, consulta la documentazione del prodotto LangChain Vector Stores.

Guida alla procedura di archiviazione Vector

La guida di Spanner per l'archivio vettoriale mostra come effettuare le seguenti operazioni:

  • Installa il pacchetto di integrazione e LangChain
  • Inizializza una tabella per l'archivio vettoriale
  • Configura un servizio di incorporamento utilizzando VertexAIEmbeddings
  • Inizializza SpannerVectorStore
  • Aggiungere ed eliminare documenti
  • Cerca documenti simili
  • Crea un archivio vettoriale personalizzato per connetterti a un database Spanner preesistente che ha una tabella con incorporamenti vettoriali

Caricatore di documenti per Spanner

Il caricatore di documenti salva, carica ed elimina gli oggetti Document di LangChain. Ad esempio, puoi caricare i dati per l'elaborazione negli incorporamenti e archiviarli in un archivio vettoriale o utilizzarli come strumento per fornire un contesto specifico alle catene.

Per caricare documenti da Spanner, utilizza la classe SpannerLoader. Utilizza la classe SpannerDocumentSaver per salvare ed eliminare i documenti.

Per ulteriori informazioni, consulta l'argomento Caricatori di documenti LangChain.

Guida alla procedura di caricamento di documenti

La guida di Spanner per il caricatore di documenti mostra come svolgere le seguenti operazioni:

  • Installa il pacchetto di integrazione e LangChain
  • Carica documenti da una tabella
  • Aggiungere un filtro al caricatore
  • Personalizzare la connessione e l'autenticazione
  • Personalizza la creazione dei documenti specificando i contenuti e i metadati dei clienti
  • Come utilizzare e personalizzare un SpannerDocumentSaver per archiviare ed eliminare documenti

Cronologia dei messaggi di chat per Spanner

Le applicazioni con domanda e risposta richiedono una cronologia di ciò che è stato detto nel corso della conversazione per fornire all'applicazione il contesto necessario per rispondere a ulteriori domande dell'utente. La classe ChatMessageHistory di LangChain consente all'applicazione di salvare i messaggi in un database e di recuperarli quando necessario per formulare ulteriori risposte. Un messaggio può essere una domanda, una risposta, una dichiarazione, un saluto o qualsiasi altro testo fornito dall'utente o dall'applicazione durante la conversazione. ChatMessageHistory archivia ogni messaggio e concatena i messaggi per ogni conversazione.

Spanner estende questa classe con SpannerChatMessageHistory.

Guida alla procedura per la cronologia dei messaggi di Chat

La guida di Spanner per la cronologia dei messaggi di chat ti mostra come:

  • Installa LangChain ed esegui l'autenticazione in Google Cloud
  • Inizializzare una tabella
  • Inizializza la classe SpannerChatMessageHistory per aggiungere ed eliminare messaggi
  • Utilizzare un client per personalizzare la connessione e l'autenticazione
  • Elimina la sessione SpannerChatMessageHistory