AI এজেন্ট তৈরি করা ডেভেলপাররা সাধারণত একই তিনটি জিনিস পরীক্ষা করেন – একটি 200 HTTP স্ট্যাটাস, একটি ফায়ারড কলব্যাক এবং রেসপন্সে কিছু টেক্সট – এবং ধরে নেন যে কাজ শেষ। একটি তিন-স্তর বিশিষ্ট সিগন্যাল মডেল দেখায় যে এই উপরিভাগের দৃষ্টিভঙ্গি নীরব ব্যর্থতাগুলোকে (silent failures) আড়াল করে রাখে।

কেন উপরিভাগের পরীক্ষা যথেষ্ট নয়

বেশিরভাগ মনিটরিং ড্যাশবোর্ড ফ্রেমওয়ার্ক সফলতার রিপোর্ট করার সাথে সাথেই সবুজ হয়ে যায়। সেই সাফল্য হলো এক্সিকিউশনের কেবল প্রথম স্তর। যদি মডেলটি একটি খালি পেলোড (empty payload) রিটার্ন করে, ডজন ডজন অপ্রয়োজনীয় টুল কল করে, বা এজেন্টগুলোর মধ্যে ডেটা হারিয়ে ফেলে, তবুও ড্যাশবোর্ড বলবে "সব ঠিক আছে।" এই লুকানো সমস্যাগুলো কেবল পরে প্রকাশ পায়, প্রায়শই যখন কোনো গ্রাহক তথ্য missing বা কোনো ডাউনস্ট্রিম সার্ভিস ব্যর্থ হওয়ার কথা জানান।

এক্সিকিউশন সফলতার তিনটি স্তর

লেয়ার ১ – ফ্রেমওয়ার্ক লেয়ার

এটি হলো দৃশ্যমান প্রান্ত: HTTP রেসপন্স কোড, ফ্রেমওয়ার্কের "task finished" ফ্ল্যাগ এবং যেকোনো আউটপুট টেক্সটের উপস্থিতি। একটি 200 স্ট্যাটাস আপনাকে জানায় যে রিকোয়েস্টটি সার্ভারে পৌঁছেছে এবং সার্ভার উত্তর দিয়েছে, কিন্তু মডেলটি আসলে কী করেছে সে সম্পর্কে এটি কিছু বলে না। এই স্তরে একটি খালি রেসপন্স বা জিরো-টোকেন রিপ্লাইকেও সাফল্য হিসেবে গণ্য করা হয়।

লেয়ার ২ – ডেটা লেয়ার

এখানে আপনি এক্সিকিউশনের গভীরে দেখেন। প্রাসঙ্গিক সিগন্যালগুলোর মধ্যে রয়েছে:

  • টোকেন কাউন্ট (Token counts) – মডেলটি কি আদৌ কোনো আউটপুট টোকেন তৈরি করেছে?
  • টুল-কল ফ্রিকোয়েন্সি (Tool-call frequency) – কোনো টুল কি প্রত্যাশার চেয়ে অনেক বেশিবার কল করা হয়েছে?
  • স্কিমা ভ্যালিডেশন (Schema validation) – ভুলভাবে তৈরি করা JSON কি একটি স্পষ্ট এরর দেখানোর পরিবর্তে নীরবে ফলব্যাক (fallback) মোডে চলে গেছে?
  • ল্যাটেন্সি (Latency) – একটি টাস্ক কি ৩ সেকেন্ডের পরিবর্তে ৪৫ সেকেন্ড সময় নিয়েছে?

স্ট্যান্ডার্ড মনিটরিং টুলগুলো সাধারণত কেবল চূড়ান্ত ফলাফল দেখায়, এই প্রসেস-কোয়ালিটি মেট্রিক্সগুলো নয়। এগুলো ছাড়া আপনি বুঝতে পারবেন না যে মডেলটি উদ্দিষ্টভাবে কাজ করেছে কি না।

লেয়ার ৩ – হ্যান্ডঅফ লেয়ার

