Back to course
Module 2 · Day 13

Reasoning Techniques: Chain-of-Thought & Self-Critique

Module 2-র শেষ দিন। Model-কে ধাপে ধাপে ভাবতে বলা — কখন সাহায্য করে, কখন করে না, production-এ structured রাখবে কীভাবে, আর প্রতিটা technique নিজের eval harness-এ কীভাবে re-measure করবে।

~240 min read7 learning objectives
What you'll learn
  • Chain-of-Thought (CoT) কী আর কেন কাজ করে — “কাজ দেখাও”-এর প্রভাব।
  • CoT কখন সাহায্য করে (math/logic) আর কখন করে না বা ক্ষতি করে (simple classification) — বুঝে use করা।
  • Production-এ structured CoT — `<thinking>` tags দিয়ে reasoning আর parseable answer আলাদা রাখা।
  • Self-critique loop চালানো — generate → critique → refine, এক model তিন ভূমিকায়।
  • Self-consistency বোঝা — multiple path sample করে majority vote, accuracy বনাম খরচ।
  • Modern reasoning model (adaptive thinking) আর prompted CoT-র পার্থক্য — কখন কোনটা।
  • যেকোনো reasoning technique eval harness-এ re-measure করা — Module 2-র শেষ শিক্ষা।
Before this
  • Day 8 — zero-shot baseline prompt + hand-built test cases।
  • Day 11 — runner + assertions (exact_match) working।
  • Day 12 — prompt versioning + pass-rate trajectory; v3-এ CoT কীভাবে regression এনেছিল মনে আছে।
1

The Big Picture

Module 2-র শেষ দিন — reasoning technique-ও নিজের eval harness দিয়ে মাপতে হয়।

Module 2-র শেষ দিন এটা (Day 4–13)। এতদিন prompt বানিয়েছ, structure শিখেছ, evaluate করেছ। আজ শেখা প্রতিটা reasoning technique — CoT, self-critique, self-consistency — একই নিয়মে চলবে: “smarter লাগছে” যথেষ্ট না, নিজের eval harness-এ re-measure করে দেখাতে হবে। এটাই আজকের capstone।

Chain-of-ThoughtCoT — “show your work”

উত্তরের আগে model-কে ধাপে ধাপে যুক্তি লিখতে বলা। Zero-shot trigger এক লাইন — `Let's think step by step`; few-shot হলে কয়েকটা worked example দেখাও। Intermediate steps লেখায় multi-step সমস্যায় ভুল কমে।

Why it matters

অঙ্ক পরীক্ষায় শিক্ষক বলেন “কাজ দেখাও” — সরাসরি উত্তরে এক ভুলে শূন্য, ধাপ লিখলে নিজের ভুল নিজে ধরা পড়ে। Model-এর বেলায়ও তাই: ধাপ লেখার জায়গা পেলে হিসাব হারায় না। ২০২২-এর একটা landmark paper দেখায় এটা বড় model-এ emergent।

নিচের multi-step bKash হিসাবটা দেখো — সরাসরি উত্তর আর ধাপে ধাপে উত্তর পাশাপাশি। Run চেপে দেখো ধাপ আসতে আসতে উত্তরটা কীভাবে ঠিক হয়ে যায়।

Selective reasoningCoT কখন সাহায্য, কখন ক্ষতি

CoT universal switch না। ১০০+ paper-এর একটা 2024-এর meta-analysis: math, logic, symbolic — বড় গেইন; simple classification, commonsense, factual lookup — প্রায় শূন্য, কখনো negative। উপরন্তু প্রতিবার বেশি token + latency।

Why it matters

রাফির complaint-categorizer এক-শব্দের label দেয় — এখানে CoT জুড়লে accuracy বাড়ে না, উল্টো reasoning preamble এসে exact_match ভাঙে (Day 12-র v3)। “সব prompt-এ CoT লাগাও” — এটাই সবচেয়ে common ভুল। কখন লাগাবে, সেটাই আসল skill।

