আপনার AI এজেন্টের আরও বুদ্ধিমান হওয়ার প্রয়োজন নেই। এর প্রয়োজন হলো আইডেমপোটেন্ট (Idempotent) হওয়া।
বেশিরভাগ প্রোডাকশন AI এজেন্ট খারাপ যুক্তির কারণে ব্যর্থ হয় না। তারা ব্যর্থ হয় নেটওয়ার্ক ত্রুটির কারণে।
মডেলটি সঠিক টুল বেছে নেয়। এটি সঠিক তথ্য পূরণ করে। তারপর, এটি একজন গ্রাহকের কাছ থেকে দুবার চার্জ করে ফেলে।
এটি ঘটে কারণ রাইট-ক্ষমতাসম্পন্ন (write-capable) এজেন্টরা অনির্ভরযোগ্য নেটওয়ার্কে কাজ করে।
- রিকোয়েস্ট টাইম আউট হয়।
- কানেকশন বিচ্ছিন্ন হয়ে যায়।
- ফ্রেমওয়ার্কগুলো ইতিমধ্যে সম্পন্ন হওয়া ধাপগুলো পুনরায় চেষ্টা (retry) করে।
একটি রিড-অনলি (read-only) এজেন্টের ক্ষেত্রে, রিট্রাই করা কোনো সমস্যা নয়। কিন্তু একটি রাইট-ক্ষমতাসম্পন্ন এজেন্টের ক্ষেত্রে, রিট্রাই করা মানে হলো দ্বিতীয়বার একটি অপরিবর্তনীয় কাজ করা।
এর সমাধান হলো আইডেমপোটেন্সি (idempotency)।
এই সাধারণ ব্যর্থতার উদাহরণটি দেখুন:
- এজেন্ট একটি ইনভয়েস পাঠানোর জন্য একটি ফাংশন কল করে।
- সার্ভিসটি ইনভয়েসটি তৈরি করে।
- রেসপন্স এজেন্টের কাছে পৌঁছানোর আগেই কানেকশন বিচ্ছিন্ন হয়ে যায়।
- এজেন্ট একটি টাইম আউট দেখে এবং পুনরায় চেষ্টা (retry) করে।
- এখন, আপনার কাছে দুটি ইনভয়েস রয়েছে।
একটি আরও বুদ্ধিমান মডেল এটি সমাধান করতে পারবে না। একটি আরও বুদ্ধিমান মডেল রিট্রাই করার ক্ষেত্রে আরও বেশি আক্রমণাত্মক হয়ে পরিস্থিতি আরও খারাপ করে তুলতে পারে।
আপনি Stripe-এর মতো পেমেন্ট সিস্টেম থেকে শিখতে পারেন। তারা একটি Idempotency-Key ব্যবহার করে। সার্ভার প্রথম রিকোয়েস্টের ফলাফল সংরক্ষণ করে রাখে। যদি ক্লায়েন্ট আবার একই কী (key) পাঠায়, তবে সার্ভার কাজটি দ্বিতীয়বার না চালিয়ে সংরক্ষিত ফলাফলটি ফিরিয়ে দেয়।
একটি AI এজেন্টের জন্য, আপনাকে অবশ্যই ইনটেন্ট (intent) থেকে এই কীটি তৈরি করতে হবে।
র্যান্ডম আইডি ব্যবহার করবেন না। টুলের নাম এবং এর স্থিতিশীল প্যারামিটারগুলোর (stable parameters) একটি হ্যাশ (hash) ব্যবহার করুন।
উদাহরণ:
- Tool: charge_customer
- Params: {customer_id: 42, amount: 500}
- Key: hash(tool + params)
যদি এজেন্ট ঠিক একই চার্জ করার জন্য পুনরায় চেষ্টা করে, তবে কীটি একই থাকে। সিস্টেম এটি শনাক্ত করে এবং ডুপ্লিকেট চার্জ প্রতিরোধ করে।
একটি সতর্কবার্তা: আপনার কী (key) কতটা কার্যকর তা নির্ভর করে আপনি একটি একক কাজকে (single action) কীভাবে সংজ্ঞায়িত করছেন তার ওপর।
- আপনি যদি আপনার হ্যাশে একটি টাইমস্ট্যাম্প অন্তর্ভুক্ত করেন, তবে প্রতিটি রিট্রাই একটি নতুন কী পাবে। ফলে আপনার সুরক্ষা ব্যবস্থা ব্যর্থ হবে।
- আপনি যদি একটি LLM দ্বারা লেখা মেসেজ বডি অন্তর্ভুক্ত করেন, তবে মডেলটি একটি শব্দ পরিবর্তন করতে পারে। এটি একটি নতুন কী তৈরি করবে এবং ফলে ডুপ্লিকেট কাজ সম্পন্ন হবে।
সর্বদা কাস্টমার আইডি বা ইনভয়েস আইডির মতো স্থিতিশীল ডেটার ওপর ভিত্তি করে কী তৈরি করুন। মডেল যা পরিবর্তন করতে পারে এমন কিছু বাদ দিন।
উন্নত প্রম্পট দিয়ে এজেন্টের নির্ভরযোগ্যতা ঠিক করার চেষ্টা বন্ধ করুন।
নির্ভরযোগ্যতা মানে হলো একটি পুনরাবৃত্ত সিদ্ধান্তের খরচ শূন্যে নামিয়ে আনা। যদি আপনার এজেন্ট একই কাজ দুবার করে, তবে কোনো কিছুতেই সমস্যা হওয়া উচিত নয়।
ঐচ্ছিক লার্নিং কমিউনিটি: https://t.me/GyaanSetuAi
