¿Cómo agregar estado de memoria en cadena usando LangChain?

Como Agregar Estado De Memoria En Cadena Usando Langchain



LangChain permite a los desarrolladores crear modelos de chat que pueden conversar con humanos utilizando lenguajes naturales. Para tener una conversación eficaz, el modelo debe tener memoria de dónde se almacena el contexto de la conversación. Los modelos LangChain pueden almacenar los mensajes de chat como observaciones para que el resultado pueda estar dentro del contexto de la conversación todo el tiempo.

Esta guía ilustrará el proceso de carga de cadenas desde LangChain Hub.

¿Cómo agregar estado de memoria en cadena usando LangChain?

El estado de la memoria se puede utilizar para inicializar las cadenas, ya que puede hacer referencia al valor reciente almacenado en las cadenas que se utilizará al devolver la salida. Para conocer el proceso de agregar un estado de memoria en cadenas utilizando el marco LangChain, simplemente consulte esta sencilla guía:







Paso 1: instalar módulos

En primer lugar, ingrese al proceso instalando el marco LangChain con sus dependencias usando el comando pip:



pip instalar cadena larga



Instale también el módulo OpenAI para obtener sus bibliotecas que se pueden usar para agregar el estado de la memoria en la cadena:





instalación de pip en openai

Obtenga la clave API de la cuenta OpenAI y configurar el entorno usándolo para que las cadenas puedan acceder a él:



importar

importar conseguir pase

. alrededor de [ 'OPENAI_API_KEY' ] = conseguir pase . conseguir pase ( 'Clave API de OpenAI:' )

Este paso es importante para que el código funcione correctamente.

Paso 2: importar bibliotecas

Después de configurar el entorno, simplemente importe las bibliotecas para agregar el estado de la memoria, como LLMChain, ConversationBufferMemory y muchas más:

de cadena larga. cadenas importar Cadena de conversación

de cadena larga. memoria importar ConversaciónBufferMemoria

de cadena larga. modelos_chat importar ChatOpenAI

de cadena larga. cadenas . llm importar LLMChain

de cadena larga. indicaciones importar Plantilla de aviso

Paso 3: construir cadenas

Ahora, simplemente cree cadenas para el LLM usando el método OpenAI() y la plantilla del mensaje usando la consulta para llamar a la cadena:

charlar = ChatOpenAI ( temperatura = 0 )

plantilla_indicador = 'Escribe un chiste de {estilo}'

cadena_llm = LLMChain ( llm = charlar , inmediato = Plantilla de solicitud. de la plantilla ( plantilla_indicador ) )

cadena_llm ( entradas = { 'estilo' : 'cursi' } )

El modelo ha mostrado el resultado utilizando el modelo LLM como se muestra en la siguiente captura de pantalla:

Paso 4: Agregar estado de memoria

Aquí agregaremos el estado de la memoria en la cadena usando el método ConversationBufferMemory() y ejecutaremos la cadena para obtener 3 colores del arco iris:

conversación = Cadena de conversación (

llm = charlar ,

memoria = ConversaciónBufferMemoria ( )

)

conversación. correr ( 'Da brevemente los 3 colores del arcoíris' )

El modelo ha mostrado sólo tres colores del arcoíris y el contexto está almacenado en la memoria de la cadena:

Aquí estamos ejecutando la cadena con un comando ambiguo como ' otros 4? ”para que el modelo obtenga el contexto de la memoria y muestre los colores restantes del arco iris:

conversación. correr ( '¿otros 4?' )

El modelo hizo exactamente eso, ya que entendió el contexto y devolvió los cuatro colores restantes del conjunto del arcoíris:

Se trata de cargar cadenas desde LangChain Hub.

Conclusión

Para agregar la memoria en cadenas usando el marco LangChain, simplemente instale módulos para configurar el entorno para construir el LLM. Después de eso, importe las bibliotecas necesarias para construir las cadenas en el LLM y luego agréguele el estado de la memoria. Después de agregar el estado de la memoria a la cadena, simplemente dé un comando a la cadena para obtener el resultado y luego dé otro comando dentro del contexto del anterior para obtener la respuesta correcta. Esta publicación ha detallado el proceso de agregar un estado de memoria en cadenas utilizando el marco LangChain.