পাঠ ১০ · ২৮-এর মধ্যে
Home / AI Courses / প্রম্পট ইঞ্জিনিয়ারিং / অনিশ্চয়তা প্রকাশের অনুমতি

অনিশ্চয়তা প্রকাশের অনুমতি

Permission to express uncertainty
৭ মিনিট পড়া মাঝারি · Intermediate পাঠ ০১ জানা থাকলে ভালো সম্পূর্ণ বাংলায়

এই পাঠে যা শিখবেন

  • অনিশ্চয়তা প্রকাশের অনুমতি দেওয়ার ধারণা এবং এর ব্যবহারিক প্রয়োগ
  • কেন মডেল স্বাভাবিকভাবেই "নিশ্চিত শোনানো" উত্তরের দিকে ঝুঁকে থাকে
  • এই আচরণ প্রশিক্ষণ প্রক্রিয়ার সাথে কীভাবে সম্পর্কিত
  • একটি বাস্তব before/after সিস্টেম প্রম্পট উদাহরণ দিয়ে এই কৌশল প্রয়োগ করা

১ · সমস্যাটা কী — মডেল কেন সবসময় "নিশ্চিত" শোনায়?

লক্ষ্য করলে দেখা যায় — একটি LLM প্রায় সবসময় আত্মবিশ্বাসী টোনে উত্তর দেয়, এমনকি যখন প্রশ্নের সঠিক উত্তর তার আসলে "জানা" নেই (বা বলা ভালো, তার প্রশিক্ষণ ডেটায় পর্যাপ্ত প্যাটার্ন ছিল না)। এই আত্মবিশ্বাসী কিন্তু ভুল উত্তরকেই বলা হয় HallucinationHallucinationযখন একটি LLM আত্মবিশ্বাসের সাথে এমন তথ্য উপস্থাপন করে যা আসলে ভুল বা বানানো, কিন্তু গঠনগতভাবে সম্পূর্ণ বাস্তব উত্তরের মতোই দেখতে।।

পাঠ ০১-এ এই কোর্সের সবচেয়ে গুরুত্বপূর্ণ ধারণাটা আমরা প্রতিষ্ঠা করেছি — একটি LLM প্রকৃতপক্ষে একটি পরবর্তী-টোকেন- অনুমানকারী যন্ত্র। প্রতিটি ধাপে এটি জিজ্ঞেস করে "এই মুহূর্ত পর্যন্ত যা লেখা হয়েছে, তার পরে সবচেয়ে সম্ভাব্য টোকেন কোনটা?" এই পাঠে আমরা এই ধারণাটাকে ব্যবহার করব বোঝার জন্য — ঠিক কেন hallucination হয়, এবং কেন একটি সাধারণ নির্দেশনা এটা কমাতে পারে।

২ · কেন এটা ঘটে — প্রশিক্ষণ ডেটার একটি লুকানো পক্ষপাত

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

এরপর, fine-tuning ও reinforcement learning পর্যায়ে (যেখানে মডেলকে "ভালো" উত্তর দিতে প্রশিক্ষিত করা হয়), মূল্যায়নকারীরা প্রায়ই একটি সম্পূর্ণ, নির্দিষ্ট উত্তরকে "আমি জানি না"-জাতীয় উত্তরের চেয়ে বেশি পছন্দ করেছেন — এমনকি যখন প্রকৃত সৎ উত্তর হওয়া উচিত ছিল অনিশ্চয়তা স্বীকার করা। ফলাফল — মডেল শিখে ফেলে যে একটি নির্দিষ্ট, আত্মবিশ্বাসী-শোনানো উত্তর প্রায়ই "উচ্চ পুরস্কার" পায়, এমনকি যদি সেটা ভুল হয়, তুলনায় একটি অস্পষ্ট "আমি জানি না" উত্তরের চেয়ে।

মূল কথা · Key takeaway

