Self-Refine Prompting (UR)

From Systems analysis Wiki
Jump to navigation Jump to search

Self-Refine (خود اصلاحی یا خود تصحیح) — یہ prompt engineering کے شعبے میں ایک ایسا طریقہ ہے جو بڑے زبانی ماڈلز (LLM) کو اپنی ہی فیڈبیک کی بنیاد پر تیار کردہ جواب کو بار بار بہتر کرنے کی صلاحیت دیتا ہے[1]۔ یہ خیال 2023 میں امان مدان کی قیادت میں محققین کے ایک گروہ نے پیش کیا اور یہ اس مشاہدے پر مبنی ہے کہ انسان کی طرح زبانی ماڈل بھی ہمیشہ پہلی کوشش میں بہترین نتیجہ نہیں دیتے۔

اس طریقے میں ایک ہی LLM یکے بعد دیگرے تین کردار ادا کرتا ہے:

  1. Generator (جنریٹر): درخواست پر ابتدائی مسودہ جواب تیار کرتا ہے۔
  2. Feedback (نقاد): اپنے ہی جواب کا جائزہ لیتا ہے اور تعمیری فیڈبیک فراہم کرتا ہے۔
  3. Refiner (ترمیم کار): اس فیڈبیک کو استعمال کرتے ہوئے جواب کا بہتر ورژن تیار کرتا ہے۔

یہ تکراری چکر «تخلیق ← فیڈبیک ← بہتری» کئی بار دہرایا جا سکتا ہے جب تک مطلوبہ معیار حاصل نہ ہو جائے یا رکنے کی شرط پوری نہ ہو جائے۔

اہم بات یہ ہے کہ Self-Refine کے لیے ماڈل کی اضافی تربیت، fine-tuning یا بیرونی ڈیٹا کی ضرورت نہیں — پورا عمل صرف inference کے مرحلے پر prompts کے ذریعے چلایا جاتا ہے[1]۔

طریقہ کار کا نفاذ

Self-Refine کا طریقہ خصوصی طور پر تیار کردہ prompts کی ترتیب کے ذریعے نافذ کیا جاتا ہے جو ماڈل کے رویے کو رہنمائی دیتے ہیں۔

  1. ابتدائی تخلیق۔ ماڈل کو اصل prompt ملتا ہے اور وہ مسودہ جواب تیار کرتا ہے۔
  2. فیڈبیک کی تیاری۔ ماڈل کو ہدایت ملتی ہے کہ وہ اپنے پچھلے جواب کا تجزیہ کرے اور اس میں خامیاں نکالے۔ مثلاً وہ یہ نشاندہی کر سکتا ہے کہ جواب ناکافی تفصیلی ہے یا اس میں منطقی غلطی ہے۔ نتیجہ مخصوص ملاحظات اور سفارشات پر مشتمل متنی فیڈبیک کی صورت میں ہوتا ہے۔
  3. تکراری بہتری۔ ماڈل کو نئے prompt کے طور پر اصل سوال، اپنا پہلا جواب اور تیار کردہ فیڈبیک ملتا ہے۔ اس بنیاد پر وہ جواب کا بہتر ورژن تیار کرتا ہے۔

یہ دو مرحلی چکر «تنقید ← ترمیم» کئی بار انجام دیا جا سکتا ہے۔ ہر نئی تکرار کے سیاق میں پچھلے جوابات اور تبصرے شامل کیے جاتے ہیں جو ماڈل کو غلطیاں دہرانے سے بچنے میں مدد دیتے ہیں[2]۔ ماڈل کے رویے کو کنٹرول کرنے کے لیے اکثر few-shot prompting کی تکنیک استعمال کی جاتی ہے جہاں prompt میں مطلوبہ فیڈبیک کی شکل اور اصلاحات کی مثالیں شامل کی جاتی ہیں۔

کارکردگی اور استعمال

Self-Refine نے ایسے کئی کاموں میں اپنی افادیت ثابت کی ہے جن میں بار بار تصحیح کی ضرورت ہوتی ہے، جیسے:

  • مکالماتی جوابات کی تخلیق۔
  • کہانی کا تخلیقی تسلسل۔
  • مرحلہ وار استدلال کے ذریعے ریاضیاتی مسائل کا حل۔
  • پروگرامی کوڈ کی اصلاح۔

اصل تحقیق میں Self-Refine کے ذریعے حاصل کردہ جوابات اوسطاً ~20% زیادہ قابل ترجیح رہے — یہ تشخیص انسانوں اور خودکار میٹرکس دونوں کے مطابق تھی، جبکہ موازنہ یک مرحلی تخلیق سے کیا گیا[1]۔ بہتری GPT-4 جیسے جدید ترین ماڈلز کے لیے بھی حاصل ہوئی، جو اس بات کی نشاندہی کرتا ہے کہ طاقتور LLMs کو بھی اپنی غلطیاں درست کرنے کے لیے اکثر محض ایک اضافی غور و فکر کے مرحلے کی ضرورت ہوتی ہے۔

ملتے جلتے طریقوں جیسے RCI (Recursive Criticism and Improvement) نے بھی انٹرایکٹو کاموں میں، مثلاً کمپیوٹر کنٹرول اور منطقی مسائل کے حل میں، بہترین کارکردگی ظاہر کی۔ RCI کو Chain-of-Thought کی تکنیک کے ساتھ ملانے سے ہم آہنگی کا اثر سامنے آیا اور ماڈل کی پیچیدہ مسائل حل کرنے کی صلاحیت میں خودکار خود جانچ کے مرحلے کی بدولت نمایاں بہتری آئی[3]۔

