প্রসঙ্গ ও কারণ যোগ করা
এই পাঠে যা শিখবেন
- Anthropic-এর ellipsis / text-to-speech উদাহরণ দিয়ে "কারণ ব্যাখ্যা করা" নীতির প্রমাণ
- কেন শুধু-নিয়ম নির্দেশনা ভঙ্গুর, আর কারণ-সহ নির্দেশনা কেন সাধারণীকরণযোগ্য
- বাস্তব উদাহরণে দেখা — একই নীতি ভিন্ন এজ-কেসেও কাজ করে
- কখন কারণ ব্যাখ্যা করা মূল্যবান, আর কখন এটা অপ্রয়োজনীয় বাড়তি শব্দ
১ · একটা নিয়ম, একটা কারণ
ধরুন আপনি একটা LLM-কে বলছেন এমন টেক্সট লিখতে যা পরে টেক্সট-টু-স্পিচ (Text-to-Speech) ইঞ্জিন দিয়ে জোরে পড়ে শোনানো হবে।
আপনি জানেন যে এই টেক্সটে ... (ellipsis) থাকলে সমস্যা হবে, কারণ TTS ইঞ্জিন এটা ঠিকভাবে উচ্চারণ করতে
পারে না। এটা বলার দুটো উপায় আছে — এবং দুটোর ফলাফল আলাদা।
❌ কম কার্যকর (Less effective):
NEVER use ellipses.
✅ বেশি কার্যকর (More effective):
Your response will be read aloud by a text-to-speech engine, so never use
ellipses since the text-to-speech engine will not know how to pronounce
them.
প্রথম নজরে দুটো নির্দেশনাই একই ফলাফল দেবে বলে মনে হতে পারে — দুটোতেই লেখা আছে ellipsis ব্যবহার না করতে। কিন্তু Anthropic-এর প্রম্পটিং গাইড অনুযায়ী, দ্বিতীয় সংস্করণ বাস্তবে অনেক বেশি নির্ভরযোগ্য — কারণ এটা মডেলকে শুধু একটা নিয়ম দেয়নি, একটা বোঝাপড়া দিয়েছে।
২ · কেন শুধু-নিয়ম নির্দেশনা ভঙ্গুর
"NEVER use ellipses" — এই বাক্যটা একটামাত্র সুনির্দিষ্ট নিয়ম বর্ণনা করে, যার পেছনে কোনো ব্যাখ্যা নেই। মডেল এই নিয়মটা মেনে চলবে, কিন্তু এর পেছনের উদ্দেশ্য না জানার কারণে, এর সাথে সম্পর্কিত কিন্তু ঠিক একই রকম নয় এমন পরিস্থিতিতে মডেল ভুল করতে পারে। যেমন —
- মডেল হয়তো ellipsis এড়িয়ে যাবে, কিন্তু em-dash (—) বা অন্য কোনো চিহ্ন ব্যবহার করবে যা TTS ইঞ্জিনের জন্য একই রকম সমস্যা তৈরি করে — কারণ নিয়মে শুধু ellipsis-এর কথা বলা ছিল।
- মডেল হয়তো সংখ্যাসূচক তালিকায় বা কোড ব্লকে ellipsis ব্যবহার করে ফেলবে, ভেবে নেবে যে নিয়মটা শুধু সাধারণ বাক্যের জন্য প্রযোজ্য।
অর্থাৎ, শুধু-নিয়ম নির্দেশনা ঠিক সেই একটা কেসকেই কভার করে যা স্পষ্টভাবে লেখা আছে — এর বাইরে যেকোনো কাছাকাছি পরিস্থিতিতে মডেলকে নতুন করে অনুমান করতে হয়, ঠিক যেমনটা পাঠ ০১-এ আমরা দেখেছি খালি জায়গায় মডেল নিজের মতো পূরণ করে।
৩ · কেন কারণ-সহ নির্দেশনা সাধারণীকরণযোগ্য
দ্বিতীয় সংস্করণে — "your response will be read aloud by a text-to-speech engine, so never use ellipses since the text-to-speech engine will not know how to pronounce them" — মডেলকে দেওয়া হয়েছে আসল কারণ: টেক্সট পড়ে শোনানো হবে, এবং TTS ইঞ্জিন কিছু চিহ্ন উচ্চারণ করতে পারে না।
এখন মডেল আর শুধু একটা নিয়ম অনুসরণ করছে না — এটা একটা উদ্দেশ্য বুঝে কাজ করছে। ফলে মডেল স্বাভাবিকভাবেই এই একই যুক্তি প্রয়োগ করবে অন্য পরিস্থিতিতেও — em-dash, বা অন্য কোনো উচ্চারণ-অসুবিধাজনক চিহ্ন এড়িয়ে চলবে, কারণ এগুলোও একই সমস্যায় ফেলবে। Anthropic-এর ভাষায়, Claude যথেষ্ট বুদ্ধিমান যে ব্যাখ্যা থেকে সাধারণীকরণ করতে পারে ("Claude is smart enough to generalize from the explanation")।
একটা নিয়ম মডেলকে বলে "কী করবে না"। একটা কারণ মডেলকে বলে "কেন এটা গুরুত্বপূর্ণ" — এবং যেহেতু মডেল প্যাটার্ন-ভিত্তিকভাবে কাজ করে (পাঠ ০১), একটা বোঝা যুক্তি সেই একই ধরনের সমস্যায় বারবার প্রযোজ্য থাকে, যেখানে একটা মুখস্থ নিয়ম শুধু হুবহু মেলা কেসেই কাজ করে।
৪ · আরও একটা উদাহরণ — গ্রাহক-সেবা প্রম্পট
একই নীতি অন্য একটা বাস্তব পরিস্থিতিতে দেখা যাক — একটা কাস্টমার-সাপোর্ট চ্যাটবটের সিস্টেম প্রম্পট।
❌ কম কার্যকর (Less effective):
Never promise a refund date to the customer.
✅ বেশি কার্যকর (More effective):
Never promise a specific refund date to the customer, because refund
processing depends on the payment provider and our team cannot guarantee
timelines — an incorrect promise damages trust when it's not met.
শুধু-নিয়ম সংস্করণ শুধু "রিফান্ড তারিখ" নিয়ে সতর্ক থাকবে। কিন্তু কারণ-সহ সংস্করণে বটটা বুঝবে যে সমস্যাটা হলো "এমন প্রতিশ্রুতি দেওয়া যা রাখা যাবে কিনা নিশ্চিত নয়" — ফলে এটা স্বাভাবিকভাবেই একই সতর্কতা দেখাবে শিপিং তারিখ, মেরামতের সময়সীমা, বা অন্য যেকোনো অনিশ্চিত প্রতিশ্রুতির ক্ষেত্রেও, যদিও এই এজ-কেসগুলো প্রম্পটে আলাদাভাবে লেখা ছিল না।
৫ · কখন কারণ ব্যাখ্যা করা মূল্যবান
এর মানে এই নয় যে প্রতিটা নির্দেশনার সাথে একটা রচনা লিখে দিতে হবে। কারণ ব্যাখ্যা করা সবচেয়ে মূল্যবান যখন —
- নিয়মটা সম্ভাব্য একাধিক পরিস্থিতিতে প্রযোজ্য — যেমন উপরের উদাহরণে "প্রতিশ্রুতি না দেওয়া" শুধু রিফান্ডে নয়, যেকোনো অনিশ্চিত বিষয়ে প্রযোজ্য।
- নিয়মটা প্রথম দেখায় অস্বাভাবিক বা প্রতি-স্বজ্ঞাত মনে হতে পারে — কেন এই নিয়ম, সেটা না জানলে মডেল ভুল বুঝে পুরো প্রম্পটের অন্য অংশের সাথে সামঞ্জস্যহীন সিদ্ধান্ত নিতে পারে।
- আপনি প্রতিটা সম্ভাব্য এজ-কেস আগে থেকে তালিকা করতে পারবেন না — একটা ভালো ব্যাখ্যা একবারে অনেক না-লেখা এজ-কেস কভার করে দেয়।
উল্টোদিকে, যদি নিয়মটা এতটাই সহজ ও একরৈখিক যে কোনো ব্যাখ্যাই নতুন কিছু যোগ করে না (যেমন "উত্তর বাংলায় লিখো"), তাহলে বাড়তি কারণ যোগ করা শুধু টোকেন খরচ বাড়ায়, কোনো বাস্তব লাভ ছাড়াই। এখানেও পাঠ ০২-এর সেই মূলনীতি ফিরে আসে — ন্যূনতম প্রয়োজনীয় গঠন, তার বেশি নয়।
যখনই সম্ভব, নিয়মের সাথে তার পেছনের কারণটাও যোগ করুন — বিশেষ করে যখন নিয়মটা একাধিক পরিস্থিতিতে প্রযোজ্য হতে পারে। এটা শুধু একটা "ভদ্রতা" নয় — এটা একটা কৌশল যা মডেলের নিয়ম-অনুসরণকে প্যাটার্ন-মিলের বদলে প্রকৃত যুক্তির উপর ভিত্তি করে তোলে, এবং তাই অনেক বেশি নির্ভরযোগ্যভাবে সাধারণীকৃত হয়।
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।
প্র ০১ যদি মডেল আসলে "বোঝে না" (পাঠ ০১), তাহলে "কারণ ব্যাখ্যা করলে সাধারণীকরণ ভালো হয়" — এই দাবিটা কীভাবে সত্যি হতে পারে?
এখানে "বোঝা" আর "সাধারণীকরণ" দুটো আলাদা জিনিস। মডেল প্যাটার্ন-ভিত্তিকভাবে কাজ করে ঠিকই, কিন্তু প্রশিক্ষণ ডেটায় এমন কোটি কোটি উদাহরণ আছে যেখানে "কারণ + নিয়ম" একসাথে থাকলে মানুষ সেই কারণ থেকে সম্পর্কিত পরিস্থিতিতে নিয়ম প্রসারিত করে। মডেল এই প্যাটার্নটাই শিখেছে — কারণ থাকলে সংশ্লিষ্ট পরিস্থিতিতেও নিয়ম প্রয়োগ করা।
তাই এটা "বোঝাপড়া" এর বদলে বলা যায় "শক্তিশালী প্যাটার্ন-মিল" — কিন্তু ব্যবহারিক ফলাফলের দিক থেকে দুটোর পার্থক্য খুব কম, এবং আমাদের জন্য যা গুরুত্বপূর্ণ তা হলো ফলাফল — কারণ-সহ নির্দেশনা বেশি নির্ভরযোগ্যভাবে কাজ করে।
প্র ০২ কারণ ব্যাখ্যা করা কি সবসময় বাড়তি টোকেন-খরচ বাড়িয়ে দেয় না? এটা কি পাঠ ০২-এর "টোকেন-খরচ কমানো"-র সাথে সাংঘর্ষিক নয়?
স্বল্পমেয়াদে হ্যাঁ — কারণ ব্যাখ্যা করলে প্রম্পটে কিছু বাড়তি টোকেন যোগ হয়। কিন্তু দীর্ঘমেয়াদে এটা প্রায়ই টোকেন বাঁচায় — কারণ প্রতিটা এজ-কেসের জন্য আলাদা নিয়ম লেখার বদলে একটা ভালো ব্যাখ্যা অনেক এজ-কেস একসাথে কভার করে দেয়।
তাছাড়া, শুধু-নিয়ম নির্দেশনা যদি ব্যর্থ হয় (এজ-কেসে ভুল আচরণ করে), তাহলে সেটা সংশোধন করতে যে বাড়তি ইটারেশন লাগবে (পাঠ ০২-এ আলোচিত), তার খরচ একটা ভালো কারণ-ব্যাখ্যার চেয়ে অনেক বেশি। তাই এটা আসলে একটা বিনিয়োগ, খরচ নয়।
প্র ০৩ এই নীতিটা কি শুধু "কী করবে না" ধরনের নিয়মের জন্য প্রযোজ্য, নাকি "কী করতে হবে" ধরনের নির্দেশনার জন্যও?
দুই ক্ষেত্রেই সমানভাবে প্রযোজ্য। যেমন "প্রতিটা উত্তর একটা প্রশ্ন দিয়ে শেষ করো" এর বদলে "প্রতিটা উত্তর একটা প্রশ্ন দিয়ে শেষ করো, যাতে শিক্ষার্থী নিজে চিন্তা করতে বাধ্য হয় এবং সরাসরি উত্তর মুখস্থ না করে" — এই দ্বিতীয় সংস্করণে মডেল বুঝবে লক্ষ্যটা আসলে "সক্রিয় শিক্ষা উৎসাহিত করা", শুধু "প্রশ্ন দিয়ে শেষ করা" নয়।
ফলে যদি কোনো উত্তরে প্রশ্ন দিয়ে শেষ করা অস্বাভাবিক মনে হয় (যেমন একটা হ্যাঁ/না উত্তর), মডেল বিকল্প উপায়ে একই লক্ষ্য (সক্রিয় চিন্তা উস্কে দেওয়া) পূরণ করার চেষ্টা করবে — শুধু যান্ত্রিকভাবে নিয়ম মেনে না চলে।
অনুশীলন
-
কারণ যোগ করুন: "প্রতিটা উত্তরে ইমোজি ব্যবহার কোরো না" — এই শুধু-নিয়ম নির্দেশনায় একটা যুক্তিসঙ্গত
কারণ যোগ করে এটাকে সাধারণীকরণযোগ্য করুন।
একটা ভালো সংস্করণ — "প্রতিটা উত্তরে ইমোজি ব্যবহার কোরো না, কারণ এই আউটপুট একটা আনুষ্ঠানিক ব্যবসায়িক রিপোর্টে ব্যবহৃত হবে যেখানে ইমোজি অপেশাদার দেখাবে।" এখন মডেল শুধু ইমোজি এড়াবে না, একই যুক্তিতে অতিরিক্ত অনানুষ্ঠানিক ভাষা, অতিরিক্ত বিস্ময়সূচক চিহ্ন ইত্যাদিও এড়িয়ে চলবে, কারণ মূল লক্ষ্য বোঝা গেছে — আনুষ্ঠানিকতা বজায় রাখা।
-
শনাক্ত করুন: "সবসময় সোর্স উল্লেখ করবে" — এই নির্দেশনাটা কোন কোন এজ-কেসে ব্যর্থ হতে পারে, যদি
এর পেছনের কারণ ব্যাখ্যা করা না থাকে?
মডেল হয়তো ভাববে এটা শুধু সরাসরি উদ্ধৃতির (quote) ক্ষেত্রে প্রযোজ্য, কিন্তু প্যারাফ্রেজ করা তথ্যের ক্ষেত্রে সোর্স বাদ দিতে পারে। যদি কারণ ব্যাখ্যা করা থাকত — "সবসময় সোর্স উল্লেখ করবে, যাতে পাঠক তথ্যের নির্ভরযোগ্যতা নিজে যাচাই করতে পারে" — তাহলে মডেল বুঝত এটা শুধু সরাসরি উদ্ধৃতির জন্য নয়, যেকোনো তথ্যের জন্যই প্রযোজ্য, কারণ যাচাইযোগ্যতাই আসল লক্ষ্য।
-
তুলনা করুন: একটা কোডিং সহকারীর সিস্টেম প্রম্পটে "কখনো hardcoded API key লিখো না" এবং "কখনো
hardcoded API key লিখো না, কারণ কোড রিপোজিটরিতে পাবলিকভাবে দৃশ্যমান হলে এটা একটা নিরাপত্তা ঝুঁকি তৈরি করে" —
এই দুটো নির্দেশনা বাস্তবে কী ভিন্ন আচরণের দিকে নিয়ে যেতে পারে?
শুধু-নিয়ম সংস্করণে মডেল হয়তো শুধু API key এড়াবে, কিন্তু database পাসওয়ার্ড বা প্রাইভেট টোকেন hardcode করে ফেলবে, ভেবে যে নিয়মটা শুধু "API key" শব্দের জন্যই প্রযোজ্য। কারণ-সহ সংস্করণে মডেল বুঝবে যে আসল সমস্যা "সংবেদনশীল তথ্য পাবলিকভাবে দৃশ্যমান হওয়া" — তাই একই সতর্কতা যেকোনো সংবেদনশীল তথ্যের ক্ষেত্রে প্রযোজ্য হবে।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- পরবর্তী পাঠ · উদাহরণ দিয়ে শেখানো — Few-shot Prompting পাঠ ০৫ নিয়ম ও কারণের পাশাপাশি, বাস্তব উদাহরণ দেখিয়ে কীভাবে মডেলকে আরও নির্ভুলভাবে গাইড করা যায়।
- আগের পাঠ · স্বচ্ছতা ও সরাসরি ভাব — সোনালী নিয়ম পাঠ ০৩ Anthropic-এর "সহকর্মীর পরীক্ষা" — প্রম্পট স্বচ্ছ ও দ্ব্যর্থহীন লেখার মূলনীতি।
- সব AI Courses দেখুন ABCL TECH AI Foundations, Python for AI, Machine Learning, Deep Learning, NLP ও LLM, Prompt Engineering — সব এক জায়গায়।
- AI সংবাদ ও সাম্প্রতিক ঘটনাবলি Blog ABCL TECH-এর বাংলা AI সংবাদ — Claude, GPT, Gemini-এর নতুন মডেল ও আপডেট নিয়ে।