پروڈکشن میں LLM کے آؤٹ پٹ کے معیار کی جانچ کرنا
مارچ 2023 میں، GPT-4 نے 97.6% درستگی کے ساتھ مفرد اعداد (prime numbers) کی شناخت کی۔ جون 2023 تک، اسی ماڈل کی درستگی گر کر 2.4% رہ گئی۔ نہ کسی نے کوڈ بدلا، نہ کسی نے پرامپٹ (prompt) بدلا۔ ماڈل میں خود بخود تبدیلی آگئی۔
پروڈکشن میں LLMs کے ساتھ یہی بنیادی مسئلہ ہے۔ آپ ماڈل کو کنٹرول نہیں کرتے۔ یہ ایک ایسی وابستگی (dependency) ہے جو وقت کے ساتھ بدلتی رہتی ہے (drifts)۔ اگر آپ اس کی پیمائش نہیں کریں گے، تو آپ کے صارفین آپ کو بتائیں گے کہ یہ خراب ہو گیا ہے۔
آپ محض احساسات یا "مجھے تو ٹھیک لگ رہا ہے" پر بھروسہ نہیں کر سکتے۔ آپ کو ایسے اشاروں (signals) کی ضرورت ہے جنہیں بار بار دہرایا جا سکے۔
روایتی سافٹ ویئر 'ڈیٹرمینسٹک' (deterministic) ہوتا ہے۔ یعنی ایک ہی ان پٹ کا مطلب ایک ہی آؤٹ پٹ۔ LLMs اس اصول کو توڑتے ہیں۔ وہ 'نان-ڈیٹرمینسٹک' (non-deterministic) ہوتے ہیں اور ان میں "درست" ہونے کا تصور اکثر مبہم ہوتا ہے۔
اسے سنبھالنے کے لیے، آپ کو جانچ کے تین تہوں کی ضرورت ہے:
- آف لائن ایویلیوایشنز (Offline evals): ریگریشنز (regressions) کو پکڑنے کے لیے ہر تبدیلی پر ایک مقررہ ٹیسٹ سیٹ چلائیں۔
- ریفرنس کے بغیر چیک (Reference-free checks): جب آپ کے پاس کوئی "درست" جواب نہ ہو تو ہالوسینیشن ڈیٹیکشن (hallucination detection) جیسے اشاروں کا استعمال کریں۔
- پروڈکشن مانیٹرنگ (Production monitoring): تبدیلی (drift) اور معیار میں کمی کو دیکھنے کے لیے اصل ٹریفک پر نظر رکھیں۔
اس کی بنیاد ایک 'گولڈن ڈیٹا سیٹ' (Golden Dataset) ہے۔ رینڈم نمونے استعمال نہ کریں۔ مشکل کیسز کا ایک منتخب کردہ سیٹ استعمال کریں۔ خالی ان پٹس، عجیب و غریب ایج کیسز (edge cases)، اور ایڈورسیریل پرامپٹس (adversarial prompts) کا استعمال کریں۔ 80 بہترین مثالیں 8,000 رینڈم مثالوں سے بہتر ہیں۔
جب LLM کو بطور جج استعمال کر رہے ہوں، تو ان تعصبات (biases) کا خیال رکھیں:
- پوزیشن بائس (Position bias): جج اکثر پہلے نظر آنے والے جواب کو ترجیح دیتے ہیں۔ اس کا حل یہ ہے کہ دونوں ترتیبوں میں موازنہ کیا جائے۔
- وربوسٹی بائس (Verbosity bias): جج طویل جوابات کو انعام دیتے ہیں، چاہے وہ کم واضح ہی کیوں نہ ہوں۔
- سیلف اینہنسمنٹ بائس (Self-enhancement bias): ماڈلز اپنے ہی خاندان کے ٹیکسٹ کو ترجیح دیتے ہیں۔ آؤٹ پٹس کو جانچنے کے لیے مختلف ماڈل فیملیز کا استعمال کریں۔
ریئل ٹائم مانیٹرنگ کے لیے، ان چیزوں کو چیک کرنے کے لیے RAG Triad کا استعمال کریں:
- وفاداری (Faithfulness): کیا جواب سیاق و سباق (context) کے مطابق ہے؟
- جواب کی مطابقت (Answer relevance): کیا یہ سوال کا جواب دیتا ہے؟
- سیاق و سباق کی مطابقت (Context relevance): کیا سسٹم نے صحیح دستاویزات حاصل کیں؟
ماڈل کے معیار کو ایک مستقل صفت سمجھنا چھوڑ دیں۔ اسے لیٹنسی (latency) یا ایرر ریٹس (error rates) کی طرح سمجھیں۔ یہ بدلتا رہتا ہے۔ آپ کا کام یہ نوٹ کرنا ہے کہ یہ کب اچھا ہونا چھوڑ دیتا ہے۔
چھوٹی شروعات کریں۔ 20 گولڈن مثالیں لکھیں۔ انہیں اپنی ڈیپلائمنٹس (deploys) کو کنٹرول کرنے کے لیے استعمال کریں۔ بعد میں سستی پروڈکشن ہیورسٹکس (production heuristics) شامل کریں۔
وہ ٹیمیں جو سکون کی نیند سوتی ہیں، وہ وہ نہیں ہیں جن کے پاس سب سے ذہین ماڈلز ہیں۔ بلکہ وہ ہیں جو ایک گھنٹے کے اندر جان لیتے ہیں کہ ان کا ماڈل کمزور ہو گیا ہے۔
Source: https://dev.to/nazar_boyko/evaluating-llm-output-quality-in-production-39an
Optional learning community: https://t.me/GyaanSetuAi
