এজেন্ট সেশন মেমরি কোনো ফিচার নয়। এটি আপনার কন্ট্রোল প্ল্যান।

বেশিরভাগ টিম মনে করে এজেন্ট মেমরি মানেই হলো ভেক্টর ডেটাবেস। তারা ভুল ভাবছে।

আসল সমস্যা হলো কনভারসেশন স্টেট (conversation state)। যখন আপনার এজেন্ট রিস্টার্ট হয়, তখন কনটেক্সট (context) কার কাছে থাকে?

এটি ইউজার এক্সপেরিয়েন্সের সমস্যা নয়। এটি একটি ইনফ্রাস্ট্রাকচার সমস্যা।

নষ্ট হওয়া সময়ের হিসাবটি এখানে দেওয়া হলো: আপনি একটি কোডিং এজেন্ট শুরু করলেন। এটি আপনার রিপোজিটরি পড়তে এবং একটি মেন্টাল মডেল তৈরি করতে ৪৫ সেকেন্ড সময় ব্যয় করে। তারপর, একটি পড (pod) রিস্টার্ট হলো, একটি কন্টেইনার ক্র্যাশ করল, অথবা আপনি টুল পরিবর্তন করলেন। আপনার পরবর্তী সেশনে সেই একই মডেলটি পুনরায় তৈরি করতে আরও ৪৫ সেকেন্ড সময় নষ্ট হয়।

যদি ১০ জন ডেভেলপার দিনে ৩ বার এটি করেন, তবে আপনি প্রতিদিন জনপ্রতি ২২৫ সেকেন্ড হারাবেন। বড় পরিসরে দেখলে, আপনি 'স্টেটলেস অ্যামনেসিয়া'র (stateless amnesia) কারণে শত শত ইঞ্জিনিয়ারিং ঘণ্টা হারিয়ে ফেলছেন।

ভুলটি হলো মেমরিকে একটি সিঙ্গেল ফ্রেমওয়ার্কের ভেতরের ফিচার হিসেবে বিবেচনা করা। এটি আসলে তেমন নয়। সেশন মেমরি আপনার রানটাইমের (runtimes) উপরের ইনফ্রাস্ট্রাকচার লেয়ারে থাকা উচিত।

LangGraph বা AutoGen-এর মতো ফ্রেমওয়ার্কগুলো তাদের নিজস্ব সীমানার মধ্যে মেমরি প্রদান করে। কিন্তু যখন আপনার প্রয়োজন হয়:

  • Claude এবং Cursor-এর মতো বিভিন্ন রানটাইমে এজেন্ট চালানো।
  • টিমের সদস্যদের মধ্যে স্টেট শেয়ার করা।
  • কনটেক্সট না হারিয়ে রিস্টার্ট থেকে টিকে থাকা।
  • একটি প্রজেক্ট জুড়ে এজেন্টের কাজগুলো অডিট করা।

আপনাকে মেমরির তিন ধরনের ধরন বুঝতে হবে:

  • সেশন মেমরি (Session Memory): একটি ইন্টারঅ্যাকশনের ইতিহাস।
  • এপিসোডিক মেমরি (Episodic Memory): সপ্তাহ বা মাসব্যাপী সংরক্ষিত ইভেন্ট।
  • সিম্যান্টিক মেমরি (Semantic Memory): ডেটাবেসে সংরক্ষিত তথ্য এবং প্যাটার্ন।

প্রোডাকশন টিমগুলো এজেন্ট ব্রেইনকে (agent brain) রানটাইম থেকে আলাদা করে এই সমস্যার সমাধান করে। ব্রেইন একটি পারসিস্টেন্ট পডে (persistent pod) রিজনিং বা যুক্তি প্রদান করে। স্যান্ডবক্স একটি এফেমারেল এনভায়রনমেন্টে (ephemeral environment) এক্সিকিউশন বা কাজ সম্পাদন করে।

২০২৬ সালে, টিমগুলো একটি প্ল্যাটফর্ম ব্যবহার করবে না। তারা অনেকগুলো ব্যবহার করবে। এটি ফ্র্যাগমেন্টেশন (fragmentation) তৈরি করে। একটি সেশন থাকে Claude-এ। অন্যটি থাকে লোকাল ফাইলে। আরেকটি থাকে ডেটাবেসে। ফলে আপনি কাজ সার্চ করার বা হস্তান্তর করার ক্ষমতা হারিয়ে ফেলেন।

বড় মডেল দিয়ে এটি ঠিক করার চেষ্টা করা বন্ধ করুন। উন্নত ইনফ্রাস্ট্রাকচার দিয়ে এটি সমাধান করুন।

নিজেকে এই তিনটি প্রশ্ন করুন: ১. আমার এজেন্ট কি রিস্টার্টের পরেও টিকে থাকতে পারে? ২. আমার টিম কি এজেন্ট সেশনগুলো শেয়ার করতে পারে? ৩. আমার এজেন্টগুলো কি বিভিন্ন রানটাইমের মধ্যে কনটেক্সট শেয়ার করতে পারে?

আপনি যদি 'হ্যাঁ' উত্তর দিতে না পারেন, তবে আপনি প্রোডাক্টিভিটি নষ্ট করছেন।

এমন একটি কন্ট্রোল প্ল্যান তৈরি করুন যা সেশন স্টেটকে ডিউরেবল (durable), সার্চেবল (searchable) এবং শেয়ারেবল (shareable) করে তোলে।

Source: https://dev.to/paultwist/agent-session-memory-isnt-a-feature-its-your-control-plane-1c2p

Optional learning community: https://t.me/GyaanSetuAi