AI agent সাবলীল উত্তর দিলেই প্রয়োজনীয় পদ্ধতি মেনেছে—তা বোঝা যায় না। AWS-এর ২২ সেপ্টেম্বরের নির্দেশিকায় Strands Evals ও Amazon Bedrock AgentCore কীভাবে রেকর্ড করা run থেকে skill নির্বাচন এবং নির্দেশ মেনে চলা যাচাই করে তা ব্যাখ্যা করা হয়েছে। মূল্যায়নের ফল না-এলে দুই ব্যবস্থা ভিন্ন আচরণ করে; তাদের pass flag পড়ার সময় এর প্রভাব আছে।
বড় পরিবর্তন
- কী বদলেছে: এই সরঞ্জামগুলো আলাদা করে দেখে—পদ্ধতিটি লোড হয়েছিল কি না, কাজটির উপযোগী ছিল কি না, এবং তার ধাপগুলো অনুসরণ করা হয়েছিল কি না।
- কেন গুরুত্বপূর্ণ: Strands-এর পর্যালোচিত code-এ বিচার না-হওয়া ঘটনাকেও pass দেখানো সম্ভব। শুধু ওই flag ধরে release-এর সিদ্ধান্ত নিলে প্রয়োজনীয় skill কখনো লোডই হয়নি—এ বিষয়টি চোখ এড়াতে পারে।
- কী লক্ষ করবেন: স্কোরের পাশাপাশি মূল্যায়নের coverage দেখুন: কোন প্রত্যাশিত load ধরা পড়েছে, আর কোন invocation-এ রায় দেওয়ার মতো যথেষ্ট evidence রেকর্ড হয়েছে।
তিনটি পরীক্ষা, তিনটি আলাদা প্রশ্ন
এই Agent Skills specification একটি skill-কে SKILL.md file-কে ঘিরে সংজ্ঞায়িত করে। এর নাম ও বর্ণনা agent-কে কখন সেটি ব্যবহার করতে হবে ঠিক করতে সাহায্য করে; সক্রিয় হওয়ার পর নির্দেশনার মূল অংশটি লোড হয়। এই বিভাজনে সফল load, উপযুক্ত নির্বাচন ও নির্দেশমতো কাজ—প্রতিটিই আলাদা প্রশ্ন।
পরীক্ষা | প্রমাণ ও ফল | সীমা |
|---|---|---|
Strands | নির্দিষ্ট skill সফলভাবে লোড হওয়ার রেকর্ড; নির্ধারিত নিয়মে pass বা fail | উপযোগিতা বা বাস্তব প্রয়োগ যাচাই করে না |
AgentCore-এর নির্বাচন-নির্ভুলতা | চালু করা skill, অনুরোধ, আগের প্রসঙ্গ এবং থাকলে তালিকা; model-এর Yes বা No বিচার | কোনো skill চালু না করার সিদ্ধান্ত বিচার করে না |
AgentCore-এর নির্দেশ-অনুসরণ | লোড করা নির্দেশনা ও পূর্ণ session; পুরোপুরি অনুসরণ থেকে একেবারেই না-মানা পর্যন্ত পাঁচটি স্তর | রেকর্ডে ধাপগুলো মানা হয়েছে কি না দেখে; মূল কাজটি ঠিক ছিল কি না নয় |
নির্দিষ্ট SkillInvoked বাস্তবায়ন মিলে যাওয়া load event-এ status loaded থাকলে তবেই এই assertion সফল হয়। সফল load না-হলে অনুপস্থিত, ব্যর্থ বা নিষ্পত্তি না-হওয়া চেষ্টা—সবই এই assertion-এ fail করে। কোনো judge model ডাকা হয় না। test case-এ নির্দিষ্ট skill থাকা বাধ্যতামূলক হলে এটি সরাসরি যাচাই দেয়।
AgentCore-এ ফল শূন্য হতে পারে
AgentCore-এর নথি অনুযায়ী invocation বা skill-এর নির্দেশনা—কোনোটিরই সংকেত না থাকলে দুই judge-ই tool call বাদ দেয়। শনাক্ত skill invocation না-থাকা session-এ কোনো ফল আসে না।
তালিকা না-থাকলেও নির্বাচন বিচার থামে না: evaluator অনুরোধ ও কথোপকথনের প্রসঙ্গ ব্যবহার করে। নির্দেশ মেনে চলা যাচাইয়ে চালু করা skill এবং তার লোড হওয়া নির্দেশনা—দুটিই লাগে; পরের ধাপের প্রমাণ দেয় পুরো session।
Strands pass-সহ N/A সারি ফেরাতে পারে
Strands Evals-এর commit 9ea55c9-এ source code দেখে Strands Evals-এ ভিন্ন উপস্থাপনা পাওয়া গেছে; এটি ২৩ সেপ্টেম্বর পর্যালোচনা করা সেই implementation-এর বিবরণ, ইনস্টল করা সব SDK version-এর নয়।
trajectory আছে, কিন্তু কোনো invocation নেই—এমন ক্ষেত্রে নির্বাচন evaluator not-applicable সারি ফেরায়: placeholder score 0.0, test_pass=true। skill ব্যবহার না করার সিদ্ধান্ত সঠিক ছিল কি না, ওই judge-এর আওতায় পড়ে না।
অন্যদিকে নির্দেশ-অনুসরণ evaluator-ও invocation না-থাকা, load প্রত্যাখ্যাত হওয়া বা নির্দেশনার body না-পাওয়ার ক্ষেত্রে pass-যুক্ত N/A সারি ফেরায়। trajectory না-থাকলে দুই evaluator-ই false pass flag-সহ N/A দেয়।
তাদের সমষ্টি নির্ণয়ের function N/A সারিকে গড় হিসাব থেকে বাদ দেয়। সব সারিই N/A হলে placeholder শূন্য ধরে রাখে এবং সারিগুলোর pass flag একত্র করে। তাই সংখ্যাটি ও flag-টি কী বোঝায়, তা বুঝতে তাদের label ও কারণ জানতে হয়।
কোনো নির্দিষ্ট skill চালানো বাধ্যতামূলক হলে judge-গুলোর সঙ্গে নাম-উল্লেখ করা load assertion ব্যবহার করুন। নির্দেশ মানা হয়েছে কি না দেখতে pass flag-কে রায় হিসেবে ধরার আগে যাচাই করুন নির্দেশনা ও কাজের evidence রেকর্ডে ছিল কি না। BIG CHANGE documentation ও source code পর্যালোচনা করেছে; evaluator-গুলো চালায়নি।