حدود اور جاری تحقیق

حوصلہ افزا نتائج کے باوجود تحقیق سے ظاہر ہوتا ہے کہ خود تکراری بہتری میں کچھ حدود موجود ہیں۔

  • خود جانبداری (self-bias): ماڈلز کو اپنے ہی جوابات کا غیر جانبدارانہ جائزہ لینے میں دشواری ہوتی ہے۔ LLM اپنے تیار کردہ متن کو سازگار نظر سے دیکھتے ہیں اور اس پر ناکافی تنقیدی نگاہ ڈالتے ہیں، جو کئی تکرارات کے بعد معیار کے رکنے یا حتیٰ کہ گرنے کا سبب بن سکتا ہے[4]۔
  • ضرورت سے زیادہ اعتماد: یہ دیکھا گیا کہ خود تصحیح کی تکرارات بڑھنے کے ساتھ ماڈل اپنے جوابات میں ضرورت سے زیادہ اعتماد حاصل کر سکتا ہے چاہے وہ زیادہ درست نہ ہوئے ہوں۔ اس سے Expected Calibration Error (ECE) — ماڈل کے اعتماد اور حقیقی درستگی کے درمیان عدم مطابقت — میں اضافہ ہوتا ہے[5]۔
  • حسابی اخراجات: اس طریقے میں ایک حتمی جواب کے لیے LLM سے کئی بار رجوع کرنا پڑتا ہے جو یک مرحلی تخلیق کے مقابلے میں تاخیر اور لاگت کو نمایاں طور پر بڑھاتا ہے۔

جاری تحقیق ان مسائل کے حل کی طرف متوجہ ہے۔ ایک سمت — ہر تکرار کے مرحلے پر اعتماد کی انشانکن (calibration) کے طریقہ کار کا نفاذ ہے۔ دوسری سمت — زیادہ معروضی خود جائزے کے لیے بیرونی معلوماتی ذرائع یا اوزار (مثلاً کوڈ چلانا، ڈیٹا تلاش کرنا) کا استعمال ہے[6]۔

دیگر تکنیکوں سے موازنہ

  • Chain-of-Thought (CoT): CoT جواب تک پہنچنے کے لیے استدلال کی خطی زنجیر بنانے پر توجہ دیتا ہے۔ Self-Refine اس کے برعکس پہلے سے تیار کردہ جواب (جس میں CoT شامل ہو سکتا ہے) کی تکراری بہتری پر توجہ دیتا ہے۔
  • Tree of Thoughts (ToT): ToT درخت کی شکل میں استدلال کے متعدد متوازی راستے تلاش کرتا ہے جبکہ Self-Refine ایک راستے کو تکراری طور پر بہتر کرتا ہے۔ ToT حل کی جگہ کو دریافت کرنے کی تکنیک ہے جبکہ Self-Refine کسی مخصوص حل کو بہتر بنانے کی تکنیک ہے۔

حوالہ جات

  • Self-Refine منصوبے کی سرکاری ویب سائٹ
  • اصل علمی مقالہ "Self-Refine: Iterative Refinement with Self-Feedback"

کتابیات

  • Madaan, A. et al. (2023). Self-Refine: Iterative Refinement with Self-Feedback. arXiv:2303.17651.
  • Kim, G. et al. (2023). Language Models Can Solve Computer Tasks. arXiv:2303.17491.
  • Gou, Z. et al. (2023). CRITIC: Large Language Models Can Self-Correct with Tool-Interactive Critiquing. arXiv:2305.11738.
  • Huang, J. et al. (2023). Large Language Models Cannot Self-Correct Reasoning Yet. arXiv:2310.01798.
  • Pan, L. et al. (2023). Automatically Correcting Large Language Models: Surveying the Landscape of Diverse Self-Correction Strategies. arXiv:2308.03188.
  • Jiang, C. et al. (2024). Importance Weighting Can Help Large Language Models Self-Improve. arXiv:2408.09849.
  • Liang, X. et al. (2024). Internal Consistency and Self-Feedback in Large Language Models: A Survey. arXiv:2407.14507.
  • Zhu, D. et al. (2025). Beyond Accuracy: The Role of Calibration in Self-Improving Large Language Models. arXiv:2504.02902.
  • Hao, Q. et al. (2025). RL of Thoughts: Navigating LLM Reasoning with Inference-time Reinforcement Learning. arXiv:2505.14140.
  • Cui, Y. et al. (2023). Check Your Facts and Try Again: Improving Large Language Models by Reducing Hallucination. arXiv:2302.12813.
  • Wei, Z. et al. (2024). ReSearch: Iterative Self-Reflection for Better LLM Calibration. arXiv:2405.13022.

حواشی

  1. 1.0 1.1 1.2 Madaan, Aman; et al. «Self-Refine: Iterative Refinement with Self-Feedback». arXiv. [1]
  2. «Self-Refine: Iterative Refinement with Self-Feedback». Официальный сайт проекта. [2]
  3. Kim, Geunwoo; et al. «Language Models can Solve Computer Tasks». arXiv. [3]
  4. Huang, Jie; et al. «Large Language Models Cannot Self-Correct Reasoning Yet». arXiv. [4]
  5. Zhu, D., et al. (2025). «Beyond Accuracy: The Role of Calibration in Self-Improving Large Language Models». arXiv. [5]
  6. «Beyond Accuracy: The Role of Calibration in Self-Improving Large Language Models». arXiv. [6]