"আমি জানি না" খুব কমই একটি আদর্শ ট্রেনিং টার্গেট হিসেবে বিবেচিত হয়েছে। তাই ডিফল্টভাবে, মডেল implicit ভাবে পুরস্কৃত হয়েছে একটি আত্মবিশ্বাসী-শোনানো উত্তর তৈরি করার জন্য — অজ্ঞতা স্বীকার করার জন্য নয়। এটাই মূল কারণ কেন মডেল ডিফল্টভাবে অনিশ্চয়তা প্রকাশ করতে "দ্বিধাগ্রস্ত।"

৩ · কেন স্পষ্ট অনুমতি এটা পরিবর্তন করে

যদি মডেল "সবচেয়ে সম্ভাব্য পরবর্তী টোকেন" অনুমান করে প্রেক্ষাপটের ভিত্তিতে, তাহলে প্রেক্ষাপটে যা লেখা আছে তা সরাসরি প্রভাবিত করে কোন ধরনের continuation "সবচেয়ে সম্ভাব্য" মনে হয়। ডিফল্ট প্রেক্ষাপটে (যেখানে অনিশ্চয়তা প্রকাশের কোনো উল্লেখ নেই), একটি নির্দিষ্ট, সম্পূর্ণ উত্তর-প্যাটার্নই সবচেয়ে "স্বাভাবিক" পরবর্তী পদক্ষেপ মনে হয় — কারণ প্রশিক্ষণ ডেটায় বেশিরভাগ প্রশ্নোত্তর ঠিক এভাবেই শেষ হয়েছে।

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

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

৪ · বাস্তব প্রয়োগ — Before/After উদাহরণ

নিচে একটি সিস্টেম প্রম্পটের দুটো সংস্করণ দেখা যাক — একটি অনুমতি ছাড়া, একটি স্পষ্ট অনুমতি সহ।

❌ অনুমতি ছাড়া (Without permission):

System prompt
You are a helpful research assistant. Answer the user's questions
about historical events and figures.

✅ স্পষ্ট অনুমতি সহ (With explicit permission):

System prompt
You are a helpful research assistant. Answer the user's questions
about historical events and figures. If you're not confident about
a specific date, name, or detail, say so explicitly rather than
guessing — it's better to say "I'm not certain" than to state an
unverified fact as if it were established.

লক্ষ্য করুন — দ্বিতীয় সংস্করণে শুধু "সৎ থাকো" জাতীয় একটি অস্পষ্ট নির্দেশনা নেই, বরং এটি স্পষ্টভাবে বলে দেয় ঠিক কোন পরিস্থিতিতে (নির্দিষ্ট তারিখ, নাম, খুঁটিনাটি বিবরণ) এবং ঠিক কীভাবে (নিশ্চিত না হলে তা প্রকাশ করা) আচরণ করতে হবে — এটাই একে কার্যকর করে তোলে, শুধু একটি সাধারণ ভালো-উদ্দেশ্যের বাক্য নয়।

এই কৌশলটি বিশেষভাবে গুরুত্বপূর্ণ RAG সিস্টেম (পাঠ ২৪), ফ্যাক্ট-চেকিং টুল, এবং যেকোনো অ্যাপ্লিকেশনে যেখানে ভুল কিন্তু আত্মবিশ্বাসী উত্তর একটি বাস্তব ঝুঁকি তৈরি করতে পারে — যেমন স্বাস্থ্য, আইন বা আর্থিক পরামর্শ সংক্রান্ত তথ্য প্রদানকারী যেকোনো সিস্টেমে।

৫ · এর সীমাবদ্ধতা বোঝা

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

অনুমতি দেওয়া hallucination সম্পূর্ণ দূর করে না — এটি একটি ঝুঁকি-হ্রাসকারী কৌশল, নিরাময় নয়। উচ্চ-ঝুঁকিপূর্ণ অ্যাপ্লিকেশনে (মেডিকেল, আইনি, আর্থিক), এই কৌশলের পাশাপাশি সবসময় বাস্তব তথ্য যাচাই (RAG, সোর্স-সাইটেশন, মানব পর্যালোচনা) ব্যবহার করা উচিত — শুধু প্রম্পটিং-এর উপর নির্ভর করা যথেষ্ট নয়।
মূল কথা · Key takeaway