2

Core Concepts

CoT কখন কাজ করে, production-এ কীভাবে structure করবে, আর self-critique loop।

উপরের bKash উদাহরণে CoT জিতেছে। কিন্তু সব জায়গায় জেতে না। নিচের ৬টা task-type চাপ দিয়ে দেখো — কোথায় CoT বড় সাহায্য করে, কোথায় প্রায় কিছুই বদলায় না, আর কোথায় উল্টো ক্ষতি করে।

Structured CoT<thinking> tags + last-line answer

Reasoning `<thinking>...</thinking>`-এ আটকাও, final answer শেষ লাইনে একা রাখো। তাহলে parser শুধু শেষ লাইন নেয় — reasoning থাকল, কিন্তু output পরিষ্কার, exact_match মেলে।

Why it matters

Day 12-র গল্প: v3 raw CoT যোগ করে pass rate ৭৮% → ৭৩% (preamble leak)। v4 `<thinking>` tags + “final label on the LAST line, alone” দিয়ে ৮৪%। একই reasoning, শুধু format — তফাত eval-এ সরাসরি দেখা গেছে। Production CoT মানেই structured CoT।

Day 12-র v3 মনে আছে? CoT যোগ করার পর pass rate পড়ে গিয়েছিল — কারণ output-এর শুরুতে reasoning preamble চলে এসেছিল, exact_match মেলেনি। নিচে raw বনাম structured দুটো version toggle করে দেখো কোনটা parser-এ টেকে।

Self-critiquegenerate → critique → refine

এক model তিন ভূমিকায়: প্রথমে draft লেখে (generator), তারপর সেই draft-কে দেওয়া criteria দিয়ে যাচাই করে (critic), শেষে critique মেনে আবার লেখে (refiner)। কোনো extra training লাগে না। একটা landmark study-তে (Self-Refine পদ্ধতি) গড়ে ~২০% উন্নতি।

Why it matters

নিজের লেখা ভুল ধরা সহজ, এক চেষ্টায় perfect লেখা কঠিন — model-এর জন্যও তাই। তবে শর্ত: criteria দিতে হবে (“delay উল্লেখ করেছ? concrete date দিয়েছ?”)। এই generate→critique→refine loop-টাই পরের কোনো module-এর self-correcting agent-এর বীজ।

Structured CoT output পরিষ্কার রাখে। Self-critique আরেক ধাপ এগিয়ে — model নিজের output-কেই criteria দিয়ে যাচাই করে, তারপর ঠিক করে। নিচে রাফির একটা delayed-order English reply-তে পুরো loop-টা চালাও।

3

Try It Yourself

একাধিক reasoning path sample করে ভোট, আর modern reasoning model-এ কী বদলায়।

Self-consistencysample N paths, majority vote

একই কঠিন প্রশ্ন temperature দিয়ে N বার চালাও — আলাদা আলাদা reasoning path আসে। শেষে final answer-গুলোর majority vote নাও। একটা path ভুল করলেও বাকিরা টেনে তোলে। একটা landmark study-তে GSM8K ৫৬% → ৭৪% (৪০ sample-এ)।

Why it matters

একটা reasoning chain ভুল মোড় নিতে পারে; কিন্তু বেশিরভাগ পথ ঠিক উত্তরে মেলে। ভোট সেই common উত্তর বেছে নেয়। দাম: N গুণ token + latency। তাই free না — শুধু high-value, hard problem-এ।

Self-critique এক model-কে নিজের ভুল ধরতে শেখায়। Self-consistency ভিন্ন approach — একই প্রশ্ন কয়েকবার চালিয়ে ভোট নেওয়া। নিচের marble-probability সমস্যায় ৫টা path sample করো, দেখো ভোট কীভাবে একটা ভুল path-কে ছাপিয়ে যায়।

