[RAG (retrieval-Augmented Generation)](https://en.wikipedia.org/wiki/Retrieval-augmented_generation) ایک بیرونی کارپس سے متعلقہ اقتباسات کو بازیافت کرکے، اکثر ایمبیڈنگز اور مماثلت کی تلاش کے ذریعے، پھر انہیں سیاق و سباق یا ڈومین سے اپ ڈیٹ کرنے کے لیے فیڈ کرتا ہے تاکہ ڈیٹا-ایس پی-ڈیٹا-ڈیٹا-ڈیٹا-ڈیٹا-ڈیٹا-ڈیٹا-ڈیٹا-ڈیٹا سے جواب دے سکے۔

یہ دستاویز کی تلاش کے لیے اچھا کام کرتا ہے۔ ایجنٹ میموری کے لیے، یہ الگ ہو جاتا ہے۔

کنگز کالج لندن اور ایلن ٹورنگ انسٹی ٹیوٹ سے ایک نیا مقالہ، "بیونڈ RAG فار ایجنٹ میموری: بازیافت بذریعہ ڈیکپلنگ اینڈ ایگریگیشن" (Hu et al.، فروری 2026؛ [دیکھیں کاغذ](https://arxiv.org/abs/2602.02007)، ایک بہتر نقطہ نظر اور نقطہ نظر کی وضاحت کرتا ہے۔

## کیوں RAG ایجنٹ کی یادداشت کے لیے مختصر ہے۔

معیاری RAG ایک بڑے، ملے جلے کارپس کو فرض کرتا ہے: ایمبیڈ ٹیکسٹ، مماثلت کے لحاظ سے [top-k](https://en.wikipedia.org/wiki/Nearest_neighbor_search) کو دوبارہ حاصل کریں، سیاق و سباق کے طور پر جوڑیں۔

ایجنٹ میموری اس کے برعکس ہے: ایک پابند، مربوط سلسلہ جہاں ایک ہی حقیقت بہت سے فقروں میں ظاہر ہوتی ہے۔ یہاں RAG لگانے سے تین مسائل پیدا ہوتے ہیں:

1. **ریڈنڈنٹ ٹاپ-k.** آپ پوچھتے ہیں "میں نے آخری بار ڈینٹسٹ کو کب دیکھا تھا؟" ایک دستاویز کارپس میں، top-k مختلف ذرائع سے کچھ متعلقہ پیراگراف واپس کر سکتا ہے۔ ایجنٹ کی یادداشت میں، بہت سے حصے تقریباً ایک ہی بات کہتے ہیں ("شیڈیولڈ ڈینٹسٹ 15 مارچ،" "ڈینٹسٹ اپوائنٹمنٹ 15 مارچ،" "15 مارچ کے لیے بُک ڈینٹسٹ")۔ Top-k تکرار سے بھرتا ہے۔ کاغذ اسے "ایک ہی گھنے علاقے میں گرنے" کا نام دیتا ہے۔ مماثلت *ضرورت* کو محض *مماثل* سے الگ کرنے میں ناکام رہتی ہے۔
2. **کاٹنے سے ثبوت کی زنجیریں ٹوٹ جاتی ہیں۔** آپ پوچھتے ہیں "کیا ہم نے رسید کا تنازعہ حل کیا؟" جواب ایک سلسلہ پر منحصر ہے: "انوائس #123 متنازعہ تھا،" پھر "ہم نے جزوی رقم کی واپسی پر اتفاق کیا،" پھر "متفقہ رقم کی ادائیگی کی۔" ہاک کے بعد کی کٹائی شاید "ادائیگی کی رسید #123" کو برقرار رکھتی ہے اور پہلے کی باریوں کو چھوڑ سکتی ہے۔ ماڈل پھر جواب دیتا ہے "ہاں، حل ہو گیا" یہ جانے بغیر کہ کوئی تنازعہ تھا۔ ٹکڑوں کو کاٹنا وقتی طور پر شواہد کو جوڑتا ہے اور غلط جوابات پیدا کرتا ہے۔
3. **مماثلت ساخت کو نظر انداز کرتی ہے۔** آپ پوچھتے ہیں "بارسلونا کے سفر کی کیا حیثیت ہے؟" آپ کو پروجیکٹ، کام (مثلاً کتاب کی پروازیں) اور نتیجہ کی ضرورت ہے۔ مماثلت ایسے ٹکڑوں کو لوٹاتی ہے جن میں "بارسلونا" یا "ٹرپ" کا ذکر ہوتا ہے: شاید ایک بے ترتیب ذکر، ماضی کا سفر، کسی مختلف پروجیکٹ کا کوئی کام۔ آپ کو ایک ساختی راستے کی ضرورت ہے (یہ پروجیکٹ، یہ کام، یہ نتائج)۔ مماثلت اس کو انکوڈ نہیں کرتی ہے۔ ساخت کرتا ہے۔

## مماثلت پر ڈھانچہ

ایک بہتر نقطہ نظر یہ ہے کہ ڈھانچے کو استعمال کرنے کے لیے جو لوڈ ہو جائے، مماثلت نہیں۔ ہستیوں (ٹاسک، رابطے، لین دین، واقعات) ٹائپ کریں اور اسکیما، ہستی IDs، تعلقات اور ٹائم لائنز کے ذریعے بازیافت کریں۔ مشاہدات اور اخذ کردہ نتائج کو پوری اکائیوں کے طور پر رکھیں۔ ثبوت کے بلاکس کے اندر نہ کاٹیں۔ ایک ہی ان پٹ اور ایک ہی اسکیما ایک ہی آؤٹ پٹ دیتی ہے۔ اہم راستے میں کوئی LLM نہیں ہے۔

## کاغذ کیا دکھاتا ہے۔

کاغذ کا نظام (xMemory) ایمبیڈنگز اور LLM خلاصوں کے ساتھ چار سطحی درجہ بندی (ایپی سوڈز ٹو سیمنٹکس ٹو تھیمز) بناتا ہے۔ یہ LoCoMo اور PerLTQA پر پانچ دیگر سسٹمز (Naive RAG[^1]، A-Mem[^2]، MemoryOS[^3]، LightMem[^4]، Nemori[^5]) کو مات دیتا ہے، طویل گفتگو کی یادداشت اور ذاتی طویل مدتی سوالوں کے جوابات کے بینچ مارک ڈیٹاسیٹس۔ کاغذ کو سرایت کرنے یا ایل ایل ایم کی ضرورت نہیں ہے۔ یہ ساخت کی ضرورت ہے. آپ وہاں ایک سیکھے ہوئے درجہ بندی (xMemory) کے ساتھ یا deterministic، schema-first ڈیزائن کے ساتھ حاصل کر سکتے ہیں۔ یہ کاغذ LLM سے تیار کردہ ڈھانچے (A-Mem، MemoryOS): فارمیٹنگ انحراف، ناکام اپ ڈیٹس میں نزاکت کو بھی دستاویز کرتا ہے۔ ڈیٹرمنسٹک، سکیما فرسٹ ڈھانچہ ایک زیادہ قابل اعتماد بنیاد ہے۔

## ایکس میموری بمقابلہ نیوٹوما

نیوٹوما ایک [سٹرکچرڈ میموری لیئر](/posts/truth-layer-agent-memory) ہے جو میں بنا رہا ہوں: schema-first، deterministic، provenance اور replay کے لیے بنایا گیا ہے۔ دونوں نظام RAG سے آگے بڑھتے ہیں۔ وہ اس میں مختلف ہیں کہ وہ ساخت کیسے بناتے ہیں۔

**xMemory** ایمبیڈنگز اور LLM خلاصوں کے ساتھ ایک چار سطحی درجہ بندی (ایپی سوڈز سے سیمنٹکس ٹو تھیمز) بناتی ہے۔ اقساط متضاد بلاکس ہیں؛ سیمنٹکس دوبارہ قابل استعمال حقائق ہیں۔ اعلی درجے کی رسائی کے لیے تھیمز گروپ سیمنٹکس۔ ایک sparsity-semantics کا مقصد تھیم کے سائز کو متوازن کرتا ہے۔ بہت زیادہ فالتو بازیافت کا سبب بنتا ہے۔ بہت چھوٹے ٹکڑے ثبوت. بازیافت اوپر سے نیچے ہے: تھیمز اور سیمنٹکس کا ایک کمپیکٹ سیٹ منتخب کریں، پھر برقرار ایپی سوڈز (اور اختیاری طور پر پیغامات) تک پھیلائیں جب یہ ریڈر ماڈل کی غیر یقینی صورتحال کو کم کرے۔ یونٹوں کے اندر کوئی کٹائی نہیں۔ ان معیارات پر یہ معیار اور ٹوکن کے استعمال پر پانچ بنیادی خطوط کو مات دیتا ہے۔ کاغذ نوٹ کرتا ہے کہ LLM سے تیار کردہ ڈھانچہ (مثال کے طور پر A-Mem، MemoryOS میں) ٹوٹنے والا ہے: فارمیٹنگ انحراف، ناکام اپ ڈیٹس۔ چونکہ xMemory اپنا درجہ بندی LLM خلاصوں کے ساتھ بناتا ہے، اس لیے یہ وہی ٹوٹ پھوٹ کو اپناتا ہے۔

**نیوٹوما** اہم راستے میں ایل ایل ایم کے بغیر ڈھانچہ بناتا ہے۔ اداروں کو ٹائپ کیا جاتا ہے؛ تعلقات اور ٹائم لائنز واضح ہیں؛ بازیافت اسکیما، ہستی IDs، تعلقات اور وقت کی حدود کا استعمال کرتی ہے۔ ایک ہی ان پٹ اور اسکیما ایک ہی آؤٹ پٹ دیتے ہیں۔ اسکیمے اب بھی تیار ہیں۔ نامعلوم کھیت ایک پرزرویشن پرت میں اترتے ہیں۔ ایک متعین پائپ لائن سکیما میں اعلی اعتماد والے شعبوں کو فروغ دے سکتی ہے۔ ایل ایل ایم زیر التواء سفارشات کے طور پر نئے فیلڈز یا اقسام تجویز کر سکتا ہے، جس کا اطلاق صرف ٹولنگ یا انسانی منظوری کے ذریعے ہوتا ہے۔ انفرنس ایڈوائزری رہتا ہے: اسکیما میں تبدیلیاں ٹولنگ یا انسانی منظوری سے ہوتی ہیں۔ نکالنے اور کم کرنے کا عمل اصولی رہتا ہے۔ اسکیما سچائی کا ذریعہ بنی ہوئی ہے۔ کاغذ کی تنقید اس وقت لاگو ہوتی ہے جب ماڈل *ڈرائیو* ڈھانچہ کرتا ہے، نہ کہ جب یہ تجویز کرتا ہے اور انسانوں یا ٹولنگ کا اطلاق ہوتا ہے۔ حاصل کرنے کے لیے دوبارہ حاصل کرنا تعییناتی رہتا ہے۔

### موازنہ

| | xMemory | نیوٹوما |
|---|---------|---------|
| ساخت کا ذریعہ | ایمبیڈنگز + ایل ایل ایم کے خلاصے (اقساط، سیمنٹکس، تھیمز) | سکیما فرسٹ، ڈیٹرمنسٹک نکالنے اور کم کرنے والے |
| درجہ بندی | چار درجے (پیغامات، اقساط، سیمنٹکس، تھیمز)، جس کی رہنمائی sparsity-semantics کے مقصد ٹائپ شدہ ادارے، رشتے، ٹائم لائنز (کوئی مقررہ "سطح" نہیں) |
| بازیافت | اوپر سے نیچے: گراف پر نمائندے کا انتخاب، پھر غیر یقینی صورت حال سے منسلک اقساط/پیغامات تک توسیع | سکیما، ہستی IDs، تعلقات، ٹائم لائنز کے ذریعے |
| فالتو پن کنٹرول | نمائندہ انتخاب + توسیع صرف اس صورت میں جب غیر یقینی صورتحال میں کمی آئے | ساختی سوالات وہی واپس کرتے ہیں جو آپ مانگتے ہیں۔ کوئی مماثلت کے خاتمے |
| برقرار یونٹس | ہاں (اقساط/پیغامات کے اندر کوئی کٹائی نہیں) | ہاں (مشاہدات اور ہستیوں کو مکمل رکھا گیا) |
| ڈٹرمنزم | نہیں (LLM سے تیار کردہ ڈھانچہ مختلف ہوتا ہے) | ہاں (وہی ان پٹ، وہی اسکیما، وہی آؤٹ پٹ) |
| ٹوٹنا | کاغذ LLM فارمیٹنگ انحراف، اسی طرح کے سسٹمز میں ناکام اپ ڈیٹس کا حوالہ دیتا ہے | سکیما اور کوڈ واضح ہیں؛ اہم راستے میں کوئی LLM نہیں |

### رشتہ دار فوائد

**xMemory** اس وقت بہتر ہوتی ہے جب ان پٹ گفتگو کا سلسلہ ہوتا ہے اور آپ اسکیموں کی وضاحت کیے بغیر ڈھانچہ چاہتے ہیں۔ مثال: اسسٹنٹ کے ساتھ دیر تک جاری رہنے والی بات چیت جہاں آپ پوچھتے ہیں "ہم نے سفر کے بارے میں کیا فیصلہ کیا؟" یا "میں نے آخری بار بجٹ کا ذکر کب کیا تھا؟" xMemory ایپی سوڈز، سیمنٹکس اور تھیمز بناتی ہے۔ بازیافت ٹوکن موثر ہے۔ یہ تیز رفتار پروٹو ٹائپس (سپورٹ ٹکٹس، میٹنگ نوٹس) میں بھی فٹ بیٹھتا ہے جہاں آپ ابھی تک اسکیموں کو نہیں لکھنا چاہتے۔ آپ درجہ بندی کے بہاؤ کو قبول کرتے ہیں اور آپ کو ہستی کے ذریعہ آڈٹ ایبلٹی یا فرسٹ کلاس استفسار کی ضرورت نہیں ہے۔

جب آپ کو ٹریس ایبلٹی کی ضرورت ہو یا آپ کا ڈیٹا پہلے سے ترتیب دیا گیا ہو تو **نیوٹوما** اس سے بہتر ہوتا ہے۔ مثال: قابل سماعت فیصلے (ادائیگی، معاہدے، کام کے نتائج) جہاں ایک جیسے ان پٹ اور اسکیما کو ایک ہی سنیپ شاٹ حاصل کرنا چاہیے۔ اسکیما کی تبدیلیاں ورژن کی جاتی ہیں اور تعین کے لحاظ سے لاگو ہوتی ہیں۔ راستے میں کوئی LLM نہیں ہے۔ یہ رشتوں اور ٹائم لائنز کے ساتھ ٹائپ شدہ اداروں (ٹاسک، رابطے، لین دین، واقعات) کے لیے بھی موزوں ہے۔ ہستی کی قسم، ID، تعلق، یا وقت کی حد کے لحاظ سے استفسار کریں۔ نیوٹوما ان لوگوں کو مقامی سمجھتا ہے۔ xMemory کو متن کو سیریلائز کرنے کی ضرورت ہوگی اور وہ فرسٹ کلاس رسائی کھو دے گی۔

## گفتگو میں تکراری ڈھانچہ

ڈھانچہ اکثر مکالمے میں ابھرتا ہے: "اس کے لیے ایک کام شامل کریں،" "ریکارڈ کریں کہ ہم نے 500 ادا کرنے پر اتفاق کیا ہے،" اور ایجنٹ کام کرتا ہے۔ دونوں نظام اس کو مختلف طریقے سے ہینڈل کرتے ہیں۔

**xMemory:** گفتگو بنیادی چیز ہے۔ ایجنٹ کیا کرتا ہے (مثال کے طور پر "میں نے دانتوں کے ڈاکٹر کے لیے ایک ٹاسک بنایا ہے") پیغام کے سلسلے میں رہتا ہے اور ایپی سوڈز، سیمنٹکس اور تھیمز میں جاتا ہے۔ آپ کو ایک بہتر سیکھا ہوا درجہ بندی حاصل ہے لیکن کوئی الگ، قابل استفسار ہستی کا گراف نہیں ہے۔ ڈھانچہ درجہ بندی کے اندر رہتا ہے۔

**نیوٹوما:** گفتگو مشاہدات کا ایک ذریعہ ہے۔ جب ایجنٹ کوئی کام، رابطہ، یا لین دین تخلیق یا اپ ڈیٹ کرتا ہے، تو وہ آپریشن مشاہدات اور ہستی کے اسنیپ شاٹس تیار کرتے ہیں۔ مکالمے کے نئے شعبے تحفظ کی تہہ میں اتر سکتے ہیں اور اعتماد زیادہ ہونے پر اسکیما میں ترقی کر سکتے ہیں۔ ڈائیلاگ اور ترتیب شدہ گراف مطابقت پذیر رہتے ہیں کیونکہ دونوں ایک ہی اسٹور میں لکھتے ہیں۔

**مختلف بازیافت۔** xMemory درجہ بندی پر سیمنٹک بازیافت کی حمایت کرتی ہے۔ فطری زبان کے سوالات ("ہم نے دانتوں کے ڈاکٹر کے بارے میں کیا فیصلہ کیا؟") تھیمز، سیمنٹکس، یا برقرار ایپیسوڈس۔ یہ ساختی بازیافت کی حمایت نہیں کرتا ہے (IDs اور رشتوں کے ساتھ ہستی کی کوئی قسم نہیں ہے)۔ یہ تین قسم کے معاملات میں متوقع ناکامیوں کی طرف جاتا ہے:

- **شواہد مختلف موڑ پر پھیل گئے۔** "کیا ہم نے رسید کا تنازعہ حل کیا؟" تنازعہ، گفت و شنید، اور ادائیگی مختلف اقساط یا موضوعات میں رہ سکتی ہے۔ بازیافت ایک یا دو کی سطح پر ہوسکتی ہے اور باقی سے محروم رہ سکتی ہے، لہذا ماڈل غلط یا نامکمل جواب دیتا ہے۔
- **سوالات مرتب کریں۔** "جمعہ سے پہلے کون سے کام واجب الادا ہیں؟" یا "X سے رابطہ کرنے کے لیے تمام ادائیگیاں دکھائیں۔" فلٹر کرنے کے لیے کوئی کام یا لین دین نہیں ہے۔ آپ کو معنوی مماثلتیں ملتی ہیں (پیغامات جن میں "ٹاسک" اور "جمعہ" یا "کانٹیکٹ ایکس" کا ذکر ہوتا ہے)، کوئی حتمی فہرست نہیں، لہذا نتائج جزوی یا شور والے ہوتے ہیں۔
- **تعلقات کی تبدیلی۔** "پروجیکٹ Y میں کون سے کام ابھی تک زیر التواء ہیں؟" پروجیکٹ ٹاسک گراف کے بغیر، بازیافت گفتگو کے ٹکڑوں کو لوٹاتا ہے جو کچھ کاموں یا منصوبوں کو چھوڑ سکتے ہیں۔ آپ رشتے کے لحاظ سے معتبر طریقے سے شمار نہیں کر سکتے۔

Neotoma دونوں کی حمایت کرتا ہے. جب ڈیٹا اسٹور میں رہتا ہے تو آپ سیمنٹک طرز کے سوالات پوچھ سکتے ہیں۔ آپ کو ہستی کی قسم، ID، رشتہ، اور ٹائم ونڈو کے لحاظ سے ساختی بازیافت بھی حاصل ہوتی ہے، اس لیے سوالات اور رشتے کی نقل و حرکت کی واپسی مکمل، فرسٹ کلاس نتائج سیٹ کریں۔ تجارت یہ ہے کہ آپ کو اسکیموں اور ایک اسٹور کی ضرورت ہے جو ان مشاہدات کو قبول کرے۔

## ڈھانچہ مماثلت پر، اسکیما پہلے ٹوٹنے پر

ایجنٹ میموری کے لیے، خام متن پر مماثلت ناکام ہوجاتی ہے۔ بازیافت کو ڈھانچے کے ذریعہ چلایا جانا چاہئے: آپ اسٹریم کو کس طرح گلتے اور منظم کرتے ہیں، یہ نہیں کہ کتنے حصے ایک سوال سے ملتے ہیں۔ مقالے سے پتہ چلتا ہے کہ ایک سیکھا ہوا درجہ بندی (xMemory) بولی RAG کو مات دیتا ہے اور LLM سے تیار کردہ ڈھانچہ ٹوٹنے والا ہے۔

تاہم، ایک متعین، اسکیما-پہلا راستہ آپ کو اس ٹوٹ پھوٹ کے بغیر وہی ساختی فائدہ دیتا ہے۔ میں مؤخر الذکر پر [Neotoma](https://github.com/markmhendrickson/neotoma) بنا رہا ہوں تاکہ نگلنا اور بازیافت دوبارہ قابل تولید رہے اور اسکیما سچائی کا ذریعہ رہے۔

[^1]: **Naive RAG:** ایمبیڈ یادیں، مماثلت کے لحاظ سے فکسڈ ٹاپ-k کو بازیافت کریں، کوئی درجہ بندی نہیں۔ کوئی علیحدہ منصوبہ نہیں؛ بیس لائن کی وضاحت [کاغذ](https://arxiv.org/abs/2602.02007) میں کی گئی ہے۔
[^2]: **A-Mem:** LLM ایجنٹس کے لیے ایجنٹی میموری؛ Zettelkasten طرز کے لنکس اور ایک میموری نیٹ ورک میں ایجنٹ سے چلنے والی اپ ڈیٹس۔ [پروجیکٹ](https://github.com/agiresearch/A-mem)۔
[^3]: **MemoryOS:** ذاتی نوعیت کے ایجنٹس کے لیے اپ ڈیٹ، بازیافت، اور جنریشن ماڈیولز کے ساتھ درجہ بندی مختصر/وسط/طویل مدتی اسٹوریج۔ [پروجیکٹ](https://github.com/BAI-LAB/MemoryOS)۔
[^4]: **لائٹ میم:** اٹکنسن-شیفرین مراحل سے متاثر ہلکی وزنی یادداشت؛ موضوع سے آگاہی اور آف لائن طویل مدتی اپ ڈیٹس۔ [پروجیکٹ](https://github.com/zjunlp/LightMem)۔
[^5]: **نیموری:** واقعات کی تقسیم کے ساتھ ایپیسوڈک میموری کو خود کو منظم کرنا اور موافقت علم کے لیے پیشن گوئی کیلیبریٹ۔ [پروجیکٹ](https://github.com/nemori-ai/nemori)۔