Hallucination কোনো "বাগ" নয় যা ঠিক করা যায় — এটি একটি স্বাভাবিক ফলাফল, যেভাবে মডেল প্রশিক্ষিত ও কাজ করে। অনিশ্চয়তা প্রকাশের স্পষ্ট অনুমতি একটি সহজ কিন্তু শক্তিশালী উপায় — এটি প্রেক্ষাপট বদলে দেয় যাতে "সততা" এখন মডেলের জন্য প্রত্যাশিত ও পুরস্কৃত একটি continuation হয়ে ওঠে, লজ্জাজনক ব্যতিক্রম নয়।

ভাবনার প্রশ্ন

প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।

প্র ০১ যদি মডেলের "প্রকৃত জ্ঞানের সীমা" সম্পর্কে কোনো আত্ম-সচেতনতা না থাকে, তাহলে কীভাবে সে "নিশ্চিত না হলে বলো" নির্দেশনা আদৌ অনুসরণ করতে পারে?

মডেলের প্রশিক্ষণ ডেটায় এমন প্যাটার্ন আছে যেখানে কিছু তথ্য (সুপরিচিত, বহু উৎসে বারবার নিশ্চিত হওয়া ঘটনা) অনেক বেশি ধারাবাহিকভাবে উপস্থিত, আর কিছু তথ্য (বিরল, অস্পষ্ট, বিতর্কিত) খুব কম বা পরস্পরবিরোধীভাবে উপস্থিত। এই পার্থক্যটা পরোক্ষভাবে মডেলের অভ্যন্তরীণ সম্ভাবনা-বিতরণে প্রতিফলিত হয়।

তাই যখন নির্দেশ দেওয়া হয় "নিশ্চিত না হলে বলো," মডেল আংশিকভাবে এই অভ্যন্তরীণ প্যাটার্ন-ঘনত্বের সিগন্যাল ব্যবহার করতে পারে — এটি নিখুঁত নয়, কিন্তু সম্পূর্ণ এলোমেলোও নয়। এটাই কেন এই কৌশল আংশিক কার্যকর, কিন্তু নিখুঁত নয়।

প্র ০২ fine-tuning পর্যায়ে যদি মূল্যায়নকারীরা "আমি জানি না" উত্তরকে সবসময় কম পছন্দ করেন, তাহলে এই সমস্যা প্রশিক্ষণের সময়ই কীভাবে সমাধান করা যেত?

একটি পদ্ধতি হলো মূল্যায়ন-নির্দেশিকা পরিবর্তন করা — যেখানে একটি সৎ "আমি নিশ্চিত নই" উত্তরকে একটি আত্মবিশ্বাসী কিন্তু ভুল উত্তরের চেয়ে বেশি নম্বর দেওয়া হয়, বিশেষত এমন প্রশ্নে যেখানে সঠিক উত্তর যাচাইযোগ্য নয় বা অস্পষ্ট।

বাস্তবে, প্রধান AI ল্যাবগুলো (Anthropic সহ) সাম্প্রতিক বছরগুলোতে ঠিক এই দিকেই কাজ করছে — মডেলের calibration (আত্মবিশ্বাস আসল নির্ভুলতার সাথে কতটা মিলে যায়) উন্নত করার জন্য প্রশিক্ষণ পদ্ধতি সামঞ্জস্য করা। কিন্তু প্রম্পট পর্যায়ে স্পষ্ট অনুমতি দেওয়া এখনো একটি সহজলভ্য, তাৎক্ষণিক পরিপূরক কৌশল, যা ব্যবহারকারীর হাতেই সম্পূর্ণ নিয়ন্ত্রণে।

প্র ০৩ একটি হাই-স্টেক (স্বাস্থ্য বা আইন সংক্রান্ত) অ্যাপ্লিকেশনে শুধু "অনিশ্চয়তা প্রকাশের অনুমতি" যথেষ্ট নয় কেন — আর কী প্রয়োজন?