Reasoning modelsadaptive / extended thinking

Modern frontier model (Claude adaptive thinking, o-series) ভিতরে ভিতরেই reason করে — তুমি `<thinking>` না লিখলেও। কত ভাববে নিজেই ঠিক করে (effort/budget)। এর উপর হাতে “think step by step” জুড়লে redundant, কখনো overthinking বাড়ায়।

Why it matters

তাই prompted CoT (তুমি লেখো) আর built-in reasoning (model করে) — দুটো আলাদা। Manual CoT এখন fallback: thinking off থাকলে, ছোট/পুরোনো model-এ, বা reasoning trace দেখাতে চাইলে। এখন default frontier model-এ আগে মাপো, তারপর দরকার হলে হাতে reasoning জোড়ো।

Re-measurereasoning ও eval harness-এ মাপো

CoT, self-critique, self-consistency — যেটাই যোগ করো, শেষ ধাপ একটাই: Day 11-র runner আবার চালাও, pass rate দেখো। “Smarter লাগছে” কোনো প্রমাণ না।

Why it matters

এটাই পুরো Module 2-র সমাপ্তি। Day 4 বলেছিল vibes না, evals। Day 13 সেটাকে reasoning technique-এও খাটায়: CoT যোগ করে v3-তে মনে হয়েছিল smarter, eval বলল −5pp। কাকে বিশ্বাস করবে? eval-কে। এটাই তোমার measured production prompt — Module 2 milestone।

Tip

আজ তিনটা জিনিস করো — (১) নিজের project-এর একটা multi-step task নাও, zero-shot বনাম `Let's think step by step` দুটো version try করো; (২) CoT যোগ করলে output structured রাখো — `<thinking>` tags-এ reasoning, final answer শেষ লাইনে একা; (৩) Day 11-র runner দিয়ে দুই version-ই re-run করো — pass rate compare করো, শুধু “ভালো লাগছে” বলে থেমো না।

4

Check Your Understanding

ভুল হলে সমস্যা নেই — প্রতিটার ব্যাখ্যা আছে।

Misconception check

CoT সব prompt-এ যোগ করলেই model smarter হয় — always add “think step by step”

Misconception check

Modern reasoning model-এও prompt-এ “Let's think step by step” লিখতে হয়

Misconception check

Self-critique সবসময় answer ভালো করে — শুধু “critique yourself” বললেই হলো

Misconception check

CoT-র reasoning টেক্সটটাই উত্তর — পুরো output-টা return করে দাও

Misconception check

Self-consistency = free accuracy boost — সবসময় চালাও

Quick check

CoT কোন ধরনের task-এ সবচেয়ে বেশি সাহায্য করে?

ভুল হলেও সমস্যা নেই — প্রতিটা option-এর সাথে ব্যাখ্যা আছে।

Quick check

Day 12-এ v3-তে CoT যোগ করে pass rate পড়ে গেল — কেন, আর fix কী?

ভুল হলেও সমস্যা নেই — প্রতিটা option-এর সাথে ব্যাখ্যা আছে।

Quick check

Zero-shot CoT-র trigger phrase কোনটা?

ভুল হলেও সমস্যা নেই — প্রতিটা option-এর সাথে ব্যাখ্যা আছে।

Quick check

Self-consistency কীভাবে কাজ করে?

ভুল হলেও সমস্যা নেই — প্রতিটা option-এর সাথে ব্যাখ্যা আছে।

Quick check

Adaptive-thinking model-এ (Claude latest) prompt-এ “think step by step” যোগ করবে?

ভুল হলেও সমস্যা নেই — প্রতিটা option-এর সাথে ব্যাখ্যা আছে।

Quick check

Reasoning technique যোগ করার পর শেষ ধাপ কী?

ভুল হলেও সমস্যা নেই — প্রতিটা option-এর সাথে ব্যাখ্যা আছে।

5

Prove It To Yourself

