بلاگ پر واپس جائیں

نئے سیکھنے والوں کے لیے AIگائیڈ

Input بمقابلہ output ٹوکنز: ایک AI API آپ سے کس چیز کا بل لیتی ہے

ایک AI API input اور output ٹوکنز کو الگ الگ کیوں گنتا ہے، usage فیلڈ میں انہیں کہاں پڑھیں، اور ایک درخواست کی لاگت کیسے معلوم کریں۔

از CheapTokens Teamشائع شدہ اپ ڈیٹ کردہ 6 منٹ کا مطالعہ

گہرے گرڈ پس منظر پر عنوان “Input vs output tokens” اور سطر “What you pay for in an API request” کے ساتھ کور
اس صفحہ پر
  1. کیا input گنا جاتا ہے اور کیا output
  2. نمبر کہاں پڑھیں: usage بلاک
  3. دونوں اطراف کی قیمتیں مختلف کیوں ہیں
  4. فارمولا
  5. ایک حقیقی ماڈل کے ساتھ حل شدہ مثال
  6. کوڈ میں استعمال
  7. کم ٹوکنز کیسے خرچ کریں
  8. یاد رکھنے کی باتیں

اگر آپ نے ابھی کسی لینگویج ماڈل کو اپنی پہلی API کال کی ہے، تو آپ نے غالباً جواب میں usage بلاک دیکھا ہوگا اور سوچا ہوگا کہ یہ بالکل کیا گنتا ہے۔ مختصر جواب: ہر درخواست کے دو میٹر ہوتے ہیں۔ ایک آپ کے بھیجے گئے ٹوکنز (input) گنتا ہے، دوسرا ماڈل کے لکھے گئے ٹوکنز (output) گنتا ہے۔ ہر میٹر کی اپنی قیمت ہے، اور ایک درخواست کی لاگت دونوں کا مجموعہ ہے۔

یہ گائیڈ دکھاتی ہے کہ نمبر کہاں ملیں گے، انہیں ڈالر میں کیسے بدلیں گے، اور کم خرچ کرنے کے لیے کیا تبدیل کر سکتے ہیں۔ اگر "ٹوکن" کا لفظ ابھی بھی دھندلا ہے، تو What is a token in AI? سے شروع کریں۔

کیا input گنا جاتا ہے اور کیا output#

Input ٹوکنز وہ سب کچھ ہیں جو ماڈل کو آپ کا جواب دینے کے لیے پڑھنا پڑتا ہے:

  • آپ کا تازہ ترین پیغام؛
  • سسٹم پرامپٹ (ہدایات جیسے "مختصر جواب دیں، انگریزی میں")؛
  • گفتگو کے پہلے پیغامات، اگر آپ انہیں دوبارہ بھیجیں؛
  • دستاویزات، کوڈ یا تلاش کے نتائج جو آپ درخواست میں پیسٹ کرتے ہیں۔

Output ٹوکنز وہ سب کچھ ہیں جو ماڈل جواب میں بناتا ہے۔ OpenAI-compatible فارمیٹ میں یہ choices[0].message.content میں موجود متن ہے۔ کچھ ماڈلز thinking موڈ میں حتمی جواب سے پہلے reasoning ٹوکنز بھی بناتے ہیں؛ ماڈل کے pricing صفحے پر دیکھیں کہ آیا ان کی بھی output کے طور پر قیمت لی جاتی ہے۔

ابتدائی افراد کے لیے اہم بات: ماڈل درخواستوں کے درمیان آپ کی چیٹ یاد نہیں رکھتا۔ ایک چیٹ ایپ ہر بار پوری تاریخ دوبارہ بھیجتی ہے، اس لیے لمبی گفتگو کا input ہر موڑ کے ساتھ بڑھتا ہے، چاہے آپ کا نیا پیغام ایک سطر کا ہو۔

نمبر کہاں پڑھیں: usage بلاک#

OpenAI-compatible API سے آنے والا ہر non-streaming جواب ایک usage آبجیکٹ پر ختم ہوتا ہے۔ یہ اس کی ساخت کی ایک تعلیمی مثال ہے:

json
{
  "choices": [
    { "message": { "role": "assistant", "content": "..." }, "finish_reason": "stop" }
  ],
  "usage": {
    "prompt_tokens": 2000,
    "completion_tokens": 500,
    "total_tokens": 2500
  }
}
فیلڈ اس کا مطلب بل کے طور پر
prompt_tokens آپ کے بھیجے گئے سب کچھ میں ٹوکنز Input
completion_tokens ماڈل کے بنائے گئے ٹوکنز Output
total_tokens prompt_tokens + completion_tokens الگ قیمت نہیں: یہ صرف مجموعہ ہے

