চেইনে মেমোরি – একদম সহজ
মেমোরি মানে কি? আগের কথা মনে রাখা। যেমন: তুমি বললে “আমার নাম রহিম”, পরে জিজ্ঞাসা করলে “আমার নাম কি?” – সে মনে রাখবে!
১. মেমোরি ছাড়া (মনে রাখে না)
from langchain_groq import ChatGroq
from dotenv import load_dotenv
load_dotenv()
ai = ChatGroq(model="mixtral-8x7b-32768")
# প্রথমবার
print(ai.invoke("আমার নাম রহিম").content)
# দ্বিতীয়বার
print(ai.invoke("আমার নাম কি?").content)
আউটপুট:
হ্যালো রহিম!
দুঃখিত, আমি জানি না। তুমি কি আমাকে বলেছো?
❌ মনে রাখে নি!
২. মেমোরি সহ (মনে রাখবে)
from langchain_groq import ChatGroq
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
from dotenv import load_dotenv
load_dotenv()
ai = ChatGroq(model="mixtral-8x7b-32768")
# মেমোরি যোগ করো
memory = ConversationBufferMemory()
# চেইন তৈরি করো মেমোরি দিয়ে
conversation = ConversationChain(
llm=ai,
memory=memory
)
# প্রথমবার
print(conversation.predict(input="আমার নাম রহিম"))
# দ্বিতীয়বার
print(conversation.predict(input="আমার নাম কি?"))
আউটপুট:
হ্যালো রহিম! কেমন আছো?
তোমার নাম রহিম।
✅ মনে রেখেছে!
৩. চ্যাটবট বানাও (মেমোরি সহ)
from langchain_groq import ChatGroq
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
from dotenv import load_dotenv
load_dotenv()
ai = ChatGroq(model="mixtral-8x7b-32768")
memory = ConversationBufferMemory()
conversation = ConversationChain(llm=ai, memory=memory)
print("চ্যাটবট: হ্যালো! (exit লিখলে বন্ধ হবে)\n")
while True:
user_input = input("তুমি: ")
if user_input.lower() == "exit":
print("চ্যাটবট: বাই!")
break
response = conversation.predict(input=user_input)
print(f"চ্যাটবট: {response}\n")
ব্যবহার:
তুমি: আমার নাম করিম
চ্যাটবট: হ্যালো করিম! কেমন আছো?
তুমি: আমি ঢাকায় থাকি
চ্যাটবট: বাহ! ঢাকা তো সুন্দর শহর।
তুমি: আমি কোথায় থাকি?
চ্যাটবট: তুমি ঢাকায় থাকো।
তুমি: আমার নাম কি?
চ্যাটবট: তোমার নাম করিম।
৪. মেমোরি দেখো (কি কি মনে আছে)
from langchain_groq import ChatGroq
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
from dotenv import load_dotenv
load_dotenv()
ai = ChatGroq(model="mixtral-8x7b-32768")
memory = ConversationBufferMemory()
conversation = ConversationChain(llm=ai, memory=memory)
# কিছু কথা বলো
conversation.predict(input="আমার নাম রহিম")
conversation.predict(input="আমার বয়স ২৫")
# মেমোরি দেখো
print("মেমোরিতে যা আছে:")
print(memory.buffer)
আউটপুট:
মেমোরিতে যা আছে:
Human: আমার নাম রহিম
AI: হ্যালো রহিম!
Human: আমার বয়স ২৫
AI: বুঝলাম, তুমি ২৫ বছর বয়সী।
৫. মেমোরি রিসেট করো (ভুলে যাও)
from langchain_groq import ChatGroq
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
from dotenv import load_dotenv
load_dotenv()
ai = ChatGroq(model="mixtral-8x7b-32768")
memory = ConversationBufferMemory()
conversation = ConversationChain(llm=ai, memory=memory)
# কথা বলো
conversation.predict(input="আমার নাম রহিম")
print(conversation.predict(input="আমার নাম কি?"))
# মেমোরি সাফ করো
memory.clear()
# আবার জিজ্ঞাসা করো
print(conversation.predict(input="আমার নাম কি?"))
আউটপুট:
তোমার নাম রহিম।
দুঃখিত, আমি জানি না।
সারসংক্ষেপ
| জিনিস | কাজ |
|---|---|
ConversationBufferMemory() | মেমোরি তৈরি (মনে রাখার জন্য) |
ConversationChain() | চেইন তৈরি মেমোরি দিয়ে |
memory.buffer | মেমোরিতে কি আছে দেখো |
memory.clear() | মেমোরি সাফ করো |
মূল কথা: ConversationChain + memory = আগের কথা মনে রাখবে! 🧠