বর্তমানে সবচেয়ে জনপ্রিয় AI ফ্রেমওয়ার্কটির একটি মারাত্মক ত্রুটি রয়েছে
এখন সবাই সবকিছুকেই 'এজেন্ট' (agent) বলে ডাকছে।
একটি টুল কল করা ফাংশন হলো একটি এজেন্ট। মেমরি সম্পন্ন একটি চ্যাটবট হলো একটি এজেন্ট। লুপ যুক্ত একটি স্ক্রিপ্ট হলো একটি এজেন্ট। এটি একটি ভুল ধারণা।
যখন আপনার কাছে একটি স্পষ্ট সংজ্ঞা থাকে না, তখন আপনি সহজ কাজগুলোকে অতিরিক্ত জটিল (over-engineer) করে ফেলেন। আবার জটিল কাজগুলোকে যথেষ্ট গুরুত্ব দেন না (under-engineer)। আমি দেখি অনেক টিম এমন সব ওয়ার্কফ্লোর জন্য এজেন্টিক অর্কেস্ট্রেশনে (agentic orchestration) সপ্তাহ পার করে দেয়, যেগুলোর জন্য কেবল একটি ভালো প্রম্পটই যথেষ্ট ছিল।
একটি এজেন্টের একটি লক্ষ্য (objective) প্রয়োজন, কেবল একটি নির্দেশ নয়। একটি এজেন্ট সিদ্ধান্ত নেয় পরবর্তীতে কী করতে হবে। এটি ব্যর্থতা সামাল দেয়। এটি জানে কখন তার কাজ শেষ হয়েছে।
- যদি একজন মানুষ সিস্টেমকে প্রতিটি ধাপ বলে দেয়, তবে সেটি একটি চ্যাট ইন্টারফেস।
- যদি একটি সিস্টেম একটি ব্যর্থ টুল কল থেকে পুনরুদ্ধার করতে পারে, তবে আপনি সঠিক পথে এগোচ্ছেন।
- যদি একটি সিস্টেম একটি লক্ষ্যকে উপ-কাজে (subtasks) বিভক্ত করতে পারে, তবে সেটিই হলো প্রকৃত এজেন্ট।
বেশিরভাগ সফল এজেন্ট হলো নির্দিষ্ট কাজের জন্য (narrow)। তারা একটি কাজ খুব ভালোভাবে করে। তারা কাস্টমার সাপোর্ট বা ডকুমেন্ট এক্সট্রাকশন সামাল দেয়। তারা সাধারণ রিজনিং ইঞ্জিন (general reasoning engines) নয়।
সফল টিমগুলো এই তিনটি ক্ষেত্রে মনোযোগ দেয়:
- টুল ডিজাইন: ইন্টারফেসটি কতটা পরিচ্ছন্ন?
- ব্যর্থতা সামলানো (Failure handling): যখন একটি টুল কোনো ফলাফল দেয় না তখন কী ঘটে?
- অবজারভেবিলিটি (Observability): এজেন্ট কেন একটি সিদ্ধান্ত নিল তা কি আপনি ট্র্যাক করতে পারেন?
যেসব টিম তাদের আর্কিটেকচার পরিবর্তন না করে কেবল মডেল পরিবর্তন করে আরও ভালো ফলাফলের আশা করে, তারা ব্যর্থ হবে।
LangChain বা CrewAI-এর মতো ফ্রেমওয়ার্কগুলোর চেয়ে প্যাটার্নগুলো বেশি গুরুত্বপূর্ণ। টুল যাই হোক না কেন, প্যাটার্নগুলো কাজ করে।
এই প্যাটার্নগুলো ব্যবহার করুন:
- পরিকল্পনা তারপর সম্পাদন (Plan then execute): পরিকল্পনা করার জন্য একটি ধাপ এবং সম্পাদন করার জন্য একটি আলাদা ধাপ ব্যবহার করুন।
- রিট্রিভাল এবং রিজনিং আলাদা রাখুন (Separate retrieval from reasoning): ডেটা সংগ্রহ করা এবং ডেটা ব্যবহার করা দুটি ভিন্ন কাজ।
- স্পষ্ট হ্যান্ডঅফ (Explicit handoffs): যখন একটি এজেন্ট অন্য এজেন্টের কাছে কাজ হস্তান্তর করে, তখন স্ট্রাকচার্ড লগ ব্যবহার করুন।
ফ্রেমওয়ার্ক হলো মাচা (scaffolding)। আর্কিটেকচার হলো মূল ভবন।
RAG-ও ব্যর্থতার একটি কারণ। বেশিরভাগ মানুষ চাঙ্কিং (chunking) ভুলভাবে করে। আপনি যদি একটি ডকুমেন্টকে সঠিকভাবে ভাগ করতে না পারেন, তবে মডেলটি তার প্রেক্ষাপট (context) হারিয়ে ফেলবে।
যদি আপনার RAG সঠিক কিন্তু অকেজো ফলাফল প্রদান করে, তবে আপনার চাঙ্কিং বা মেটাডেটা ঠিক করুন। এমবেডিং মডেলকে (embedding model) দোষ দেবেন না।
বেঞ্চমার্কের পেছনে ছোটা বন্ধ করুন। এমন সিস্টেম তৈরির দিকে মনোযোগ দিন যা আপনি বিশ্বাস করতে পারেন। গভর্নেন্স, অবজারভেবিলিটি এবং নির্ভরযোগ্য টুল ব্যবহারের দিকে মনোযোগ দিন।
গুরুত্বপূর্ণ ইঞ্জিনিয়ার তারাই হবেন যারা এমন সিস্টেম তৈরি করবেন যা অন্যরা রক্ষণাবেক্ষণ করতে পারে। এটি সিস্টেম ডিজাইন, মডেল রিসার্চ নয়।
Source: https://dev.to/aibughunter/the-hottest-ai-framework-right-now-has-a-fatal-flaw-nobody-mentions-3hd1
Optional learning community: https://t.me/GyaanSetuAi