مرحلہ 1: دستاویزات کا انجیشن (Document Ingestion)
زیادہ تر RAG سسٹمز شروع ہونے سے پہلے ہی ناکام ہو جاتے ہیں۔
آپ سمجھتے ہیں کہ RAG سسٹم بنانا سادہ ہے۔ ایک صارف PDF اپ لوڈ کرتا ہے، آپ ایمبیڈنگز (embeddings) بناتے ہیں، اور آپ کو جوابات مل جاتے ہیں۔
یہ ایک غلطی ہے۔
اپ لوڈ بٹن اور ویکٹر ڈیٹا بیس کے درمیان 15 اہم مراحل ہوتے ہیں۔ اگر آپ ایک بھی مرحلہ چھوڑ دیں، تو آپ کا سسٹم غلط جوابات دے گا یا آپ کے پیسے ضائع کرے گا۔
دستاویزات کے انجیشن کے لیے پروڈکشن گریڈ روڈ میپ یہ ہے:
• فائل ہیشنگ (File Hashing): کبھی بھی فائل کے نام کو ہیش نہ کریں۔ اصل فائل کے مواد کو ہیش کریں۔ یہ آپ کے سسٹم کو ایک ہی فائل کو دو بار پروسیس کرنے سے روکتا ہے اگر کوئی اس کا نام تبدیل کر دے۔
• اسمارٹ پارسنگ (Smart Parsing): کام کے لیے صحیح ٹول کا استعمال کریں۔
- سادہ متن: pdf-parse (مفت)
- مخلوط مواد: Unstructured (متوازن)
- پیچیدہ ٹیبلز/لے آؤٹس: LlamaParse (اعلیٰ معیار)
- انٹرپرائز فارمز: Azure Document Intelligence (اسکینز کے لیے بہترین)
• ٹیکسٹ کلیننگ (Text Cleaning): فضول چیزوں کو ہٹا دیں۔ ہیڈرز، فوٹرز، واٹر مارکس، اور پیج نمبر شور (noise) پیدا کرتے ہیں۔ اگر آپ ہر صفحے پر "Confidential" کو ایمبیڈ کریں گے، تو آپ کا AI سمجھے گا کہ ہر جواب ایک راز ہے۔
• میٹا ڈیٹا ایکسٹریکشن (Metadata Extraction): ڈیپارٹمنٹ، سیکشن، یا ورژن جیسا سیاق و سباق (context) شامل کریں۔ یہ آپ کے سسٹم کو ہر چیز تلاش کیے بغیر صحیح دستاویز تلاش کرنے میں مدد دیتا ہے۔
• اسمارٹ چنکنگ (Smart Chunking): یہ سب سے اہم حصہ ہے۔
- سائز: 1000 سے 1500 ٹوکنز کا ہدف رکھیں۔
- اوورلیپ (Overlap): سیاق و سباق برقرار رکھنے کے لیے 200 ٹوکنز کا اوورلیپ استعمال کریں۔
- حدود (Boundaries): جملے کو کبھی بھی درمیان سے نہ توڑیں۔
• چنک ہیشنگ اور ڈی ڈپلیکیشن (Chunk Hashing and Deduplication): ہر چنک کو ہیش کریں۔ جب کوئی فائل تبدیل ہو، تو نئے ہیشز کا پرانے ہیشز سے موازنہ کریں۔
• انکریمنٹل انجیشن (Incremental Ingestion): سب کچھ دوبارہ ایمبیڈ نہ کریں۔ اگر 1000 صفحات کی دستاویز میں صرف ایک صفحہ تبدیل ہوتا ہے، تو صرف اس ایک نئے چنک کو ایمبیڈ کریں۔ یہ آپ کو API اخراجات پر بہت زیادہ رقم بچاتا ہے۔
ایک شوقیہ پروجیکٹ اور پروڈکشن سسٹم کے درمیان فرق وہ کام ہے جو آپ ایمبیڈنگ مرحلے سے پہلے کرتے ہیں۔
ایک سادہ (naive) سسٹم ہر بار سب کچھ دوبارہ ایمبیڈ کرتا ہے۔ ایک اسمارٹ سسٹم صرف اس چیز کو پروسیس کرتا ہے جو تبدیل ہوئی ہو۔
بکھرا ہوا نظام بنانا بند کریں۔ ایک مضبوط بنیاد بنائیں۔
Source: https://dev.to/surajrkhonde/phase-1-document-ingestion-the-hidden-complexity-before-embeddings-4d32
Optional learning community: https://t.me/GyaanSetuAi