কারণ এই কৌশলটি শুধু মডেলের প্রকাশভঙ্গি পরিবর্তন করে, তার প্রকৃত জ্ঞান বা সীমাবদ্ধতা পরিবর্তন করে না। একটি ভুল তথ্য এখনো "ভুল" থেকে যাবে, শুধু হয়তো মডেল মাঝেমধ্যে সেটা প্রকাশ করার সময় সতর্কতা যোগ করবে — কিন্তু এটা গ্যারান্টিযুক্ত নয়।

তাই হাই-স্টেক অ্যাপ্লিকেশনে প্রয়োজন — যাচাইযোগ্য উৎস থেকে তথ্য সরবরাহ করা (RAG, পাঠ ২৪), সোর্স-সাইটেশন বাধ্যতামূলক করা, এবং চূড়ান্ত সিদ্ধান্তে মানব বিশেষজ্ঞের পর্যালোচনা যুক্ত করা। প্রম্পটিং শুধু ঝুঁকি কমায়, দূর করে না।

অনুশীলন

  1. পরীক্ষা করুন: একটি অস্পষ্ট বা সাম্প্রতিক তথ্য-নির্ভর প্রশ্ন (যেমন কম-পরিচিত একটি ঐতিহাসিক ঘটনার নির্দিষ্ট তারিখ) কোনো LLM-কে দুইভাবে জিজ্ঞেস করুন — একবার সরাসরি, আরেকবার "নিশ্চিত না হলে বলো" নির্দেশনা যোগ করে।

    অনেক ক্ষেত্রে দ্বিতীয় প্রম্পটে মডেল হয় স্পষ্ট অনিশ্চয়তা প্রকাশ করবে, নয়তো উত্তরের সাথে একটি সতর্কতা যোগ করবে (যেমন "এই তারিখটি নিয়ে বিভিন্ন উৎসে মতভেদ আছে")। প্রথম প্রম্পটে প্রায়ই একটি নির্দিষ্ট তারিখ সরাসরি দেওয়া হবে, কোনো সতর্কতা ছাড়াই।

  2. লিখুন: একটি চিকিৎসা-তথ্য চ্যাটবটের জন্য একটি সিস্টেম প্রম্পট লিখুন যেখানে অনিশ্চয়তা প্রকাশের অনুমতি এবং একটি সতর্কতা (যে এটি পেশাদার চিকিৎসা পরামর্শের বিকল্প নয়) — দুটোই অন্তর্ভুক্ত থাকবে।

    একটি ভালো উত্তরে থাকবে — রোল ("স্বাস্থ্য তথ্য সহায়ক"), স্পষ্ট অনিশ্চয়তা-অনুমতি ("নির্দিষ্ট ডোজ বা রোগ নির্ণয় সম্পর্কে নিশ্চিত না হলে তা স্বীকার করো"), এবং একটি স্পষ্ট ডিসক্লেইমার (সবসময় ব্যবহারকারীকে প্রকৃত চিকিৎসকের কাছে যেতে উৎসাহিত করা)।

  3. বিশ্লেষণ করুন: কেন "সততার সাথে উত্তর দাও" জাতীয় একটি সাধারণ, অস্পষ্ট নির্দেশনা এই পাঠের নির্দিষ্ট উদাহরণের ("যদি নিশ্চিত না হও...") চেয়ে কম কার্যকর হতে পারে?

    "সততার সাথে উত্তর দাও" একটি বিমূর্ত গুণাবলি নির্দেশ করে, কিন্তু ঠিক কোন পরিস্থিতিতে কী আচরণ প্রত্যাশিত তা স্পষ্ট করে না। নির্দিষ্ট নির্দেশনা ("যদি তারিখ/নাম/বিবরণ নিয়ে নিশ্চিত না হও, বলো") মডেলকে একটি স্পষ্ট, যাচাইযোগ্য আচরণ-প্যাটার্ন দেয় যা সরাসরি প্রয়োগ করা যায় — এটাই পাঠ ০৩-এর "স্বচ্ছতা ও সরাসরি ভাব" নীতির সাথে সরাসরি সম্পর্কিত।

আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ

পূর্ববর্তী পাঠ
আউটপুট ফরম্যাট নিয়ন্ত্রণ