𝗧𝗵𝗲 𝗥𝗶𝗴𝗵𝘁 𝗪𝗮𝘆 𝗧𝗼 𝗕𝘂𝗶𝗹𝗱 𝗔𝗡 𝗔𝗜 𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 আমি আগে ভাবতাম আমার AI অ্যাসিস্ট্যান্টকে আরও বুদ্ধিমান করার মানে হলো একই লুপে আরও বেশি টুলস যোগ করা। এটি কিছু সময়ের জন্য কাজ করেছিল। কিন্তু তারপর আমার অ্যাসিস্ট্যান্টকে চ্যাট থেকে কোনো কাজ চালিয়ে যাওয়া, স্ট্যাটাস সংক্রান্ত প্রশ্নের উত্তর দেওয়া বা কোনো ওয়ার্কফ্লো (workflow) মনে রাখার মতো সাধারণ ব্যবহারকারীর কাজগুলো করতে হলো।
সমস্যাটি আমার অ্যাসিস্ট্যান্ট কতগুলো টুলস ব্যবহার করতে পারে তা নিয়ে ছিল না, বরং সমস্যাটি ছিল এর আর্কিটেকচার নিয়ে। পুরনো আর্কিটেকচারটি ছিল সহজ: ইউজার মেসেজ -> অ্যাসিস্ট্যান্ট লুপ -> টুলস -> উত্তর। এটি একটি ডেমোর জন্য ঠিক আছে, কিন্তু একজন রেসিডেন্ট অ্যাসিস্ট্যান্টের (resident assistant) জন্য নয়।
একজন রেসিডেন্ট অ্যাসিস্ট্যান্টকে জানতে হয় যে একটি মেসেজ কি নতুন কোনো কাজ, ফলো-আপ নাকি কোনো কাজ বাতিল করা। তাকে অন্য কোনো কাজের ডেস্কটপ দখল করা থেকে বিরত থাকতে হয় এবং পুরনো ট্রান্সক্রিপ্ট ব্যবহার না করেই পদ্ধতিগুলো মনে রাখতে হয়।
তাই আমি আমার অ্যাসিস্ট্যান্টকে একটি একক এজেন্ট হিসেবে ভাবা বন্ধ করে দিলাম এবং এটিকে একটি লোকাল কন্ট্রোল প্লেন (local control plane) হিসেবে বিবেচনা করতে শুরু করলাম। এখন আমার আর্কিটেকচারটি দেখতে অনেকটা এরকম:
- Experience Plane: ইউজার কোথা থেকে কথা বলছেন তা নিয়ন্ত্রণ করে
- Assistant Control Plane: এটি কী ধরণের কাজ তা নির্ধারণ করে
- Runtime Execution Plane: যেখানে কোডিংয়ের কাজ সম্পন্ন হয়
- Proxy / Model Access Plane: প্রোভাইডার সংক্রান্ত কাজগুলো পরিচালনা করে
আমার একটি Observation Plane এবং একটি Memory / Policy Plane-ও আছে। এই প্লেনগুলো আমার অ্যাসিস্ট্যান্টকে সুশৃঙ্খল থাকতে এবং তার কাজের ওপর মনোনিবেশ করতে সাহায্য করে।
সবচেয়ে বড় উন্নতিটি এসেছে আমার অ্যাসিস্ট্যান্টকে র (raw) লগ-এর পরিবর্তে অবজারভেশন (observations) ব্যবহার করতে শেখানোর মাধ্যমে। এটি আমার অ্যাসিস্ট্যান্টকে একটি বিশাল ট্রান্সক্রিপ্ট পড়ার পরিবর্তে "Task X is waiting for approval"-এর মতো সংক্ষিপ্ত তথ্য দেখতে সাহায্য করে।
আমি শিখেছি যে "মনে রাখা" মানে প্রম্পটে আরও বেশি চ্যাট হিস্ট্রি ঢুকিয়ে দেওয়া নয়। আমার অ্যাসিস্ট্যান্টের জন্য মেমরি হলো ফাইল-ভিত্তিক এবং স্কোপড (scoped)। এটি একটি ওয়ার্কফ্লো, একটি তথ্য বা একটি রেফারেন্স সংরক্ষণ করতে পারে এবং প্রয়োজনে তা পুনরায় মনে করতে পারে।
আপনি যদি বিদ্যমান টুলসগুলোর ওপর ভিত্তি করে এজেন্ট তৈরি করেন, তবে আপনি কি সবকিছু একটি লুপের ভেতরেই রাখছেন, নাকি আপনিও কন্ট্রোল, এক্সিকিউশন, অবজারভেশন এবং মেমরি আলাদা করতে শুরু করেছেন? উৎস: https://dev.to/codekingai/my-ai-assistant-needed-a-control-plane-not-a-bigger-loop-15aa ঐচ্ছিক লার্নিং কমিউনিটি: https://t.me/GyaanSetuAi