AI سیریز کے انٹرویو سوالات 11: RAG کو کیسے بہتر بنایا جائے؟
RAG کی بہتری ایک مرحلہ وار ایڈجسٹمنٹ نہیں بلکہ ایک مکمل لنک آپٹیمائزیشن کا عمل ہے۔ ذیل میں میں ڈیٹا انڈیکسنگ سائیڈ، ریٹریول سائیڈ، جنریشن سائیڈ، اور تشخیص سائیڈ چار جہتوں سے نظامی بہتری کی حکمت عملی پیش کرتا ہوں، اور انٹرویو میں استعمال ہونے والے عملی تجربات بھی شامل ہوں گے۔
ایک: ڈیٹا انڈیکسنگ سائیڈ کی بہتری ("علمی ذخیرے" کے معیار کو بڑھانا)
یہ سب سے زیادہ نظر انداز کیا جانے والا لیکن سب سے تیزی سے اثر دکھانے والا مقام ہے۔
| ایڈجسٹمنٹ پوائنٹ | مسئلہ کی علامات | مخصوص طریقہ | اثر کے اشارے |
|---|---|---|---|
| دستاویز کی تجزیہ | PDF میں موجود جداول، فلو چارٹ کو نظر انداز کیا جاتا ہے، یا متن خراب اور ترتیب غلط ہوتی ہے۔ | بہتر تجزیہ لائبریری (جیسے unstructured، pypdf کی لے آؤٹ محفوظ کرنے والی وضع) استعمال کریں؛ جدولوں کے لیے pandas سے نکال کر مارک ڈاؤن میں تبدیل کریں۔ |
بازیابی کی شرح +5~15% |
| متن کے ٹکڑے کا سائز | چھوٹے chunk سے سیاق و سباق ختم ہو جاتا ہے (جیسے "اس سال آمدنی میں اضافہ" میں "اس" کا حوالہ ختم)؛ بڑے chunk سے تلاش میں شور بڑھتا ہے۔ | مختلف chunk سائز (256/512/768 ٹوکن) آزمائیں، اوورلیپ 10~20% رکھیں؛ لمبی دستاویزات کے لیے معنیاتی حد (پیراگراف/سرخی) کے مطابق کاٹیں، نہ کہ مقررہ طوالت سے۔ | ہٹ ریٹ / وفاداری |
| میٹا ڈیٹا کا اضافہ | متعلقہ پیراگراف مل جاتا ہے، لیکن ماخذ یا وقت کا پتہ نہیں چلتا، یا ڈومین کے مطابق فلٹرنگ کی ضرورت ہوتی ہے۔ | ہر chunk میں میٹا ڈیٹا شامل کریں: source (فائل کا نام/URL)، timestamp، page_num، doc_type۔ تلاش کے وقت فلٹر استعمال کریں (جیسے doc_type == 'legal')۔ |
فلٹر کی درستگی |
| ایمبیڈنگ ماڈل کا انتخاب | عمومی embedding عمودی ڈومینز (طب، کوڈ، قانون) میں خراب کارکردگی دکھاتا ہے۔ | ڈومین میں فائن ٹیون شدہ ماڈل استعمال کریں (BGE‑large‑zh، GTE‑Qwen2‑7B‑instruct)؛ یا اپنا embedding ماڈل فائن ٹیون کریں (triple loss کے ساتھ)۔ | ریٹریول MRR@10 +10~20% |
دو: ریٹریول سائیڈ کی بہتری ("کتاب پلٹنا" زیادہ درست بنانا)
ریٹریول LLM کو فراہم کردہ "حوالہ جاتی مواد" کے معیار کا تعین کرتا ہے۔
| ایڈجسٹمنٹ پوائنٹ | مسئلہ کی علامات | مخصوص طریقہ | اثر |
|---|---|---|---|
| مخلوط تلاش | ویکٹر تلاش عین اصطلاحات (جیسے پروڈکٹ ماڈل ABC-123) سے میل نہیں کھا سکتی، کلیدی لفظ تلاش مترادفات نہیں سمجھ سکتی۔ |
ویکٹر تلاش (معنیاتی) اور BM25 (کلیدی الفاظ) دونوں استعمال کریں، وزن (جیسے 0.7ویکٹر + 0.3BM25) یا rerank کے ذریعے ملا دیں۔ | بازیابی کی شرح +10~25% |
| دوبارہ ترتیب (Rerank) | ویکٹر تلاش کے پہلے نتائج ضروری نہیں کہ سب سے زیادہ متعلقہ ہوں، دسواں بہترین ہو سکتا ہے۔ | کراس‑اینکوڈر ماڈل (جیسے BGE‑reranker-v2، Cohere Rerank) کا استعمال کرتے ہوئے امیدواروں کے سیٹ (جیسے پہلے 20) کو دوبارہ اسکور کریں، پھر top‑K لیں۔ |
ہٹ ریٹ میں نمایاں اضافہ (خاص طور پر top‑1) |
| استفسار کو دوبارہ لکھنا | صارف کا سوال مبہم یا کثیر دوری میں غیر واضح ہوتا ہے ("اس کی قیمت کیا ہے؟")۔ | LLM کا استعمال کرتے ہوئے اصل سوال کو تلاش کے لیے موزوں شکل میں تبدیل کریں (جیسے "آئی فون 15 کی قیمت کتنی ہے؟")؛ یا گفتگو کی تاریخ سے مکمل کریں۔ | بازیابی کی شرح +5~15% |
| HyDE | صارف کا سوال بہت چھوٹا یا بہت تجریدی ہو (جیسے "فوٹو سنتھیسس کے بارے میں بتائیں")، براہ راست تلاش خراب کام کرتی ہے۔ | پہلے LLM سے ایک مفروضاتی جواب تیار کروائیں، پھر اس جواب کو دستاویزات تلاش کرنے کے لیے استعمال کریں۔ | کھلے ڈومین کے لیے موزوں، لیکن حقائق پر مبنی درست سوالات کے لیے نہیں |
| تلاش کی مقدار Top‑K کی ایڈجسٹمنٹ | بہت چھوٹا K اہم معلومات سے محروم کر سکتا ہے؛ بہت بڑا K ٹوکن کی کھپت اور شور بڑھاتا ہے۔ | K=3/5/10 آزمائیں، بازیابی کی شرح اور جواب کی وفاداری کے درمیان توازن دیکھیں۔ | کارکردگی اور اثر میں تجارت |
تین: جنریشن سائیڈ کی بہتری (LLM کو حوالہ جاتی مواد کا اچھا استعمال کرنے دینا)
تلاش جتنی بھی درست ہو، پرامپٹ خراب ہو یا ماڈل کمزور ہو تو کچھ نہیں ہوگا۔
| ایڈجسٹمنٹ پوائنٹ | مسئلہ کی علامات | مخصوص طریقہ | اثر |
|---|---|---|---|
| پرامپٹ انجینئرنگ | LLM تلاش کردہ مواد کو نظر انداز کر دیتا ہے، یا من گھڑت جواب دیتا ہے۔ | واضح ہدایت: "صرف نیچے دیے گئے حوالہ جاتی مواد کی بنیاد پر سوال کا جواب دیں۔ اگر مواد ناکافی یا غیر متعلقہ ہو تو 'کافی معلومات نہیں' کہیں۔" اس کے ساتھ چند مثالیں دیں کہ کیسے ماخذ کا حوالہ دینا ہے۔ | وفاداری +20~40% |
| سیاق و سباق کی سمپیڑن | تلاش کردہ مواد بہت طویل ہو (ماڈل کی ونڈو سے زیادہ)، یا زیادہ تر شور ہو۔ | LLMLingua یا انتخابی سیاق و سباق کا استعمال کرکے کمپریس کریں، صرف سب سے زیادہ متعلقہ جملے رکھیں پھر LLM کو بھیجیں۔ |
معلومات کے ضیاع کا خطرہ کم |
| LLM ماڈل اپ گریڈ | چھوٹا ماڈل (7B) پیچیدہ استدلال نہیں کر سکتا، یا لمبا سیاق و سباق یاد نہیں رکھ سکتا۔ | مضبوط ماڈل (GPT‑4o، Claude 3.5 Sonnet، Qwen2.5‑72B) استعمال کریں۔ | استدلال کی درستگی میں بہت اضافہ |
| سٹریمنگ اور حوالہ | صارف جواب کی سچائی کی تصدیق نہیں کر سکتا۔ | جنریشن کے وقت LLM کو [citation:1] آؤٹ پٹ کرنے دیں، جو تلاش کردہ دستاویز کے نمبر کے مطابق ہو۔ بیک اینڈ پر اصل لنک فراہم کریں۔ |
صارف کا اعتماد + ڈیبگ ایبلٹی |
| جواب دینے سے انکار کیلیبریشن | ماڈل جب نہیں بولنا چاہیے تو بولتا ہے، یا جب بولنا چاہیے تو کہتا ہے کہ نہیں جانتا۔ | ایک مماثلت کی حد مقرر کریں: اگر تلاش کردہ top‑1 chunk اور سوال کے درمیان کوزائن مماثلت 0.7 سے کم ہو تو LLM کو بتائیں "مواد غیر متعلقہ"۔ | فریب کی شرح کم |
چار: تشخیص اور تکرار کی طرف (جاننا کہ کہاں بہتر کرنا ہے)
پیمائش کے بغیر بہتری ممکن نہیں۔
| ایڈجسٹمنٹ پوائنٹ | طریقہ | اشارے |
|---|---|---|
| تشخیصی سیٹ بنانا | 100~300 حقیقی صارف سوالات + معیاری جوابات + درست تلاش کردہ دستاویز ID۔ | مختلف مشکل اور مختلف ارادوں کا احاطہ۔ |
| خودکار تشخیص | RAGAS (وفاداری، جواب کی مطابقت، سیاق و سباق کی بازیابی) یا TruLens استعمال کریں۔ | تین اہم اشارے: وفاداری، جواب کی مطابقت، سیاق و سباق کی بازیابی کی شرح۔ |
| انسانی تشخیص | ہفتہ وار 20 خراب کیسز کا نمونہ لیں، غلطی کی اقسام کا تجزیہ کریں (تلاش میں ناکامی/جنریشن کی غلطی/علمی ذخیرے کی کمی)۔ | بہتری کی ترجیحی ترتیب۔ |
| A/B ٹیسٹ | پروڈکشن ماحول میں مختلف تلاش کی حکمت عملیوں (جیسے BM25 بمقابلہ مخلوط تلاش) کی بالٹیوں میں جانچ کریں۔ | آن لائن اشارے: صارف کی اطمینان، جواب نہ ملنے کی شرح۔ |
پانچ: انٹرویو میں بتائے جا سکنے والے "عملی تجربات" (اضافی نمبر)
"میرے ذمے والے RAG پروجیکٹ میں، شروع میں بیس لائن ہٹ ریٹ 67% تھا۔ میں نے تین کام کیے:
1. chunk کو مقررہ 1024 سے بدل کر متحرک معنیاتی کٹائی کی (سرخی+پیراگراف کے مطابق)، ہٹ ریٹ 74% ہو گیا؛
2. مخلوط تلاش (ویکٹر + BM25) اور ایک چھوٹا ری رینک ماڈل شامل کیا، ہٹ ریٹ 83% ہو گیا؛
3. پرامپٹ کو بہتر کیا اور[معلومات نہیں ملی]کو لازمی قرار دیا، فریب کی شرح 22% سے کم ہو کر 5% سے نیچے آ گئی۔اس کے علاوہ، ہم نے ایک مسلسل تشخیصی پائپ لائن بنائی، ہر تبدیلی سے پہلے 200 سوالات پر RAGAS اسکور چلایا تاکہ یہ یقینی ہو کہ کوئی تنزلی نہیں ہوئی۔"
حتمی خلاصہ: ایک مکمل RAG بہتری کا روڈ میپ
ڈیٹا پرت ─→ دستاویز کی صفائی، chunk کی اصلاح، میٹا ڈیٹا میں اضافہ، ڈومین مخصوص embedding
تلاش کی پرت ─→ مخلوط تلاش، ری رینک، استفسار کی دوبارہ تحریر، HyDE، Top‑K کی ایڈجسٹمنٹ
جنریشن کی پرت ─→ پرامپٹ کو مضبوط کرنا، ہدایات کی ضرورت، کمپریشن، حوالہ، انکار کی حد
تشخیص کی پرت ─→ تشخیصی سیٹ، RAGAS، انسانی تجزیہ، A/B تجربات
评论
暂无已展示的评论。
发表评论(匿名)