AI পরিকল্পনা / CLEARBYTE

AI tokens ও শব্দ: খরচের আগে সম্পূর্ণ request মাপুন

Token নির্দিষ্ট tokenizer-এর তৈরি একক, নির্দিষ্ট সংখ্যক শব্দ বা character নয়। Exact text count-এ matching tokenizer ও settings নিন। পুরো API request-এ message structure ও supported tools ধরুন, তারপর provider-এর returned usage-এর সঙ্গে estimate মেলান।

এই নির্দেশিকায়

লেখার দৈর্ঘ্য ঠিক করতে word counter কাজে লাগে, কিন্তু AI request context-এ ধরবে বা খরচ কত তা নির্ভরযোগ্যভাবে জানায় না। একই লেখা আলাদা tokenizer-এ আলাদা ভাগ হয়; একটি message-এ paste করা text-এর চেয়েও request-এ বেশি কিছু থাকে।

এই workflow raw text, সম্পূর্ণ request ও billed usage আলাদা রাখে। Local counting example এবং মাপা ফল দিয়ে পূরণের worksheet আছে। না-চালানো model-এর exact count কল্পনা করা হয়নি; ফল বুঝতে tokenizer-এর পরিচয় ও settings-ও দরকার।

শব্দ, Unicode characters ও tokens আলাদা করুন

দেখা একটি শব্দ এক token, কয়েকটি subword বা punctuation ও space-সহ মিশ্র অংশ হতে পারে। Hugging Face word, character ও subword পদ্ধতি বোঝায়। Language, spelling, code, whitespace ও vocabulary বিভাজন বদলাতে পারে।

Unicode character count অন্য প্রশ্ন। একটি character একাধিক code unit বা byte নিতে পারে, একটি visible symbol-এ কয়েকটি code point থাকতে পারে। কোনোটিরই model tokens-এ সার্বজনীন conversion নেই। Characters-per-token অনুপাত নির্দিষ্ট sample-এর rough heuristic, সব ভাষার নিয়ম নয়।

কাজ অনুযায়ী measurement বেছে নিন
কাজের ধরনউপযুক্ত মাপসীমাবদ্ধতা
লেখার দৈর্ঘ্য দেখাশব্দ বা Unicode charactersmodel tokens নির্ধারণ করে না
এক tokenizer-এ raw file মাপাসেই tokenizer ও settings-এর token IDschat formatting ও overhead বাদ পড়তে পারে
Structured API request অনুমানprovider-supported count বা exact formattingশেষ usage-এর সঙ্গে পার্থক্য হতে পারে
Billed usage মিলানোactual usage fields ও বর্তমান billing definitionsঅন্য provider-এর request estimate নয়

পরিচিত tokenizer দিয়ে local sample গুনুন

Hugging Face tokenizers format-এর জন্য সঠিক local tokenizer.json নিয়ে UTF-8 file encode করুন। Model/tokenizer ID, file revision, package version ও special tokens অন্তর্ভুক্ত কি না লিখুন। উদাহরণ tokenizers 0.23.2 API-এর, padding/truncation বন্ধ করে এবং special tokens না যোগ করে raw text গোনে।

Tokenizer file intended model-এর official distribution থেকে নিন। উদাহরণ model নামায় না, server-এ text পাঠায় না এবং hosted chat API-এর পুরো request format বানায় না। মাপের নির্দিষ্ট প্রশ্নে settings মিললেই count উপকারী; স্থানীয় সফল run নিজে থেকে billing count নয়।

# Example environment: tokenizers==0.23.2
from pathlib import Path
from importlib.metadata import version
from tokenizers import Tokenizer

# Use the matching tokenizer.json already saved locally.
tokenizer = Tokenizer.from_file("tokenizer.json")
tokenizer.no_padding()
tokenizer.no_truncation()
text = Path("sample.txt").read_text(encoding="utf-8")
encoded = tokenizer.encode(text, add_special_tokens=False)
print("tokenizers version:", version("tokenizers"))
print("raw-text tokens:", len(encoded.ids))
# Record tokenizer identity/revision separately.
# This is not a complete chat-request or billing count.

Context budget-এ পুরো request ধরুন

Chat request-এ system instructions, conversation history, retrieved passages, tool definitions ও formatting থাকে। Chat template roles এবং message boundaries ঘিরে control tokens দিতে পারে। শুধু শেষ paragraph গুনলে input কম ধরা হবে।

