1. Home
  2. LangChain
  3. সিলেবাস সহজ
  4. মডিউল ৩: চেইন (Chain)
  5. চেইনে মেমোরি –

চেইনে মেমোরি –

চেইনে মেমোরি – একদম সহজ

মেমোরি মানে কি? আগের কথা মনে রাখা। যেমন: তুমি বললে “আমার নাম রহিম”, পরে জিজ্ঞাসা করলে “আমার নাম কি?” – সে মনে রাখবে!


১. মেমোরি ছাড়া (মনে রাখে না)

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 = আগের কথা মনে রাখবে! 🧠

How can we help?