LangChain_HF / LangChain_Memory /4_ConversationBufferWindowMemory.py
EddyGiusepe's picture
Estudo de Memory
df72f93
"""
Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
Objetivo: Estudar o uso de Memória no LangChain,
para ter ChatBots mais inteligentes.
"""
import os
import openai
from dotenv import find_dotenv, load_dotenv
_ = load_dotenv(find_dotenv()) # read local .env file
openai.api_key = os.getenv('OPENAI_API_KEY')
from langchain.chat_models import ChatOpenAI
from langchain.chains import ConversationChain
from langchain.memory import ConversationBufferWindowMemory
import redis
redis_client = redis.StrictRedis(host='localhost', port=6379, db=0)
from langchain.memory import RedisChatMessageHistory
history1 = RedisChatMessageHistory("chat_history1")
memory = ConversationBufferWindowMemory(k=5)
llm = ChatOpenAI(temperature=0.0,
max_tokens=120,
verbose=False
)
conversation = ConversationChain(llm=llm,
verbose=False,
memory=memory
)
memory.chat_memory.add_user_message("Meu nome é Eddy Giusepe.")
memory.chat_memory.add_user_message("Eu sou Cientista de dados e trabalho na central IT.")
memory.chat_memory.add_user_message("Eu nasci em Perú.")
memory.chat_memory.add_user_message("Eu moro no Brasil e estudo na Universidade UFES.")
print("Digite a sua pergunta para começar uma conversa com a AI: ")
while True:
query = input("Human: ")
result = conversation({"input": query})
print("AI: " + result['response'])
#print("🤗🤗🤗")
#history1.add_user_message(query)
if not query:
break