স্বয়ংক্রিয় এজেন্টরা তাদের নিজেদের ইতিহাস নিয়ে হ্যালুসিনেশন তৈরি করে। এটি লার্জ ল্যাঙ্গুয়েজ মডেলগুলোর প্রশিক্ষণের ডেটা থেকে তথ্য উদ্ভাবন করার মতো নাটকীয়ভাবে ঘটে না, বরং এটি ঘটে অত্যন্ত সূক্ষ্ম ও ক্ষতিকর উপায়ে—যখন একটি সিস্টেম নিজেকে বিশ্বাস করাতে শুরু করে যে পৃথিবী ঠিক তার নোটের মতোই। ALICE, একটি স্বয়ংক্রিয় এজেন্ট যা জটিল ওয়ার্কফ্লো পরিচালনা করার জন্য তৈরি করা হয়েছিল, ঠিক এই সমস্যাটিরই শিকার হয়েছিল। সে প্রতিদিন নতুন করে তার দক্ষতা, একটি উদ্দেশ্যবোধ এবং সে কোথায় কী রেখে এসেছিল তার স্মৃতি নিয়ে জেগে উঠত। সমস্যাটি তখনই শুরু হলো যখন স্মৃতি এবং বাস্তবতার মধ্যে পার্থক্য তৈরি হলো।

প্রতিটি সেশনে, ALICE তার পূর্ববর্তী সত্তার লেখা একটি হ্যান্ডঅফ ফাইল পড়ত। এতে ডিরেক্টরিগুলোর পয়েন্টার, পেন্ডিং টাস্ক এবং স্টেট অ্যাজাম্পশন (অবস্থার অনুমান) ছিল। প্রায়শই, ফাইলটি দাবি করত যে একটি ডিরেক্টরি বিদ্যমান। ALICE তা বিশ্বাস করত। কিন্তু ফাইল সিস্টেম ভিন্ন কথা বলত। এটি প্রথাগত অর্থে কোনো কোডিং বাগ ছিল না। যেখানে একটি এক্সেপশন (exception) থ্রো করার কথা ছিল, সেখানে কিছুই ঘটেনি। এটি ছিল জ্ঞানতত্ত্ব বা এপিস্টেমোলজির একটি ত্রুটি: ALICE ধরে নিয়েছিল যে তার নিজের নোটগুলোই হলো গ্রাউন্ড ট্রুথ।

কেন একটি লিন্টার সাহায্য করতে পারল না

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

তাই লেখক সম্পূর্ণ অন্য একটি AI-এর সাহায্য নিলেন।

Fable 5, যা Claude Code হিসেবে চলছিল, ALICE-এর মতোই একই সিলিকন এবং একই বেস মডেল ব্যবহার করত। হার্ডওয়্যার এবং ওয়েটস (weights) ছিল হুবহু এক। কিন্তু নিয়মগুলো ছিল না। যেখানে ALICE প্রতিটি সেশনের মাধ্যমে টিকে থাকত এবং কনটেক্সট ও রুটিন জমিয়ে রাখত, সেখানে Fable 5 প্রতিটি কাজ শুরু করত একদম শূন্য পাতা থেকে। সে ALICE-কে চিনত না। তার ডিজাইনের প্রতি তার কোনো আনুগত্য ছিল না। প্রতিটি অডিটের শেষে, সে সম্পূর্ণ শাট ডাউন হয়ে যেত এবং কোনো স্মৃতি সাথে নিয়ে যেত না। এই অজ্ঞতাটিই ছিল মূল উদ্দেশ্য। নতুন চোখ ভিন্ন ভিন্ন ত্রুটি দেখতে পায়, এবং একজন মূল্যায়নকারী যার সিস্টেমের সাথে কোনো স্বার্থ নেই, তিনি সেই অংশগুলো নিয়ে প্রশ্ন তুলবেন যা তার নির্মাতা অনেক আগেই লক্ষ্য করা বন্ধ করে দিয়েছেন।

অডিট সেটআপ

অডিটটি একটি মানুষের প্রযুক্তিগত পর্যালোচনার মতো সাজানো হয়েছিল, শুধু পার্থক্য হলো পুরো বিশেষজ্ঞ প্যানেলটি একটি মাত্র সেশনের ভেতরে ছিল। Fable 5 তার মনোযোগকে ছয়টি আলাদা মূল্যায়নকারীতে বিভক্ত করেছিল, যেখানে প্রতিটি মূল্যায়নকারী র-নোটস (raw notes) সম্পূর্ণ না হওয়া পর্যন্ত অন্যদের উপেক্ষা করত:

  • ফাংশনাল গ্যাপস (Functional Gaps): প্রতিদ্বন্দ্বী সিস্টেম বা সাধারণ ব্যবহারকারীর প্রত্যাশার তুলনায় কোন সক্ষমতাগুলোর অভাব ছিল?
  • UX ফ্লো: ALICE কতটা দক্ষতার সাথে ত্রুটি (errors), ডেড এন্ড এবং এম্পটি স্টেটগুলো সামলেছিল? সে কি নিজেকে বা তার ব্যবহারকারীকে বিভ্রান্ত করেছিল?
  • সিকিউরিটি: সেখানে কি কোনো অথেন্টিকেশন শর্টকাট, পারমিশন বাইপাস বা ট্রাস্ট অ্যাজাম্পশন ছিল যা একজন বহিরাগত ব্যবহার করতে পারত?
  • পারফরম্যান্স: কোথায় মেমরি লিক হচ্ছিল, থ্রেডগুলোর মধ্যে সংঘর্ষ (collision) হচ্ছিল বা কম্পিউটেশন স্কেলিংয়ে সমস্যা হচ্ছিল?
  • অপারেশনস: ব্যাকআপ কি ছিল? মনিটরিং ব্যবস্থা কি চালু ছিল? সিস্টেমটি কি মানুষের হস্তক্ষেপ ছাড়াই ডেপ্লয় এবং রিকভার করতে পারত?
  • ডেটা লাইফসাইকেল: সময়ের সাথে সাথে ALICE কীভাবে ডিলিটেশন, ক্লিনআপ এবং স্টেট কনসিস্টেন্সি সামলেছিল?

প্রতিটি দৃষ্টিভঙ্গি একই ফাইলগুলো পরীক্ষা করেছিল এবং ভিন্ন ভিন্ন উদ্বেগের কথা তুলেছিল। পারফরম্যান্স মূল্যায়নকারী হয়তো একই রুটিনে একটি কনকারেন্সি রিস্ক চিহ্নিত করতে পারতেন, যে রুটিনটিকে অপারেশনস মূল্যায়নকারী রোলব্যাক লজিকের অভাবের জন্য সমালোচনা করেছিলেন। এই ওভারল্যাপ কোনো অপ্রয়োজনীয় পুনরাবৃত্তি ছিল না; এটি ছিল কভারেজ। যখন সিকিউরিটি মূল্যায়নকারী একটি নির্দিষ্ট বিষয়ে ডেটা লাইফসাইকেল মূল্যায়নকারীর সাথে একমত হলেন...