মাল্টি-এজেন্ট সিস্টেমে ডেটা এক কম্পোনেন্ট থেকে অন্যটিতে যেতে হয়। এই লেয়ার সেই মুভমেন্ট ট্র্যাক করে:

  • ডেলিভারি (Delivery) – আউটপুট কি আসলেই পরবর্তী ধাপে পৌঁছেছে?
  • লস (Loss) – ট্রান্সফারের সময় কোনো ডেটা কি হারিয়ে গেছে?
  • করাপশন (Corruption) – এজেন্টগুলোর মধ্যে মুভ করার সময় পেলোড কি পরিবর্তিত হয়েছে?

একটি এজেন্ট লেয়ার ১ এবং ২ সফলভাবে পার করতে পারে, তবুও আউটপুট ডেলিভার করতে ব্যর্থ হতে পারে, যা চেইনটি ভেঙে দেয় এবং ডাউনস্ট্রিম এজেন্টদের প্রয়োজনীয় ইনপুট থেকে বঞ্চিত করে।

ঝুঁকির বিষয়গুলো কী কী

নীরব ব্যর্থতাগুলো (silent failures) ডিবাগ করা কঠিন। যে সংস্থাগুলো AI-চালিত পরিষেবা বিক্রি করে, তাদের জন্য এই লুকানো বাগগুলো সরাসরি রাজস্বের ক্ষতি এবং সুনাম নষ্ট করার কারণ হতে পারে।

কীভাবে লুকানো সিগন্যালগুলোকে সামনে আনা যায়

ডিফল্ট ফ্রেমওয়ার্ক কলব্যাকের ওপর নির্ভর করা এখন আর যথেষ্ট নয়। সচেতনভাবে ইনস্ট্রুমেন্টেশন (instrumentation) যোগ করুন:

লেয়ার ২ মনিটর করা

  • প্রতিটি রানের জন্য ইনপুট এবং আউটপুট টোকেন কাউন্ট লগ করুন।
  • টুল-কল ফ্রিকোয়েন্সি ট্র্যাক করুন এবং এটিকে স্বাভাবিক আচরণের বেসলাইনের সাথে তুলনা করুন।
  • আউটপুট পার্সিং সফল হয়েছে নাকি ব্যর্থ হয়েছে তা রেকর্ড করুন এবং ভুলভাবে তৈরি করা JSON চিহ্নিত করুন।
  • আউটলায়ার (outliers) শনাক্ত করার জন্য কেবল গড় (average) নয়, বরং ল্যাটেন্সি পার্সেন্টাইল (latency percentiles) ক্যাপচার করুন।

লেয়ার ৩ মনিটর করা

  • যদি আর্কিটেকচারে একের অধিক এজেন্ট থাকে, তবে প্রোডিউসার থেকে কনজিউমার পর্যন্ত ডেটা ফ্লো ট্র্যাক করুন।
  • যাচাই করুন যে একটি কম্পোনেন্টের আউটপুট পরবর্তীটির প্রত্যাশিত ইনপুট স্কিমার সাথে মিলছে কি না।
  • অমিল, ডেলিভারি মিস হওয়া বা অপ্রত্যাশিত পেলোড সাইজের ক্ষেত্রে অ্যালার্ট সেট করুন।

গ্রাহকের অভিযোগ আসার পর নয়, বরং প্রোঅ্যাক্টিভভাবে এই লগগুলো সংগ্রহ করুন।

সারকথা: একটি সবুজ ড্যাশবোর্ড একটি AI এজেন্ট সঠিকভাবে কাজ করেছে তার গ্যারান্টি দেয় না। মনিটরিংয়ের পরিধি ফ্রেমওয়ার্কের "success flag"-এর বাইরে প্রসারিত করে ডেটা-লেয়ার কোয়ালিটি মেট্রিক্স এবং হ্যান্ডঅফ ইন্টিগ্রিটি অন্তর্ভুক্ত করার মাধ্যমে, ডেভেলপাররা ব্যবহারকারী বা ডাউনস্ট্রিম সার্ভিস প্রভাবিত হওয়ার আগেই নীরব ব্যর্থতাগুলো ধরতে পারেন। মাল্টি-এজেন্ট পাইপলাইনের যুগে, কেবল উপরিভাগ দেখা মানে অন্ধের মতো পথ চলা।

Source: https://dev.to/babarmaker76/three-signal-layers-where-ai-agent-silent-failures-hide-1k02

Community for deeper discussion: https://t.me/GyaanSetuAi