¿Cómo utilizar el búfer de resumen de conversación en LangChain?

Como Utilizar El Bufer De Resumen De Conversacion En Langchain



LangChain es el marco con todas las dependencias y bibliotecas para construir modelos que puedan comprender conjuntos de datos en lenguajes naturales. Estos modelos también pueden generar texto en lenguajes naturales o extraer los datos más similares en función de las entradas proporcionadas por el usuario. Los chatbots o LLM se utilizan para entablar conversaciones con humanos y extraer un resumen de la conversación utilizando todos los mensajes.

Esta guía ilustrará el proceso de uso de un búfer de resumen de conversación en LangChain.

¿Cómo utilizar un búfer de resumen de conversación en LangChain?

La conversación puede comprender múltiples mensajes que son como una interacción entre humanos y máquinas y el búfer puede almacenar los mensajes más recientes. El ConversaciónResumenBufferMemoria La biblioteca se utiliza para combinar ambos conceptos, como almacenar los mensajes más recientes y extraer su resumen.







Para conocer el proceso de uso del búfer de resumen de conversaciones en LangChain, simplemente consulte la siguiente guía:



Paso 1: instalar módulos

Primero, instale el módulo LangChain usando el comando pip para obtener las bibliotecas necesarias:



pip instalar cadena larga





Instale el tokenizador tiktoken que se puede utilizar para dividir los documentos de texto en pequeños fragmentos:

instalar pip tiktoken



Después de eso, instale los módulos OpenAI que se pueden usar para crear modelos de lenguaje como LLM y cadenas:

instalación de pip en openai

Ahora, configurar el entorno obteniendo la clave API de la cuenta OpenAI y usándola en el modelo:

importar
importar conseguir pase

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

Paso 2: usar el búfer de resumen de conversación

Inicie el proceso de uso del búfer de resumen de conversación importando las bibliotecas para crear el LLM usando el método OpenAI():

de cadena larga. memoria importar ConversaciónResumenBufferMemoria

de cadena larga. llms importar AbiertoAI

llm = AbiertoAI ( )

Construya la memoria usando el método ConversationSummaryBufferMemory() y luego almacene la conversación en la memoria:

memoria = ConversaciónResumenBufferMemoria ( llm = llm , límite_max_token = 10 )

memoria. guardar_contexto ( { 'aporte' : 'Hola' } , { 'producción' : 'Cómo estás' } )

memoria. guardar_contexto ( { 'aporte' : 'Estoy bien, y tu' } , { 'producción' : 'poco' } )

Ahora, ejecute la memoria llamando al variables_memoria_carga () método para extraer mensajes de la memoria:

memoria. variables_memoria_carga ( { } )

Ahora, utilice el resumen del búfer de la conversación para configurar el búfer limitando la cantidad de mensajes que se almacenarán en el búfer. Después de eso, extrae el resumen de estos mensajes almacenados en el búfer y luego almacena la conversación en la memoria:

memoria = ConversaciónResumenBufferMemoria (

llm = llm , límite_max_token = 10 , mensajes_devueltos = Verdadero

)

memoria. guardar_contexto ( { 'aporte' : 'Hola' } , { 'producción' : 'Cómo estás' } )

memoria. guardar_contexto ( { 'aporte' : 'Estoy bien, y tu' } , { 'producción' : 'poco' } )

Obtenga el resumen de los mensajes anteriores almacenados en la memoria buffer usando el siguiente código:

mensajes = memoria. memoria_chat . mensajes

resumen_anterior = ''

memoria. predecir_nuevo_summary ( mensajes , resumen_anterior )

Paso 3: usar el búfer de resumen de conversación en una cadena

Construye las cadenas usando el Cadena de conversación() método que contiene el valor de la memoria buffer para almacenar el mensaje en ella:

de cadena larga. cadenas importar Cadena de conversación

conversación_con_resumen = Cadena de conversación (
llm = llm ,
memoria = ConversaciónResumenBufferMemoria ( llm = AbiertoAI ( ) , límite_max_token = 40 ) ,
verboso = Verdadero ,
)
conversación_con_summary. predecir ( aporte = '¿Hola que tal?' )

Proporcione la entrada en forma de texto utilizando el método predict() para obtener el resumen de la conversación:

conversación_con_summary. predecir ( aporte = 'Simplemente estoy trabajando en el proyecto de PNL' )

Utilice la salida del modelo y agregue más datos usando los mensajes en la memoria intermedia y muestre su resumen:

conversación_con_summary. predecir ( aporte = '¡Sí, lo es! Estoy trabajando en el diseño de LLM' )

El resumen es que el resultado será fácilmente comprensible, más amigable para los humanos y más adecuado para chatbots:

conversación_con_summary. predecir (

aporte = '¡Quiero usar LangChain! ¿Has oído hablar de él?'

)

Se trata de utilizar el búfer de resumen de conversaciones en LangChain.

Conclusión

Para utilizar la memoria intermedia de resumen de conversaciones en LangChain, simplemente instale los módulos o marcos para obtener las bibliotecas necesarias. Una vez importadas las bibliotecas, cree los LLM o chatbots para usar la función ConverstaionSummaryBufferMemory() para obtener el resumen de la conversación. La memoria intermedia se utiliza para limitar la cantidad de mensajes almacenados en la memoria que se utilizarán para extraer el resumen. Esta publicación ha detallado el proceso de uso de la memoria intermedia de resumen de conversaciones en LangChain.