ابتدائی افراد کی عام غلطی یہ ہے کہ total_tokens کو ایک قیمت سے ضرب دیں۔ چونکہ input اور output کی قیمتیں مختلف ہیں، آپ کو دونوں نمبر الگ الگ چاہیے۔

کچھ فراہم کنندگان اضافی فیلڈز شامل کرتے ہیں۔ مثال کے طور پر، DeepSeek کی اپنی API prompt_tokens کو prompt_cache_hit_tokens اور prompt_cache_miss_tokens میں بھی تقسیم کرتی ہے اور thinking موڈ میں reasoning_tokens رپورٹ کرتی ہے (ماخذ: DeepSeek API docs، 21 اکتوبر 2026 کو چیک کیا گیا)۔ جدول میں دیے گئے تین فیلڈز وہ ہیں جن پر آپ کسی بھی OpenAI-compatible جواب میں بھروسہ کر سکتے ہیں۔

جب آپ جواب stream کرتے ہیں، تو usage شروع میں معلوم نہیں ہوتا۔ DeepSeek کی اپنی API میں یہ data: [DONE] سے پہلے آخری content chunk میں آتا ہے (DeepSeek API docs، 21 اکتوبر 2026 کو چیک کیا گیا)؛ دیگر APIs اسے مختلف طریقے سے یا صرف درخواست پر بھیج سکتی ہیں، اس لیے دیکھیں کہ آپ کا کلائنٹ کیا وصول کرتا ہے۔ Streaming خود Streaming responses in Python میں بیان کی گئی ہے۔

دونوں اطراف کی قیمتیں مختلف کیوں ہیں#

آپ کا پرامپٹ پڑھنا اور جواب لکھنا مختلف قسم کے کام ہیں۔ ماڈل پورا پرامپٹ ایک ہی پاس میں پروسیس کرتا ہے، لیکن جواب ایک وقت میں ایک ٹوکن بنا کر دینا پڑتا ہے، اور ہر نیا ٹوکن پچھلے ٹوکنز پر منحصر ہوتا ہے۔ اسی لیے فراہم کنندگان عام طور پر output کی قیمت input سے زیادہ رکھتے ہیں، اور اسی لیے کسی بھی قیمت کی فہرست میں آپ کو فی ماڈل دو نمبر نظر آتے ہیں۔

نیچے مثال کے طور پر استعمال ہونے والا ماڈل، MiniMax-M2.7 (id minimax-m2.7)، اسی نمونے کی پیروی کرتا ہے۔ فی 1M ٹوکنز موجودہ قیمتیں input کے لیے $0.05 اور output کے لیے $0.15 ہیں۔

فارمولا#

قیمتیں فی 1 ملین ٹوکنز بتائی جاتی ہیں، اس لیے ایک درخواست کی لاگت یہ ہے:

text
cost = input_tokens × input_price ÷ 1,000,000
     + output_tokens × output_price ÷ 1,000,000

یہاں یہ فرضی گول قیمتوں کے ساتھ ہے، صرف حساب دکھانے کے لیے (مثال، نیچے جدول سے موجودہ قیمتیں لگائیں):

python
# example, substitute current prices from the table
price_in = 0.20    # USD per 1M input tokens
price_out = 0.80   # USD per 1M output tokens

prompt_tokens = 2000
completion_tokens = 500

cost = (prompt_tokens * price_in + completion_tokens * price_out) / 1_000_000
# 2000 × 0.20 ÷ 1,000,000 = 0.0004 (input)
# 500 × 0.80 ÷ 1,000,000 = 0.0004 (output)
# 0.0004 + 0.0004 = 0.0008 USD

ایک حقیقی ماڈل کے ساتھ حل شدہ مثال#

اوپر دی گئی usage مثال کی درخواست لیں: 2,000 input ٹوکنز اور 500 output ٹوکنز۔ CheapTokens کے ذریعے MiniMax-M2.7 پر اس کی لاگت $0.00018 ہے۔ یہ نمبر ہر بار صفحہ دکھائے جانے پر موجودہ قیمت کی فہرست سے شمار کیا جاتا ہے۔

ایک درخواست بہت چھوٹی ہے، اس لیے بڑے پیمانے پر دیکھنا مددگار ہے۔ ایک چھوٹی ایپ جو اس سائز کی 10,000 درخواستیں بھیجتی ہے، 20,000,000 input ٹوکنز اور 5,000,000 output ٹوکنز استعمال کرتی ہے، جو $1.75 بنتا ہے۔

ہماری فہرست کے دیگر ماڈلز پر وہی درخواست:

ماڈل لاگت OpenRouter
GLM-5.3-Flash $0.00006 $0.00012
DeepSeek-V4-Flash $0.00008 $0.00017
MiniMax-M2.7 $0.00018 $0.0012

