Creare applicazioni basate su LLM utilizzando LangChain

Questa pagina introduce come creare applicazioni basate su LLM utilizzando LangChain. Le panoramiche di 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 workflow di generazione RAG (Retrieval-Augmented Generation). Fornisce la struttura, gli strumenti e i componenti per semplificare i workflow complessi degli LLM.

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

Componenti LangChain per Memorystore for Redis Cluster

Memorystore for Redis Cluster offre le seguenti interfacce LangChain:

Scopri come utilizzare LangChain con la guida rapida di LangChain per Memorystore for Redis Cluster.

Vector Store per Memorystore for Redis Cluster

Vector Store recupera e archivia documenti e metadati da un database vettoriale. Il negozio di vettori offre a un'applicazione la possibilità di eseguire ricerche semantiche che interpretano il significato di una query utente. Questo tipo di ricerca è chiamato ricerca vettoriale e può trovare argomenti che corrispondono alla query a livello concettuale. Al momento della query, il vector store recupera i vettori di embedding più simili all'embedding della richiesta di ricerca. In LangChain, un archivio vettoriale si occupa di archiviare i dati incorporati ed eseguire la ricerca vettoriale per te.

Per lavorare con l'archivio vettoriale in Memorystore for Redis Cluster, utilizza la classe RedisVectorStore.

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

Guida alla procedura del datastore vettoriale

La guida a Memorystore for Redis Cluster per vector store mostra come eseguire le seguenti operazioni:

  • Installa il pacchetto di integrazione e LangChain
  • Inizializzare un indice vettoriale
  • Preparare i documenti per il datastore vettoriale
  • Aggiungere documenti al vector store
  • Eseguire una ricerca di somiglianze (KNN)
  • Eseguire una ricerca di somiglianze basata su intervallo
  • Eseguire una ricerca di massima pertinenza marginale (MMR)
  • Utilizzare l'archivio vettoriale come Retriever
  • Eliminare documenti dallo spazio di archiviazione vettoriale
  • Elimina un indice vettoriale

Caricatore di documenti per Memorystore for Redis Cluster

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

Per caricare documenti dal caricatore di documenti in Memorystore for Redis Cluster, utilizza la classe MemorystoreDocumentLoader. Utilizza la classe MemorystoreDocumentSaver per salvare ed eliminare i documenti.

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

Guida alla procedura di caricamento dei documenti

La guida a Memorystore for Redis Cluster per il caricatore di documenti mostra come:

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

Cronologia dei messaggi della chat per Memorystore for Redis Cluster

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

Memorystore for Redis Cluster estende questa classe con MemorystoreChatMessageHistory.

Guida alla procedura per la cronologia dei messaggi di chat

La guida a Memorystore for Redis Cluster per la cronologia dei messaggi di chat mostra come:

  • Installa LangChain e autenticati su Google Cloud
  • Inizializza la classe MemorystoreChatMessageHistory per aggiungere ed eliminare messaggi