Hosted provider-এর documented counting facility আপনার input types সমর্থন করলে ব্যবহার করুন। Claude-এর নথিতে structured input counting এবং actual usage reporting দরকার হয় এমন ক্ষেত্র আছে। Tools, images ও documents-এ provider-এর ঘোষিত estimation limits মানুন।

অজানা online counter-এ credentials বা sensitive customer text দেবেন না। Local tokenizer raw text নিজ যন্ত্রে গোনে, provider endpoint-এ supplied request পাঠানো হয়। কোন তথ্য কোথায় যাবে সেই উপযুক্ত workflow আগে ঠিক করুন, তারপর মাপুন।

পুনরাবৃত্তিযোগ্য comparison worksheet রাখুন

Support message, code snippet, table ও application-এর প্রতিটি ভাষার passage-এর মতো প্রতিনিধিত্বকারী samples নিন। Exact bytes রাখুন যাতে runs-এর মধ্যে line endings, punctuation বা whitespace বদলে না যায়। বদলানো input-এর পার্থক্যকে tokenizer-এর ফল বলা যায় না।

প্রতি sample-এ tokenizer identity/revision, special-token setting, raw count এবং সম্ভব হলে full-request estimate লিখুন। অমাপা মান guessed ratio দিয়ে না ভরে ফাঁকা রাখুন। ভিন্ন count এই samples-এর পর্যবেক্ষণ, language quality-এর ranking নয়।

নির্দিষ্ট tokenizer চালানোর পরে পূরণের খাতা
নমুনাTokenizer ও revisionRaw text-এর গণনাপুরো request-এর count বা estimate
সাপোর্টের বার্তাসঠিক identifier লিখুনস্থানীয়ভাবে মাপুনসমর্থিত request format-এ মাপুন
Code-এর অংশসঠিক identifier লিখুনস্থানীয়ভাবে মাপুনসমর্থিত request format-এ মাপুন
অন্য ভাষার passageসঠিক identifier লিখুনস্থানীয়ভাবে মাপুনসমর্থিত request format-এ মাপুন

Input বাড়ানোর আগে output-এর জায়গা রাখুন

কাল্পনিক পরিকল্পনায় model-এর request type-এ combined context 32,000 tokens ধরুন। Output 4,000 ও planning buffer 2,000 রাখলে measured input 26,000 । Instructions, history ও tools 8,000 নিলে retrieved content-এর জন্য 18,000 থাকে।

এগুলো স্পষ্ট hypothetical values, বর্তমান কোনো model specification নয়। Context, output, reasoning ও tool usage provider ভিন্নভাবে সংজ্ঞায়িত করতে পারে। Current contract দেখে নিজের পরিমাণ context-budget calculator-এ দিন। সীমায় ধরে যাওয়া মানে প্রতিটি input passage কার্যকর নয়।

Hypothetical planning budget:
32,000 combined context
− 4,000 output reserve
− 2,000 planning buffer
= 26,000 input budget

26,000 − 8,000 instructions/history/tools
= 18,000 available for retrieved content

Estimate, actual usage ও cost মিলিয়ে দেখুন

ছোট real test-এর returned usage fields রেখে একই request-এর estimate-এর সঙ্গে তুলনা করুন। Documented cached input, output, reasoning এবং অন্য billable categories আলাদা রাখুন। Tool definition বাদ পড়লে word-token ratio বদলিয়ে তা ঠিক হবে না।

Token-cost calculator-এ actual counts ও আপনার দেওয়া current prices নিন। Input/output আলাদা এবং প্রতি million tokens-এর খরচের মতো unit বজায় রাখুন। ব্যবহারযোগ্য cost worksheet মাপা usage ও stated rates দিয়ে পুনরায় হিসাব করা যায়; universal word conversion-এর ওপর দাঁড়ায় না।

সাধারণ প্রশ্ন

এক token কি সব সময় চার characters?

না। কিছু text ও tokenizer-এ এটি আনুমানিক নিয়ম হতে পারে। Language, code, punctuation, whitespace ও tokenizer design ফল বদলায়।

Local count ও API usage আলাদা কেন?

Request-এ formatting, instructions, history, tools ও raw sample-এ নেই এমন input types থাকতে পারে। Tokenizer ও special-token settings-ও আলাদা হতে পারে। একই পুরো request ও provider definitions মিলান।

এই site-এর word counter exact model tokens জানায়?

না। Words ও Unicode characters-এর মতো text measurements দেয়। Matching tokenizer বা supported provider counter নিন, পরে measured inputs cost ও context tools-এ দিন।

উৎস ও সংজ্ঞা

পদ্ধতি যাচাই করা হয়েছে: