نئے سیکھنے والوں کے لیے AIگائیڈ
Few-shot prompting: فارمیٹ حاصل کرنے کے لیے ماڈل کو 3–5 مثالیں دکھائیں
3–5 ٹیگ شدہ مثالیں کیسے ماڈل کو آپ کے لیبلز یا JSON میں جواب دینے پر مجبور کرتی ہیں، Python درخواست اور فی درخواست اضافی ان پٹ لاگت کے ساتھ۔

اس صفحہ پر
آپ کے ٹکٹ بوٹ کو ایک لفظ میں جواب دینا چاہیے: billing، bug یا other۔ زیادہ تر جوابات بالکل یہی ہوتے ہیں۔ پھر ایک جواب یوں آتا ہے: "لیبل: بلنگ — گاہک ریفنڈ پر پریشان لگتا ہے"، اور لیبل پڑھنے والا کوڈ ناکام ہو جاتا ہے۔
عام حل لمبی ہدایت نہیں ہے۔ یہ چند مثالیں ہیں: پرامپٹ میں 3–5 مکمل ٹکٹ ان کے لیبلز کے ساتھ رکھیں، اور ماڈل پیٹرن کی نقل کرتا ہے۔ یہی few-shot prompting ہے۔ Anthropic کی prompting guide (سیکشن "Use examples effectively"، 3 نومبر 2026 کو چیک کیا گیا) مثالوں کو فارمیٹ، لہجے اور ساخت کو کنٹرول کرنے کے سب سے قابلِ اعتماد طریقوں میں سے ایک قرار دیتی ہے، اور ان میں سے 3–5 تجویز کرتی ہے۔ مسئلہ یہ ہے: ہر مثال وہ ان پٹ ہے جس کی آپ ہر درخواست کے ساتھ دوبارہ قیمت ادا کرتے ہیں۔ نیچے لاگت کا سیکشن اسے ایک ایسے بوٹ کے لیے شمار کرتا ہے جو روزانہ 2,000 ٹکٹ سنبھالتا ہے۔
"few-shot" کا مطلب کیا ہے#
سپورٹ ڈیسک پر اپنے نئے ساتھی کا پہلا دن تصور کریں۔ آپ کہتے ہیں "ہر ٹکٹ کو بلنگ، بگ یا دیگر ٹیگ کریں" اور چلے جاتے ہیں۔ کچھ ٹیگز آپ کے خیال سے ملیں گے، کچھ نہیں۔ اب تین ٹکٹ چھوڑ دیں جو پہلے سے ٹیگ شدہ ہیں اور کہیں "ان جیسے"۔ وہی ساتھی، بہت کم حیرتیں۔
ماڈلز بھی ایسا ہی برتاؤ کرتے ہیں۔ صرف ہدایت کو zero-shot کہا جاتا ہے۔ ہدایت کے ساتھ کئی حل شدہ مثالیں few-shot ہیں (Anthropic کا صفحہ multishot بھی کہتا ہے)۔ ایک "shot" صرف ایک مثال ہے۔
موازنہ کریں
ایک ہی کام، دو پرامپٹس
صرف ہدایت
Label the support ticket as billing, bug or other.ہدایت کے ساتھ مثالیں
Label the support ticket with one word: billing, bug or other.
Ticket: I was charged twice for one top-up.
Label: billing
Ticket: The export button does nothing.
Label: bug
Ticket: Do you have a dark theme?
Label: otherدوسرا پرامپٹ کبھی نہیں بتاتا کہ billing کا مطلب کیا ہے۔ مثالیں دکھا کر یہ کرتی ہیں، اور وہ معنی کے ساتھ فارمیٹ بھی لے کر چلتی ہیں۔ ہدایت کی ایک واضح سطر پھر بھی نقصان نہیں دیتی، اس لیے نیچے والا ورژن اسے رکھتا ہے۔
کام کرنے والی مثالوں کے تین اصول#
Anthropic کا صفحہ اچھی مثالوں کو تین الفاظ میں سمیٹتا ہے:
- متعلقہ: ان ٹکٹوں کے قریب جو آپ واقعی حاصل کرتے ہیں، کسی اور کام کے نہیں۔
- متنوع: وہ کنارے کے کیسز کا احاطہ کرتی ہیں اور ایک دوسرے سے مختلف ہیں، تاکہ ماڈل کسی حادثاتی پیٹرن کو نہ پکڑ لے۔
- ساخت شدہ: ٹیگز میں لپٹی ہوئی (
<example>، اور<examples>کے اندر کئی) تاکہ ماڈل مثالیں ہدایات سے الگ پہچان سکے۔ وہی صفحہ کہتا ہے کہ ٹیگ کے نام مستقل رکھیں۔
یہاں اسی طرح بنایا گیا ایک مکمل پرامپٹ ہے۔ اسے prompt.txt کے طور پر محفوظ کریں:
<instructions>
Label the support ticket with exactly one word: billing, bug or other.
Reply with the label only.
</instructions>
<examples>
<example>
<ticket>I was charged twice for the same top-up.</ticket>
<label>billing</label>
</example>
<example>
<ticket>The export button does nothing when I click it.</ticket>
<label>bug</label>
</example>
<example>
<ticket>Do you have a dark theme?</ticket>
<label>other</label>
</example>
<example>
<ticket>Please refund me. Also, the page crashes on login.</ticket>
<label>billing</label>
</example>
<example>
<ticket>Is there an API for exporting reports?</ticket>
<label>other</label>
</example>
</examples>چوتھی مثال دیکھیں: ریفنڈ کی درخواست جو کریش کا بھی ذکر کرتی ہے۔ ہدایت مخلوط ٹکٹ کو طے نہیں کر سکتی، مثال کر سکتی ہے۔ یہاں پیسہ جیتتا ہے، اس لیے لیبل billing ہے۔ آپ جو بھی اصول چنیں، اسے ایک بار دکھائیں۔
جوڑے ملائیں
کون سا اصول ٹوٹا ہے؟
بائیں طرف کسی آئٹم پر ٹیپ کریں، پھر اس کا جوڑا
- آپ کی مثالیں ایک سطری چیٹ گریٹنگز ہیں، لیکن اصل ٹکٹ لمبی ای میلز ہیںمتعلقہ نہیں: مثالیں اصل کام کے قریب ہونی چاہئیں
- آپ کی تمام مثالوں کا لیبل ایک ہی ہےمتنوع نہیں: ماڈل حادثاتی پیٹرن اٹھا سکتا ہے
- مثالیں ہدایات کے درمیان ڈھیلے متن کے طور پر چسپاں ہیںساخت شدہ نہیں: انہیں ٹیگز میں لپیٹیں تاکہ وہ ہدایات سے غلط نہ سمجھی جائیں
اسے API کے ذریعے بھیجیں#
پرامپٹ ہر درخواست میں ایک ہی متن ہے، اور صرف نیا ٹکٹ بدلتا ہے۔ ہر ٹکٹ اسی مختصر سفر سے گزرتا ہے:

