Compila aplicaciones con tecnología LLM usando LangChain

En esta página, se explica cómo compilar aplicaciones con tecnología LLM usando LangChain. Las descripciones generales en esta página contienen vínculos a las guías de procedimiento en GitHub.

¿Qué es LangChain?

LangChain es un framework de organización de LLM que ayuda a los desarrolladores a compilar aplicaciones de IA generativa o flujos de trabajo de generación con recuperación aumentada (RAG). Proporciona la estructura, las herramientas y los componentes necesarios para optimizar flujos de trabajo complejos de LLM.

Para obtener más información sobre LangChain, consulta la página de Google LangChain. Para obtener más información sobre el framework de LangChain, consulta la documentación del producto LangChain.

Componentes de LangChain para Memorystore para Redis

Memorystore for Redis ofrece las siguientes interfaces de LangChain:

Aprende a usar LangChain con la Guía de inicio rápido de LangChain para Memorystore para Redis.

Almacenamiento vectorial de Memorystore para Redis

El almacén de vectores recupera y almacena documentos y metadatos de una base de datos de vectores. El almacén de vectores brinda a una aplicación la capacidad de realizar búsquedas semánticas que interpretan el significado de una consulta del usuario. Este tipo de búsqueda se denomina búsqueda de vectores y puede encontrar temas que coincidan de manera conceptual con la consulta. En el momento de la consulta, el almacén de vectores recupera los vectores de incorporación que más se parecen a la incorporación de la solicitud de búsqueda. En LangChain, un almacén de vectores se encarga de almacenar los datos incorporados y de realizar la búsqueda vectorial por ti.

Para trabajar con el almacén de vectores en Memorystore para Redis, usa la clase RedisVectorStore.

Para obtener más información, consulta la documentación del producto LangChain Vector stores.

Guía de procedimiento de tienda de vectores

En la guía de Memorystore para Redis sobre almacenamiento de vectores, se muestra cómo hacer lo siguiente:

  • Cómo instalar el paquete de integración y LangChain
  • Cómo inicializar un índice vectorial
  • Prepara documentos para el almacén de vectores
  • Agrega documentos al almacén de vectores
  • Realiza una búsqueda de similitud (KNN)
  • Realiza una búsqueda de similitud basada en rangos
  • Realiza una búsqueda de relevancia marginal (MMR) máxima
  • Usar el almacén de vectores como un recuperador
  • Cómo borrar documentos del almacén de vectores
  • Cómo borrar un índice vectorial

Cargador de documentos para Memorystore para Redis

El cargador de documentos guarda, carga y borra objetos Document de LangChain. Por ejemplo, puedes cargar datos para procesarlos en incorporaciones y almacenarlos en un almacén de vectores o usarlos como herramienta para proporcionar contexto específico a las cadenas.

Para cargar documentos desde el cargador de documentos en Memorystore para Redis, usa la clase MemorystoreDocumentLoader. Usa la clase MemorystoreDocumentSaver para guardar y borrar documentos.

Para obtener más información, consulta el tema Cargadores de documentos de LangChain.

Guía de procedimiento del cargador de documentos

En la guía de Memorystore para Redis para el cargador de documentos, se muestra cómo hacer lo siguiente:

  • Cómo instalar el paquete de integración y LangChain
  • Carga documentos desde una tabla
  • Cómo agregar un filtro al cargador
  • Personaliza la conexión y la autenticación
  • Especifica el contenido y los metadatos de los clientes para personalizar la construcción del documento.
  • Cómo usar y personalizar un MemorystoreDocumentSaver para almacenar y borrar documentos

Historial de mensajes de chat de Memorystore para Redis

Las aplicaciones de preguntas y respuestas requieren un historial de lo que se dice en la conversación para brindarle a la aplicación el contexto necesario para responder más preguntas del usuario. La clase ChatMessageHistory de LangChain permite a la aplicación guardar mensajes en una base de datos y recuperarlos cuando sea necesario para formular más respuestas. Un mensaje puede ser una pregunta, una respuesta, una declaración, un saludo o cualquier otro texto que el usuario o la aplicación proporcione durante la conversación. ChatMessageHistory almacena los mensajes y los encadena para cada conversación.

Memorystore for Redis extiende esta clase con MemorystoreChatMessageHistory.

Guía de procedimiento del historial de mensajes de chat

En la guía de Memorystore para Redis sobre el historial de mensajes de chat, se muestra cómo realizar las siguientes acciones:

  • Instala LangChain y autentícate en Google Cloud
  • Inicializa la clase MemorystoreChatMessageHistory para agregar y borrar mensajes.