
التوليد المعزز بالاسترجاع مقابل التوليد المعزز بالتخزين المؤقت (CAG مقابل RAG)
اكتشف الفروق الرئيسية بين التوليد المعزز بالاسترجاع (RAG) والتوليد المعزز بالتخزين المؤقت (CAG) في الذكاء الاصطناعي. تعرّف على كيفية قيام RAG بجلب المعلومات في ...
توليد معزز بالتخزين المؤقت (CAG) يعزز كفاءة نماذج اللغة الكبيرة من خلال تحميل المعرفة الثابتة مسبقًا، مما يقلل من زمن الاستجابة ويبسط البنية للتطبيقات ذات المهام الثابتة والسريعة.
التوليد المعزز بالتخزين المؤقت (CAG) هو نهج مبتكر لتعزيز أداء وكفاءة نماذج اللغة الكبيرة (LLMs) من خلال الاستفادة من المعرفة المحملة مسبقًا على شكل ذاكرة مفاتيح وقيم (KV) محسوبة مسبقًا.
على عكس التوليد المعزز بالاسترجاع (RAG) الذي يسترجع المعرفة الخارجية ديناميكيًا أثناء التنفيذ، يقوم CAG بإلغاء خطوات الاسترجاع تمامًا عبر إدخال جميع المعرفة ذات الصلة مباشرة في نافذة السياق الموسعة للنموذج قبل التنفيذ. تتيح هذه الاستراتيجية للنموذج إنتاج الإجابات باستخدام المعلومات المحسوبة مسبقًا، مما يقلل بشكل كبير من زمن الاستجابة ويبسط بنية النظام.
من خلال تخزين المعرفة المعالجة في ذاكرة مفاتيح وقيم، يضمن CAG أن النموذج لديه وصول فوري إلى السياق اللازم للإجابة على الاستفسارات. ويعد هذا النهج مفيدًا بشكل خاص في السيناريوهات التي تكون فيها قاعدة المعرفة ثابتة أو صغيرة نسبيًا أو عندما يكون زمن الاستجابة المنخفض أولوية.
يعمل CAG عبر ثلاث مراحل رئيسية:
يتم تحميل جميع الوثائق أو مجموعات البيانات ذات الصلة إلى نافذة سياق النموذج قبل التنفيذ.
تتم معالجة المحتوى المحمّل إلى ذاكرة مفاتيح وقيم (KV) تلتقط التمثيل الداخلي للنموذج للمعرفة. على سبيل المثال:
def preprocess_knowledge(model, tokenizer, prompt):
input_ids = tokenizer.encode(prompt, return_tensors="pt").to(model.device)
past_key_values = DynamicCache()
outputs = model(input_ids=input_ids, past_key_values=past_key_values, use_cache=True)
return outputs.past_key_values
تضمن هذه الخطوة أن النموذج لديه وصول فوري إلى المعرفة المعالجة مسبقًا، متجاوزًا الحاجة إلى الاسترجاع في الوقت الفعلي.
عند تقديم استفسار، يتم دمج ذاكرة المفاتيح والقيم المحسوبة مسبقًا مع إدخال الاستعلام.
يُنتج النموذج إجابة معتمدًا فقط على المعرفة المخزنة والاستعلام، دون حسابات إضافية لاسترجاع المعرفة. على سبيل المثال:
def generate_response(model, query, kv_cache):
input_ids = tokenizer.encode(query, return_tensors="pt").to(model.device)
output_ids = model(input_ids=input_ids, past_key_values=kv_cache, use_cache=True)
return tokenizer.decode(output_ids)
مع معالجة الاستفسارات الجديدة، تنمو الذاكرة المؤقتة. تقوم آلية إعادة الضبط بقطع الذاكرة إلى طولها الأصلي للحفاظ على الأداء وضمان تقييم الاستفسارات اللاحقة ضمن السياق المقصود. مثال على إعادة ضبط الذاكرة:
def clean_up(kv_cache, original_length):
for i in range(len(kv_cache.key_cache)):
kv_cache.key_cache[i] = kv_cache.key_cache[i][:, :, :original_length, :]
kv_cache.value_cache[i] = kv_cache.value_cache[i][:, :, :original_length, :]
زمن استجابة منخفض
نظرًا لعدم الحاجة إلى الاسترجاع في الوقت الفعلي، يوفر CAG أوقات استجابة أسرع من RAG، مما يجعله مثاليًا للتطبيقات الحساسة للوقت.
دقة محسنة
من خلال تحميل جميع الوثائق ذات الصلة مسبقًا، يضمن CAG معالجة النموذج لمجموعة بيانات شاملة، مما يقلل من مخاطر فقدان السياق أو أخطاء الاسترجاع.
بنية مبسطة
على عكس RAG الذي يتطلب خط أنابيب استرجاع معقدًا، فإن بنية CAG مبسطة، مما يقلل من تعقيد النظام وأعباء الصيانة.
كفاءة على نطاق واسع
بمجرد تحميل المعرفة وتخزينها مؤقتًا، تتم معالجة الاستفسارات اللاحقة بأقل عبء حسابي، مما يجعل CAG فعالًا للاستعلامات المتكررة ضمن نفس مجال المعرفة.
حجم نافذة السياق
يعتمد CAG على نافذة السياق للنموذج لتحميل المعرفة. تدعم النماذج الحالية نوافذ سياق تصل إلى 128,000 رمز، مما يحد من كمية المعرفة التي يمكن تحميلها مسبقًا.
حجم قاعدة المعرفة
يناسب CAG أفضل القواعد المعرفية الثابتة والقابلة للإدارة. بالنسبة لمجموعات البيانات الكبيرة أو الديناميكية، قد يواجه النموذج صعوبة في استيعاب جميع المعلومات ذات الصلة داخل نافذة السياق.
المعرفة الثابتة
يفترض CAG أن قاعدة المعرفة تظل دون تغيير أثناء التنفيذ. وهو أقل فاعلية في الحالات التي تتطلب تحديثات في الوقت الفعلي أو دمج معرفة ديناميكية.
التكاليف
تؤدي النوافذ السياقية الكبيرة إلى زيادة التكاليف الحسابية أثناء التحميل المسبق، مما يجعل CAG أقل اقتصادًا في السيناريوهات التي تتطلب تحديثات متكررة أو تغييرات في قاعدة المعرفة.
يُطبق CAG عادة في السيناريوهات التي تكون فيها قاعدة المعرفة ثابتة وقابلة للإدارة وزمن الاستجابة المنخفض أمر حاسم:
روبوتات الدردشة لخدمة العملاء
مثال: تحميل خطوات استكشاف الأعطال الشائعة لمنتجات برمجية مسبقًا لتوفير إجابات فورية للمستخدمين.
الفائدة: يلغي أخطاء الاسترجاع ويسرع أوقات الرد.
تحليل الوثائق
مثال: المؤسسات المالية التي تحلل التقارير الفصلية أو المكاتب القانونية التي تستعلم الوثائق التنظيمية.
الفائدة: يضمن استجابات دقيقة ومتسقة من خلال تحميل جميع الوثائق ذات الصلة للنموذج.
المساعدون الصحيون
مثال: تحميل الإرشادات الطبية مسبقًا لمساعدة استفسارات المرضى.
الفائدة: يحافظ على استمرارية الحوار متعدد الأدوار ويضمن الإحالة الدقيقة.
التعليم والتدريب
مثال: الإجابة على الأسئلة الشائعة في برامج التدريب المؤسسية.
الفائدة: يبسط النشر مع ضمان استجابات متسقة.
الميزة | CAG | RAG |
---|---|---|
معالجة المعرفة | تحميل المعرفة في نافذة السياق. | استرجاع المعرفة ديناميكيًا أثناء التشغيل. |
تعقيد النظام | مبسطة، لا حاجة لخط أنابيب استرجاع. | يتطلب مكونات إضافية للاسترجاع. |
زمن الاستجابة | منخفض، حيث يتم إلغاء خطوات الاسترجاع. | أعلى بسبب عمليات الاسترجاع في الوقت الفعلي. |
قابلية التوسع | محدودة بحجم نافذة السياق. | يتوسع جيدًا مع مجموعات البيانات الديناميكية الكبيرة. |
مخاطر الأخطاء | لا توجد أخطاء استرجاع. | عرضة لأخطاء الاسترجاع والترتيب. |
أفضل حالات الاستخدام | مهام ثابتة وزمن استجابة منخفض. | مهام ديناميكية أو كبيرة أو متجددة باستمرار. |
أنظمة الموارد البشرية
تستخدم شركة ما CAG لتحميل سياسات الموظفين إلى النموذج. يمكن للموظفين الاستفسار عن إرشادات محددة وتُنتج الإجابات فورًا.
المساعدة القانونية
يقوم مساعد قانوني بتحميل القوانين ذات الصلة في سياق النموذج لتقديم إجابات سريعة على الاستفسارات القانونية دون استخدام نظام استرجاع.
خدمة العملاء
يستخدم روبوت دردشة منتج SaaS CAG لتحميل الأسئلة الشائعة وأدلة استكشاف الأخطاء، ما يضمن تفاعلًا سلسًا وسريعًا مع العملاء.
تجميع الأخبار
يستخدم تطبيق أخبار RAG لجلب وتلخيص أحدث المقالات، واسترجاع المعلومات الأكثر صلة باستفسارات المستخدمين ديناميكيًا.
بحث التجارة الإلكترونية
يُستخدم RAG لاسترجاع تفاصيل المنتجات وتوافرها من كتالوج كبير ومتجدد باستمرار.
منصات البحث العلمي
توظف منصة أبحاث علمية RAG لجلب الدراسات والأوراق ذات الصلة من قواعد بيانات خارجية ضخمة.
يوضح مقتطف الشيفرة التالي في بايثون كيفية تحميل المعرفة في نموذج CAG:
def preprocess_knowledge(model, tokenizer, prompt):
input_ids = tokenizer.encode(prompt, return_tensors="pt").to(model.device)
past_key_values = DynamicCache()
outputs = model(input_ids=input_ids, past_key_values=past_key_values, use_cache=True)
return outputs.past_key_values
تضمن هذه الآلية أن النموذج يعالج الاستفسارات دون الحاجة لاسترجاع خارجي، مما يمكّن من أداء فعّال وزمن استجابة منخفض.
قواعد المعرفة الثابتة
مثالي للحالات التي من غير المحتمل أن تتغير فيها قاعدة المعرفة كثيرًا.
تطبيقات زمن الاستجابة المنخفض
مناسب لخدمة العملاء أو التعليم أو الأنظمة الصحية حيث تكون الاستجابات السريعة ضرورية.
السيناريوهات الاقتصادية
مفيد عندما تظل المعرفة المحملة مسبقًا متسقة عبر استفسارات متعددة، مما يقلل من العبء الحسابي.
يعد CAG بديلاً فعالًا لـ RAG في المهام التي تتطلب السرعة والبساطة والثبات. ومع ذلك، فهو مقيد بحجم وطبيعة قاعدة المعرفة الثابتة.
المؤلفون: غوانغيوان ليو، ينكيو ليو، جيا تشينغ وانغ، هونغ يانغ دو، دوسيت نياتو، جياوين كانغ، زيهوي شيونغ
تتناول هذه الورقة التحديات التي تواجه نشر نماذج اللغة الكبيرة (LLM) في الحوسبة الطرفية المتنقلة مثل الموارد الحسابية المحدودة وزمن الاسترجاع العالي. وتقترح إطار عمل التخزين المؤقت السياقي التكيفي (ACC)، الذي يستخدم التعلم العميق المعزز لتحسين سياسات استبدال الذاكرة المؤقتة مع مراعاة سياق المستخدم، وتشابه الوثائق، وتكاليف فقدان الذاكرة المؤقتة. تظهر النتائج التجريبية أن ACC يحقق معدلات إصابة بالذاكرة المؤقتة تزيد عن 80% بعد 11 حلقة تدريبية، ويقلل زمن الاسترجاع بنسبة تصل إلى 40% مقارنة بالطرق التقليدية. علاوة على ذلك، يقلل من عبء التخزين المؤقت المحلي بنسبة تصل إلى 55%، مما يجعله مناسبًا لخدمات LLM القابلة للتوسع وذات الزمن المنخفض في البيئات محدودة الموارد. وتبرز الدراسة إمكانيات ACC في تحسين الكفاءة بأنظمة LLM الطرفية.
اقرأ الورقة هنا
المؤلفون: هانشين لي، يوهان ليو، يي هوا تشينغ، كونتاي دو، جونشن جيانغ
تستكشف هذه الدراسة إعادة استخدام ذاكرة المفاتيح والقيم (KV) لتقليل تأخير التهيئة في تطبيقات LLM، خاصة للنصوص المدخلة المتكررة. وتبحث في مدى الجدوى الاقتصادية لهذا النهج عند استخدام خدمات السحابة العامة للتخزين والمعالجة. يقترح المؤلفون نموذجًا تحليليًا للتحقق من صحة تكاليف السحابة (في الحوسبة والتخزين والشبكة) لتخزين وإعادة استخدام الذاكرة المؤقتة KV في ظل معلمات عبء عمل متنوعة. وتوضح الدراسة أن إعادة استخدام ذاكرة KV توفر الوقت والتكلفة للعبء الذي يتطلب سياقات طويلة، مما يشجع على مزيد من الجهود لبناء أنظمة LLM معززة بالسياق أكثر اقتصادًا.
اقرأ الورقة هنا
المؤلفون: شيجو تشاو، جونهاو هو، رونغشياو هوانغ، جياشي تشنغ، جويهواي تشين
تقدم هذه الورقة MPIC، وهو نظام تخزين مؤقت للسياق متعدد الوسائط ومستقل عن الموضع، يهدف إلى معالجة عدم الكفاءة في تنفيذ نماذج اللغة الكبيرة متعددة الوسائط (MLLM). تعيد الأنظمة التقليدية حساب ذاكرة المفاتيح والقيم بالكامل حتى في حال وجود اختلافات طفيفة في السياق، مما يؤدي إلى عدم الكفاءة. يقدم MPIC نظام تخزين مؤقت مستقل عن الموضع يخزن ذاكرات المفاتيح والقيم محليًا أو عن بُعد ويوازي حساب وتحميل الذاكرة أثناء التنفيذ. وتخفف آليات إعادة الاستخدام وإعادة الحساب من تدهور الدقة مع تحقيق تقليل في زمن الاستجابة بنسبة تصل إلى 54% مقارنة بالطرق التقليدية. وتبرز هذه الدراسة إمكانية تحسين الكفاءة في أنظمة خدمة LLM متعددة الوسائط.
اقرأ الورقة هنا
التوليد المعزز بالتخزين المؤقت (CAG) هو طريقة لتحسين أداء نماذج اللغة الكبيرة (LLM) عن طريق تحميل المعرفة الثابتة مسبقًا في ذاكرة مفاتيح وقيم (KV) محسوبة مسبقًا. على عكس التوليد المعزز بالاسترجاع (RAG) الذي يسترجع المعرفة الخارجية أثناء التشغيل، يقوم CAG بإدراج جميع المعلومات ذات الصلة مسبقًا، مما يقلل من زمن الاستجابة ويبسط بنية أنظمة الذكاء الاصطناعي.
يقوم CAG بتحميل جميع المعرفة الضرورية في نافذة السياق الخاصة بالنموذج قبل التنفيذ، ويلغي الحاجة إلى الاسترجاع في الوقت الفعلي، مما يضمن زمن استجابة منخفض. أما RAG فيسترجع المعلومات ذات الصلة ديناميكيًا أثناء التشغيل، مما قد يؤدي إلى أخطاء استرجاع وزمن استجابة أعلى، لكنه أكثر ملاءمة للمعارف الديناميكية أو المتجددة باستمرار.
تشمل المزايا الرئيسية لـ CAG زمن استجابة منخفض، ودقة أفضل بفضل التحميل الشامل، وبنية نظام مبسطة، وكفاءة في الاستعلامات المتكررة ضمن مجالات المعرفة الثابتة.
يقتصر CAG على الحد الأقصى لحجم نافذة السياق للنموذج (حاليًا حتى 128,000 رمز)، وهو الأنسب لقواعد المعرفة الثابتة والقابلة للإدارة، وأقل فاعلية مع مجموعات البيانات الديناميكية أو السيناريوهات التي تتطلب تحديثات متكررة. قد تزيد النوافذ السياقية الكبيرة من التكاليف الحسابية أثناء التحميل المسبق.
يعد CAG مثاليًا للتطبيقات الثابتة وذات الزمن المنخفض مثل روبوتات الدردشة لخدمة العملاء، وتحليل الوثائق، والمساعدين الصحيين، والأسئلة الشائعة التعليمية، واستفسارات سياسات الموارد البشرية، والمساعدين القانونيين—أي مكان تتغير فيه قاعدة المعرفة بشكل نادر وهناك حاجة إلى استجابات فورية.
اختبر قوة CAG وأدوات الذكاء الاصطناعي الأخرى مع FlowHunt. احجز تجربة لترى كيف يمكن للحلول المعززة بالتخزين المؤقت والزمن المنخفض أن تحول أعمالك.
اكتشف الفروق الرئيسية بين التوليد المعزز بالاسترجاع (RAG) والتوليد المعزز بالتخزين المؤقت (CAG) في الذكاء الاصطناعي. تعرّف على كيفية قيام RAG بجلب المعلومات في ...
توليد معزز بالاسترجاع (RAG) هو إطار ذكاء اصطناعي متقدم يجمع بين أنظمة استرجاع المعلومات التقليدية ونماذج اللغة الكبيرة التوليدية (LLMs)، مما يمكّن الذكاء الاصطن...
الإجابة على الأسئلة مع الجيل المعزز بالاسترجاع (RAG) تجمع بين استرجاع المعلومات وتوليد اللغة الطبيعية لتعزيز نماذج اللغة الكبيرة (LLMs) من خلال دعم الإجابات ببي...