یہاں یہ Python میں openai پیکج کے ساتھ ہے۔ پتہ CheapTokens API ہے، کلید ایک ماحول متغیر میں ہے (کلید کو محفوظ طریقے سے کیسے رکھیں دیکھیں)، اور ماڈل آئی ڈی docs سے مکمل ہے:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"],
)
PROMPT = open("prompt.txt", encoding="utf-8").read()
def label(ticket: str) -> str:
response = client.chat.completions.create(
model="deepseek-ai/DeepSeek-V4-Flash-0731",
max_tokens=64,
messages=[
{"role": "system", "content": PROMPT},
{"role": "user", "content": f"<ticket>{ticket}</ticket>"},
],
)
print(response.usage.prompt_tokens, response.usage.completion_tokens)
return response.choices[0].message.content.strip()
print(label("The app shows a blank screen after the update."))جب یہ کام کرتا ہے تو آپ کو ایک سطر میں دو ٹوکن گنتیاں نظر آتی ہیں اور پھر لیبل خود، ایک لفظ جیسے bug۔ اگر آپ کو جملہ ملتا ہے، تو مثالیں ابھی اپنا کام نہیں کر رہیں: ٹیگز چیک کریں اور یہ کہ آپ کے اسکیم کا ہر لیبل کم از کم ایک بار آتا ہے۔
پہلا نمبر وہ ہے جس پر نظر رکھنی ہے۔ یہ پورا پرامپٹ ہے، ہدایات جمع مثالیں جمع ٹکٹ، اور یہ آپ کی شامل کردہ ہر مثال کے ساتھ بڑھتا ہے۔ اسکرپٹ کو ایک بار مکمل prompt.txt کے ساتھ اور ایک بار صرف <instructions> حصے کے ساتھ چلائیں: دو پہلے نمبروں کے درمیان فرق وہ ہے جو آپ کی مثالیں فی درخواست لاگت کرتی ہیں۔
DeepSeek-V4-Flash اس قسم کی بڑے پیمانے پر لیبلنگ کے لیے موزوں ہے: دن کے کسی بھی وقت ایک قیمت، 380K-ٹوکن کانٹیکسٹ (تاکہ لمبا مثالی بلاک آسانی سے فٹ ہو) اور فی جواب 32,768 ٹوکن تک۔ GLM-5.3-Flash، 390K کانٹیکسٹ کے ساتھ، مختصر لیبلنگ کاموں کے لیے بھی کام کرتا ہے۔ دونوں models page پر ہیں، ایک بیلنس کے پیچھے۔
پانچ مثالیں بل میں کیا اضافہ کرتی ہیں#
فرض کریں بوٹ روزانہ 2,000 ٹکٹ سنبھالتا ہے۔ فرض کریں ٹکٹ تقریباً 120 ٹوکن اور ہدایت تقریباً 80، تو بغیر مثالوں کے درخواست 80 + 120 = 200 ان پٹ ٹوکن ہے۔ پانچ مثالیں تقریباً 60 ٹوکن ہر ایک، 5 × 60 = 300 کا اضافہ کرتی ہیں، تو ان کے ساتھ درخواست 200 + 300 = 500 ہے۔ جواب ایک لفظ ہے، اسے دونوں صورتوں میں 3 آؤٹ پٹ ٹوکن کہیں۔ یہ مفروضے ہیں: اپنے اسکرپٹ کے پرنٹ کردہ prompt_tokens کو شامل کریں۔
ایک دن میں، 200 × 2,000 = 400,000 ان پٹ ٹوکن 500 × 2,000 = 1,000,000 بن جاتا ہے، جبکہ آؤٹ پٹ 3 × 2,000 = 6,000 ٹوکن پر رہتا ہے۔ DeepSeek-V4-Flash پر یہ بغیر مثالوں کے $0.0066 روزانہ اور ان کے ساتھ $0.0156 ہے۔ مثالیں آپ کو ان دو نمبروں کے درمیان فرق کی لاگت دیتی ہیں، اور Anthropic کے مطابق وہ آپ کو زیادہ مستقل آؤٹ پٹ دیتی ہیں۔