চারটা takeaway মনে রাখো। Module 2 এখানেই শেষ।

Note

চারটা জিনিস মনে রাখো — CoT মানে কাজ দেখানো: multi-step math/logic-এ বড় সাহায্য করে, simple classification-এ প্রায় কিছুই না — selective, universal না। Reasoning-এর দাম আছে: latency, token, parser ভাঙার ঝুঁকি — প্রতিটা technique eval harness-এ মাপো, “smarter লাগছে” প্রমাণ না। Generate → critique → refine: self-critique মানে এক model তিন টুপি, concrete criteria দিয়ে — এটাই self-correcting agent-এর বীজ। Modern model ভিতরেই ভাবে: reasoning model-এ হাতে “step by step” জুড়ো না — prompted CoT বনাম built-in reasoning চেনো, দু'ভাবেই মাপো।

আজকের শব্দগুলো — chain-of-thought, CoT, zero-shot CoT, structured CoT, thinking tags, self-critique, self-refine, self-consistency, majority vote, reasoning model, extended thinking, adaptive thinking, overthinking — এখন থেকে English-ই থাকবে; prompt লেখার সময়, PR review-এ এভাবেই দেখবে। পুরো তালিকা নিচের glossary-তে। Module 2 এখানেই শেষ — পরের module থেকে নতুন অধ্যায়।

Glossary

শব্দার্থ — পরে ফিরে দেখার জন্য

একনজরে সব key term। কোনো শব্দ ভুলে গেলে এখানে এসে খুঁজে নিও।

“Let's think step by step”
Zero-shot CoT-র canonical trigger phrase।
<thinking> tags
Reasoning আর final answer আলাদা করার XML marker — exact_match বাঁচায়।
Adaptive thinking
Model নিজেই ঠিক করে কখন ও কতটা ভাববে (effort/query complexity-র উপর)।
Chain-of-Thought (CoT)
উত্তরের আগে ধাপে ধাপে reasoning লেখানো — “show your work”।
Critic / verifier
Output যাচাই করা component — নিজেই হতে পারে, আলাদা call-ও হতে পারে।
Extended thinking
Model-এর built-in reasoning block — prompted CoT না, inference-এর অংশ।
Few-shot CoT
কয়েকটা worked-out example দেখিয়ে reasoning-এর প্যাটার্ন শেখানো।
Intermediate steps
Final answer-এর আগে model যে reasoning ধাপগুলো লেখে — reasoning trace।
Majority vote
একাধিক answer-এর মধ্যে যেটা সবচেয়ে বেশিবার এলো সেটা বেছে নেওয়া।
Overthinking
দরকারের বেশি reasoning — latency/cost বাড়ায়, কিছু task-এ accuracy কমায়।
Reasoning model
ভিতরে ভিতরে reason করা model (Claude adaptive thinking, o-series)।
Self-consistency
Multiple reasoning path sample করে majority vote।
Self-critique
Model নিজের draft-কে criteria দিয়ে যাচাই করে — critic-এর ভূমিকা।
Self-refine
Generate → critique → refine loop; এক model তিন ভূমিকায়।
Structured CoT
Reasoning <thinking> tags-এ, answer শেষ লাইনে একা — parseable রাখার pattern।
Thinking budget / effort
Model কত token reasoning-এ খরচ করবে তার নিয়ন্ত্রণ।
Zero-shot CoT
কোনো example ছাড়া এক লাইন (“Let's think step by step”) দিয়ে reasoning চালু।
References

Sources consulted to author this lesson. Citation style is informal — follow the links if you want to dig deeper.

Exit check

দুই বাক্যে নিজের ভাষায় লেখো

নিজের ভাষায় দুই বাক্যে লেখো — নিজের কোন task-এ CoT ব্যবহার করবে (আর কেন), এবং সেটা যোগ করার পর pass rate re-measure করতে কী করবে।

0 chars
Back to course