Memoria de Resumen de Conversaciones con Chat GPT-3.5
Clase 33 de 37 • Curso de LangChain
Resumen
¿Qué es la memoria Conversation Summary Memory?
La memoria Conversation Summary Memory permite la creación de un resumen de todas las interacciones mantenidas en una conversación. A diferencia de guardar cada interacción individualmente, este enfoque guarda un resumen que encapsula el contenido de la conversación. Esta técnica es ideal para conversaciones extensas, permitiendo mantener una visión general sin recopilar cada mensaje por separado.
¿Cómo se configuran las bibliotecas necesarias?
Para implementar este tipo de memoria, es esencial contar con algunas bibliotecas clave:
- Memory en Chains: Importa
ConversationSummaryMemory
para gestionar las interacciones. - OpenAI desde LangChain: Utiliza los modelados de lenguaje de OpenAI para procesar las conversaciones.
- Chains, Conversation Chain: Crea cadenas de conversación basadas en modelos AI.
from langchain.memory import ConversationSummaryMemory
from langchain.llms import OpenAI
from langchain.chains import ConversationChain
¿Cómo se instancian modelo y memoria?
Creación del modelo
Primero, instanciamos un modelo de chat de OpenAI. En este caso, el modelo específico es GPT-3.5 Turbo.
chat_model = OpenAI.ChatCompletion(model="gpt-3.5-turbo")
Configuración de la memoria
Creamos la memoria, denominada SummaryMemory
, definiendo el modelo que se encargará de gestionar el resumen de las interacciones:
summary_memory = ConversationSummaryMemory(model=chat_model)
¿Cómo se realiza una conversación simulada?
Una vez configurada la instancia del modelo y la memoria, podemos proceder a generar una cadena de conversación.
Instanciación y seguimiento
Creamos un objeto de ConversationChain
, utilizando chat_model
, con la opción verbose=True
para seguir el flujo detallado:
conversation = ConversationChain(
model=chat_model,
verbose=True,
memory_type=summary_memory
)
Ejemplos de interacción
-
Iniciamos la conversación: Se observa cómo
verbose=True
brinda contexto sobre las interacciones. Aquí, el papel de la inteligencia artificial y el ser humano se define claramente. -
Primer intercambio: Omar, el interlocutor humano, se presenta de manera coloquial, y la inteligencia artificial responde de manera cordial y amistosa.
-
Más interacción: Se continúan las preguntas y respuestas, donde se puede consultar temas complejos como la historia latinoamericana y la opresión indígena. El resumen se llena con las interacciones, destacando preguntas importantes y el estilo de comunicación coloquial de Omar.
Ventajas de usar Conversation Summary Memory
- Contexto en conversaciones largas: Ideal para mantener una visión general de interacciones extensas sin perder detalles críticos.
- Memoria eficiente: Guarda el contexto necesario para construir respuestas informadas sin sobrecargar la memoria.
- Acceso a resúmenes: Posibilidad de imprimir y revisar el resumen de la conversación, simplificando el seguimiento de temas tratados.
Esta herramienta ofrece una manera efectiva de manejar conversaciones complejas en aplicaciones donde el contexto y la memoria de las interacciones son esenciales.