کل 2,000 ان پٹ اور 500 آؤٹ پٹ ٹوکنز۔ فی 1M ٹوکنز کی قیمتیں موجودہ ہیں اور ہمارے ٹیرف کے ساتھ تبدیل ہوتی ہیں؛ OpenRouter کالم اسی ورک لوڈ کے لیے حوالہ جاتی قیمتیں دکھاتا ہے۔

غور کریں کہ یہاں output ٹوکن کی گنتی کا معمولی حصہ ہے (2,500 میں سے 500) لیکن بل میں ٹوکنز کے حصے سے بڑا حصہ ہے، کیونکہ output ٹوکنز کی قیمت زیادہ ہے (جدول دیکھیں)۔ اس ماڈل کے لیے output کی طرف ہی OpenRouter کی حوالہ قیمت کے مقابلے بچت کی تصدیق ہوتی ہے، جو مفید ہے اگر آپ کی ایپ لمبے جوابات لکھتی ہے۔

کوڈ میں استعمال#

آپ سرکاری openai Python پیکیج سے usage پڑھ سکتے ہیں، اسے CheapTokens کے base URL پر پوائنٹ کر کے:

python
from openai import OpenAI

client = OpenAI(
    base_url="https://api.cheaptokens.dev/v1",
    api_key="YOUR_API_KEY",
)

response = client.chat.completions.create(
    model="MiniMaxAI/MiniMax-M2.7",
    messages=[{"role": "user", "content": "Explain input and output tokens in two sentences."}],
)

usage = response.usage
print("input:", usage.prompt_tokens)
print("output:", usage.completion_tokens)
print("total:", usage.total_tokens)

# example, substitute current prices from the table above
price_in, price_out = 0.20, 0.80
cost = (usage.prompt_tokens * price_in + usage.completion_tokens * price_out) / 1_000_000
print(f"approx. cost: ${cost:.6f}")

اگر آپ نے ابھی کوئی درخواست نہیں بھیجی، تو پہلے Your first API request with CheapTokens پر عمل کریں۔

کم ٹوکنز کیسے خرچ کریں#

  • پرامپٹ مختصر کریں۔ سسٹم پرامپٹ کو چھوٹا کریں اور وہ ہدایات ہٹائیں جن کی ماڈل کو ضرورت نہیں۔ آپ کا بھیجا ہوا ہر ٹوکن ہر درخواست پر بل کیا جاتا ہے۔
  • تاریخ کم کریں۔ لمبی چیٹ میں پوری گفتگو کے بجائے آخری چند موڑ یا ایک مختصر خلاصہ رکھیں۔
  • دستاویز کا صرف متعلقہ حصہ بھیجیں۔ متن کا ایک صفحہ پوری فائل سے سستا ہے۔
  • وہی فارمیٹ مانگیں جو آپ کو چاہیے۔ "تین بلٹ پوائنٹس میں جواب دیں" کھلے عام مضمون سے کم output ٹوکنز پیدا کرتا ہے۔
  • max_tokens جان بوجھ کر سیٹ کریں۔ یہ صرف output کو محدود کرتا ہے۔ بہت کم ہو تو جواب کٹ جاتا ہے؛ تفصیلات Why does an AI answer stop mid-sentence? میں ہیں۔ CheapTokens پر MiniMax-M2.7 فی جواب زیادہ سے زیادہ 8,192 output ٹوکنز کی اجازت دیتا ہے اور اس کی 180K context window ہے۔

بڑے ورک فلو کی لاگت کا اندازہ لگانے کے لیے، How to estimate the cost of an AI agent دیکھیں۔

یاد رکھنے کی باتیں#

  1. ہر درخواست میں input ٹوکنز (prompt_tokens) اور output ٹوکنز (completion_tokens) ہوتے ہیں۔
  2. ان کی قیمتیں الگ ہیں، عام طور پر output زیادہ۔
  3. لاگت = input ٹوکنز × input قیمت + output ٹوکنز × output قیمت، قیمتیں فی 1M ٹوکنز۔
  4. اندازہ لگانے کے بجائے جواب میں usage سے نمبر پڑھیں۔

CheapTokens پر ایک prepaid بیلنس تمام ماڈلز کو کور کرتا ہے، فی ماڈل قیمتیں مقررہ ہیں اور peak-hour pricing نہیں ہے، اور API OpenAI Chat Completions اور Anthropic Messages کے ساتھ compatible ہے۔ اوپر کی مثال آزمانے کے لیے، API key حاصل کریں اور اپنی پہلی درخواست بھیجیں۔

ہر ماڈل کی موجودہ قیمتیں: CheapTokens pricing۔