یہ تصویر ایک مفید تفصیل چھپاتی ہے۔ مثالی بلاک ہر درخواست میں یکساں ہے، جو بالکل اسی قسم کا دہرایا جانے والا آغاز ہے جس کے بارے میں prompt caching ہے؛ prompt caching کیا ہے بتاتا ہے کہ یہ کیسے کام کرتا ہے۔
یہاں وہی بوجھ، فی درخواست 500 ان پٹ اور 3 آؤٹ پٹ ٹوکن، 2,000 درخواستیں، ماڈلز کے درمیان ہے۔ جدول موجودہ قیمتوں سے دوبارہ حساب کرتا ہے:
| ماڈل | ان پٹ $/1M | آؤٹ پٹ $/1M | فی درخواست | 2,000 درخواستیں | OpenRouter، 2,000 درخواستیں |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.00001 | $0.0202 | $0.034 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.0000078 | $0.0156 | $0.0708 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.000025 | $0.0509 | $0.611 |
فی درخواست 500 ان پٹ اور 3 آؤٹ پٹ ٹوکنز۔ فی 1M ٹوکنز کی قیمتیں موجودہ ہیں اور ہمارے ٹیرف کے ساتھ تبدیل ہوتی ہیں؛ OpenRouter کالم اسی ورک لوڈ کے لیے حوالہ جاتی قیمتیں دکھاتا ہے۔
ان پٹ اور آؤٹ پٹ کو ملا کر شمار کرنے پر، DeepSeek-V4-Flash اور GLM-5.3-Flash اس بوجھ پر OpenRouter سے سستے نکلتے ہیں۔ مکمل قیمت کی فہرست pricing page پر ہے۔
JSON، لہجہ، اور اپنی مثالوں کی جانچ#
وہی ترکیب باقی دو صورتوں کا احاطہ کرتی ہے جن کا آپ کو سامنا ہوگا۔ ہر بار وہی JSON فیلڈز چاہیے؟ مثال کے جواب کو خود JSON بنائیں:
<example>
<ticket>I was charged twice for the same top-up.</ticket>
<output>{"label": "billing", "urgent": true}</output>
</example>response_format اور جب جواب پھر بھی درست نہ ہو تو کیا کریں، کے لیے get valid JSON from an LLM API دیکھیں۔ متن کو ایک لہجے میں دوبارہ لکھنا چاہتے ہیں؟ "دوستانہ لیکن مختصر" جیسے صفتیں مبہم ہیں؛ دو پہلے اور بعد کے جوڑے اسے بہتر دکھاتے ہیں۔
مثالوں کے کسی بھی مجموعے پر بھروسہ کرنے سے پہلے، 20 ٹکٹ لیں جنہیں آپ پہلے ہی ہاتھ سے لیبل کر چکے ہیں، انہیں چلائیں، اور موازنہ کریں۔ ایک پاس کسی بھی اصول سے زیادہ بتاتا ہے۔ Anthropic کا صفحہ ایک شارٹ کٹ شامل کرتا ہے: ماڈل سے کہیں کہ وہ آپ کی مثالوں کو متعلقہ اور متنوع ہونے کی درجہ بندی کرے، یا آپ کی موجودہ مثالوں سے مزید لکھے۔
چیک لسٹ
اپنی مثالوں پر بھروسہ کرنے سے پہلے
ایک بار مثالیں کام کر جائیں، اگلا سوال یہ ہے کہ ایک پرامپٹ میں کئی دستاویزات کو آپس میں گڈمڈ ہونے سے کیسے روکا جائے۔ Label every document in a prompt اس کا احاطہ کرتا ہے۔



