রিজনিং এফোর্ট এবং চিন্তার টোকেন: কেন চিন্তা বেশি খরচ করে
চিন্তার টোকেন আউটপুট হিসেবে বিল করা হয়। এফোর্ট স্তরগুলির অর্থ কী, max_tokens-এ কী দিতে হবে যাতে উত্তর কাটা না পড়ে, এবং বিল কীভাবে অনুমান করবেন।

এই পৃষ্ঠায়
আপনার অনুরোধ ছিল একটি তথ্যমূলক প্রশ্ন। উত্তর ছিল তিন লাইন। আউটপুট কাউন্টার হাজার হাজার টোকেন দেখাচ্ছে। এটি কোনো বাগ নয়: উত্তর দেওয়ার আগে, অনেক মডেল একটি লুকানো স্ক্র্যাচপ্যাডে চিন্তা করে, এবং সেই চিন্তার টোকেনগুলি আউটপুট টোকেন হিসেবে বিল করা হয়। এফোর্ট সেটিং সিদ্ধান্ত নেয় কতটা চিন্তা হবে, এবং max_tokens-কে তার জন্য জায়গা রাখতে হবে, নাহলে আপনি কাটা বা খালি উত্তর পাবেন।
উত্তর দেওয়ার আগে মডেল কী করে#
একটি পরীক্ষার কথা ভাবুন। আপনি সরাসরি উত্তর লিখতে পারেন, বা প্রথমে এক পাতা রাফ কাজ করতে পারেন। রাফ কাজ প্রায়ই কঠিন সমস্যায় ভালো ফল দেয়, কিন্তু কাগজটা ফ্রি নয়। রিজনিং হলো সেই রাফ কাজ, এবং এটি টোকেন-এ গণনা করা হয় অন্য সবকিছুর মতো।
Anthropic-এর এক্সটেন্ডেড-থিংকিং ডকুমেন্টেশন (২৩ অক্টোবর ২০২৬-এ যাচাই করা) বলছে চিন্তার টোকেনগুলি বিল করা আউটপুট টোকেনের অংশ, এবং প্রতিক্রিয়া আপনাকে জানায় কতগুলি: usage.। ধরুন একটি প্রতিক্রিয়া এই ব্যবহার ব্লক নিয়ে ফিরে আসে (উদাহরণ সংখ্যা):
"usage": {
"input_tokens": 480,
"output_tokens": 2150,
"output_tokens_details": { "thinking_tokens": 1900 }
}আপনাকে ২,১৫০ আউটপুট টোকেনের জন্য বিল করা হয়। চিন্তা তার মধ্যে ১,৯০০ নিয়েছে, তাই আপনি যে টেক্সটটি আসলে পড়েন তা হলো ২,১৫০ − ১,৯০০ = ২৫০ টোকেন। একই কথা প্রযোজ্য যখন চিন্তার টেক্সট আপনাকে ফেরত দেওয়া হয় না: এটি তখনও গণনা করা হয়। আপনি যদি প্রথমে ইনপুট এবং আউটপুটের মধ্যে পার্থক্য স্পষ্টভাবে জানতে চান, ইনপুট বনাম আউটপুট টোকেন দিয়ে শুরু করুন।
এফোর্ট: চিন্তার ডায়াল#
Claude-এর API-তে ডায়ালটি হলো output_। Anthropic-এর এফোর্ট পৃষ্ঠা (২৩ অক্টোবর ২০২৬-এ যাচাই করা) পাঁচটি স্তর তালিকাভুক্ত করে: low, medium, high, xhigh, max। একজন শিক্ষানবিশের জন্য তিনটি বিবরণ গুরুত্বপূর্ণ:
- এটি প্রতিটি আউটপুট টোকেনকে প্রভাবিত করে, শুধু চিন্তা নয়: টেক্সট, টুল কল এবং চিন্তা একসাথে।
- এটি একটি আচরণগত সংকেত, কঠোর বাজেট নয়। কম এফোর্ট মানে কিছু সামর্থ্যের মূল্যে কম টোকেন; কম এফোর্টে Claude একটি সহজ সমস্যায় চিন্তা সম্পূর্ণ এড়িয়ে যেতে পারে।
- ডিফল্ট হলো Claude Opus 5.5 এবং Claude Haiku 5.5-এ
medium, এবং প্যারামিটারটি সমর্থন করে এমন বেশিরভাগ অন্যান্য মডেলেhigh। ডিফল্টটি স্পষ্টভাবে সেট করা এটি বাদ দেওয়ার মতোই।
স্তরগুলি প্রতি মডেলে পুনঃক্রমাঙ্কিত হয়, তাই একটি মডেলে high অন্য মডেলে high-এর সমান পরিমাণ চিন্তা নয়, এবং প্রতিটি মডেল প্রতিটি স্তর গ্রহণ করে না। একটি প্রকাশিত ভিডিওতে কেউ একই মোশন-গ্রাফিক্স কাজে Claude Opus 5.5-এর প্রতিটি এফোর্ট স্তর চালিয়েছিল এবং ছবিগুলি তুলনা করেছিল। বেশি চিন্তা কী দেয় তা দেখার এটি একটি ভালো উপায়। এটি আপনার বিল বলবে না, কারণ আপনার কাজ তাদের কাজ নয়।
একটি সহজ প্রশ্নের জন্য অনুরোধ, এফোর্ট কমানো:
{
"model": "claude-opus-5-5",
"max_tokens": 4000,
"output_config": { "effort": "low" },
"messages": [
{ "role": "user", "content": "What is the capital of Australia?" }
]
}খালি-উত্তরের ফাঁদ: চিন্তা max_tokens-এর দিকে গণনা করা হয়#
এখানে এটি কীভাবে ভুল হয়। আপনি দুই বাক্যের উত্তর আশা করেন, তাই আপনি max_tokens ৩০০-এ সেট করেন। মডেল চিন্তা শুরু করে, তার স্ক্র্যাচপ্যাডে ৩০০ খরচ করে, সীমায় পৌঁছে থেমে যায়। আপনি একটি খালি উত্তর বা একটি বাক্য পাবেন যা শব্দের মাঝখানে শেষ হয়, এবং স্টপ কারণ বলে max_tokens।
ডকুমেন্টেশন স্পষ্ট: max_tokens হলো মোট আউটপুটের উপর একটি কঠোর সীমা, চিন্তা প্লাস প্রতিক্রিয়া টেক্সট, এবং চিন্তা তখনও গণনা করা হয় যখন তার বিষয়বস্তু ফেরত দেওয়া হয় না। high এফোর্ট এবং তার উপরে, Anthropic একটি বড় মান সেট করার পরামর্শ দেয়।
বাস্তবে:
- আপনি যে দৈর্ঘ্যের উত্তর চান তা নিন।
- চিন্তার জন্য উদার জায়গা যোগ করুন।
low-এর উপরে যেকোনো কিছুর জন্য কয়েক হাজার টোকেন একটি সংবেদনশীল শুরু। - প্রথম কয়েকটি রানের পরে স্টপ কারণ পরীক্ষা করুন। যদি এটি এখনও
max_tokensবলে, সীমা বাড়ান। যদি উত্তর সম্পূর্ণ হয়, আপনি এটি কমাতে পারেন।
কাটা নিজেই, finish_reason এবং কনটেক্সট উইন্ডো সহ, কেন একটি AI উত্তর বাক্যের মাঝখানে থামে-এ আলোচনা করা হয়েছে।
দীর্ঘ রিজনিং বিলে কী করে#
ধরুন আপনি একটি সাপোর্ট বট চালান যেখানে দিনে ২,০০০ টিকিট। প্রতিটি টিকিট প্রায় ৫০০ টোকেন ইন। একটি সংক্ষিপ্ত, সরাসরি উত্তর প্রায় ৪০০ টোকেন আউট। দীর্ঘ লুকানো রিজনিং সহ একই টিকিট প্রায় ৪,০০০ টোকেন আউট। এগুলি উদাহরণের জন্য অনুমান; আপনার নিজের সংখ্যার জন্য দেখুন একটি অনুরোধ কত টোকেন ব্যবহার করে।
প্রতিদিন এটি হলো ২,০০০ × ৫০০ = ১,০০০,০০০ ইনপুট টোকেন, এবং হয় ২,০০০ × ৪০০ = ৮০০,০০০ আউটপুট টোকেন বা ২,০০০ × ৪,০০০ = ৮,০০০,০০০ আউটপুট টোকেন। টিকিটের পাঠক উভয় ক্ষেত্রেই একই দুই লাইন দেখেন। শুধু আউটপুট ভলিউম পরিবর্তিত হয়েছে, এবং আউটপুট হলো সেই দিক যা রিজনিং ফুলিয়ে তোলে।
গণিত একই থাকে যে কোনো মডেলে যা লুকানো রিজনিং বিল করে: আউটপুট টোকেন × আউটপুট মূল্য। DeepSeek-V4-Flash-এর জন্য সেই মূল্য $0.10 প্রতি ১M আউটপুট টোকেন, এবং এর আউটপুট দিক OpenRouter-এর রেফারেন্স মূল্যের চেয়ে সস্তা। এটি ৩৮০K কনটেক্সট সহ একবারে ৩২,৭৬৮ টোকেন পর্যন্ত উত্তর দেয়, তাই একটি বড় max_tokens ফিট করে। মূল্য প্রতি মডেলে নির্ধারিত, পিক আওয়ার ছাড়া, এবং উপরের টেবিলটি লাইভ মূল্য তালিকা থেকে পুনঃগণনা করে। সমস্ত মূল্য মূল্য পৃষ্ঠা-এ; DeepSeek পৃষ্ঠা-এ মডেলের বিবরণ আছে।
এখানে একটি অনুরোধ যা আপনি নিজে পাঠাতে পারেন। এটি একটি সাধারণ সারাংশ কাজ, তাই আপনার দীর্ঘ রিজনিং দরকার নেই, এবং সীমা প্রচুর জায়গা রাখে:
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-ai/DeepSeek-V4-Flash-0731",
"max_tokens": 2000,
"messages": [
{"role": "user", "content": "Summarize in one sentence: A token is a small piece of text that a model reads and writes, and APIs bill by the token."}
]
}'প্রতিক্রিয়ায়, usage. হলো যা আপনি আউটপুট দিকে পরিশোধ করেন, এবং finish_reason হওয়া উচিত stop। যদি এটি length বলে, সীমা উত্তরটি কেটে দিয়েছে। কী এবং প্রথম কল পাওয়া: ডকুমেন্টেশন।
কোন কাজের জন্য কোন এফোর্ট#
- একটি তথ্য, এক-লাইন সারাংশ, একটি লেবেল। সর্বনিম্ন এফোর্ট। এটি নিবন্ধের শুরু থেকে কেস: আপনার রাফ কাজ দরকার নেই।
- প্রতিদিনের লেখা, একটি সংক্ষিপ্ত ব্যাখ্যা, একটি সহজ সম্পাদনা। মডেলের জন্য ডিফল্ট। উত্তরগুলির খরচ দেখার পরেই এটি পরিবর্তন করুন।
- একটি জটিল বাগ, একটি বহু-ধাপ পরিকল্পনা, একটি গণিত সমস্যা।
highবা তার উপরে, এবং একটি বড়max_tokens। এখানে অতিরিক্ত চিন্তা হলো মূল বিষয়।
নিশ্চিত না হলে, একই প্রম্পট দুটি স্তরে চালান, উত্তরগুলি তুলনা করুন, এবং output_tokens তুলনা করুন। যদি সস্তা উত্তরটি সমান ভালো হয়, আপনার স্তর পেয়ে গেছেন।
একটি পুরানো অনুরোধ সরানো: ৪০০ ত্রুটি#
পুরানো কোড টোকেন বাজেট দিয়ে চিন্তা নিয়ন্ত্রণ করত। Claude 4.7 এবং পরবর্তী মডেলে (Opus 5.5, Sonnet 5.5, Haiku 5.5, Fable 5.1) সেই ফর্মটি ৪০০ ত্রুটি দিয়ে প্রত্যাখ্যাত হয়। আপনি অ্যাডাপটিভ থিংকিং-এ স্যুইচ করেন এবং এফোর্ট দিয়ে গভীরতা সেট করেন:
// before: returns 400 on newer models
"thinking": { "type": "enabled", "budget_tokens": 8000 }
// after
"thinking": { "type": "adaptive" },
"output_config": { "effort": "medium" }
আরেকটি ফাঁদ: Opus 5.5-এ অ্যাডাপটিভ থিংকিং সর্বদা চালু থাকে, এবং thinking: { "type": "disabled" } প্রতিটি এফোর্ট স্তরে ৪০০ ফেরত দেয়। Haiku 5.5 high এফোর্ট বা তার নিচে চিন্তা নিষ্ক্রিয় করার অনুমতি দেয়। আপনি যদি Opus 5.5-এ কম চিন্তা চান, এটি বন্ধ করার পরিবর্তে এফোর্ট কমান।
এজেন্ট এবং দীর্ঘ চ্যাট: একটি স্তর বেছে নিন এবং তা রাখুন#
যদি আপনার প্রম্পট ক্যাশে করা হয়, অনুরোধের মধ্যে শীর্ষ-স্তরের এফোর্ট পরিবর্তন করলে সেই কথোপকথনের জন্য ক্যাশে ব্রেকপয়েন্টগুলি অকার্যকর হয়। একটি এজেন্ট লুপ বা দীর্ঘ চ্যাটের জন্য, আগে থেকেই একটি স্তর বেছে নিন। কিছু মডেল বিটায় প্রতি-বার্তা এফোর্ট অফার করে যা ক্যাশে রাখে, যা বেসিকগুলি জায়গায় থাকলে দেখার মতো। দীর্ঘ চ্যাটে একটি দ্বিতীয় খরচ চালক আছে, কেন একটি দীর্ঘ চ্যাট বেশি খরচ করে-এ আলোচনা করা হয়েছে।
আপনার নিজের অনুরোধে চেষ্টা করুন#
- আপনার আসল প্রম্পট একবার পাঠান এবং
usageপড়ুন: কত আউটপুট টোকেন, এবং তার মধ্যে কতগুলি চিন্তা। - এফোর্ট এক ধাপ কমান এবং আবার পাঠান। উত্তর এবং গণনাগুলি তুলনা করুন।
max_tokensআপনি যে উত্তর চান তার সাথে চিন্তার জন্য জায়গা যোগ করে সেট করুন, এবং স্টপ কারণ পরীক্ষা করুন।
তারপর আপনার নিজের টোকেন গণনাগুলি মূল্য পৃষ্ঠা-এর লাইভ মূল্য টেবিলে রাখুন এবং আপনার একটি মাসিক অনুমান আছে।



