latex
تُولِّد عملية الاسترجاع المعزز (RAG) للوثائق الفنية تحديات، حيث إن التضمينات غالباً لا تلتقط المعلومات المتعلقة بالمجال بدقة. نراجع الأعمال السابقة حول العوامل المهمة التي تؤثر على RAG ونجري تجارب لتسليط الضوء على أفضل الممارسات والتحديات المحتملة في بناء أنظمة RAG للوثائق الفنية.
تتضمن الإجابة على الأسئلة الطويلة توليد استجابات بحجم الفقرة من نماذج اللغة الكبيرة. تحديات الاسترجاع الموجه للوثائق الفنية متعددة (xu2023retrieval, toro2023dynamic). تم تقييم العوامل التي تؤثر على أداء الاسترجاع، بما في ذلك الوثائق في السياق، ونماذج اللغة الكبيرة والمقاييس (chen2023understanding). للبناء على هذا العمل، نجري تجارب على الوثائق الفنية مع مصطلحات الاتصالات والبطاريات لفحص تأثير طول القطعة، والبحث المعتمد على الكلمات الرئيسية وترتيب النتائج المسترجعة في خط أنابيب الاسترجاع الموجه.
تعتمد تجاربنا على مواصفات الطبقة المتوسطة للتحكم في الوصول إلى الوسائط (Medium Access Control) والطبقة الفيزيائية (Physical Layer) لشبكة IEEE اللاسلكية (9363693) ومعجم مصطلحات البطاريات الثابتة القياسي لـ IEEE (7552407). نقوم بمعالجة معجم التعريفات والوثيقة كاملة بشكل منفصل، حيث إن العديد من الأسئلة المتوقعة تعتمد على التعريفات. نستخرج الأسئلة بناءً على المعرفة المجالية ونقدم تقارير عن النتائج التجريبية لـ 42 استفساراً تمثيلياً عبر الوثائق. يمكن استخدام نماذج تضمين متعددة (reimers2019sentence)، ونستخدم نموذج MPNET (song2020mpnet) للوثيقة كاملة - باستثناء الجداول والتعليقات التوضيحية. بالنسبة للمعجم، نقسم المصطلح والتعريف ونولد تضمينات منفصلة لهما، بالإضافة إلى الفقرة الكاملة التي تحتوي على المصطلح المعرف والتعريف. قام (soman2023observations) بمراجعة نماذج اللغة الكبيرة الأخرى لقطاع الاتصالات، لكننا اخترنا نموذج llama2-7b-chat (touvron2023llama) لأنه مجاني ويمتلك ترخيصاً متوافقاً مع الاستخدام التجاري. نقوم بتقييم عدة أسئلة ونقدم تقارير عن الأسئلة المختارة لتأكيد ملاحظاتنا. للرجوع إليها، يتم توفير الأوامر المستخدمة لنموذج اللغة الكبيرة في الملحق [app:appA].
لاحظنا أولاً أن تضمين الجمل يصبح غير موثوق به مع زيادة حجم القطعة. يظهر الرسم البياني لتقدير الكثافة النوية (KDE) لدرجات التشابه الجيبي الكلي لأطوال الجمل المختلفة في الملحق [app:appB]. قمنا بأخذ 10,970 جملة وفحصنا التشابه الزوجي لجميع الجمل. يُلاحظ تشابه عالٍ عندما يكون طول الجمل طويلاً نسبياً. تشير توزيعات التشابه الأعلى للأطوال الأكبر إلى تشابهات زائفة قمنا بالتحقق منها يدوياً لبعض العينات. وجدنا أنه عندما يحتوي كل من الاستعلام والوثيقة المستعلم عنها على أكثر من 200 كلمة، يكون توزيع التشابه ثنائي الوضع. عندما يحتوي أحدهما فقط على أكثر من 200 كلمة، هناك ارتفاع صغير ولكن أقل وضوحاً عند التشابهات العليا.
يلخص الجدول [tab:observations] فرضياتنا والملاحظات الرئيسية - يتم توفير استعلامات العينة ونتائجها في الملحق [app:appC]. نفترض أن التقسيم بين التعريفات والمصطلحات يمكن أن يساعد في تحسين النتائج (H1)، وأن درجات التشابه تعتبر مقياساً جيداً (H2)، وأن موقع الكلمات الرئيسية يؤثر على النتائج (H3)، وأن التشابه بناءً على الجمل يؤدي إلى استرجاع أفضل (H4) وتوليد أفضل (H5)، وأن الإجابات للتعريفات المبنية على الاختصارات (H6) وتأثير ترتيب النتائج المسترجعة على أداء المولد (H7). من بين هذه، H2 هي نتيجة تجاربنا مع توزيعات درجات التشابه المشار إليها سابقاً وH7 مبنية على (chen2023understanding). البقية مستخلصة من تجاربنا لتحسين النتائج. لكل فرضية، نقدم عدد التجارب التي تدعم الادعاء وتلك التي تنطبق على نفس الشيء في العمود الأخير، جنباً إلى جنب مع استعلامات العينة.
وجدنا أن الاسترجاع بناءً على التحديد حسب درجات التشابه ليس مفيداً دائماً. بالنسبة للاستعلامات 1، 2 و 5، عندما تكون عبارة الاستعلام موجودة في المصطلح أو التعريف، تكون الدرجة المسترجعة الأعلى. بالنسبة للاستعلام 3، يتم استرجاع النتيجة الصحيحة في المركز الثاني باستخدام تضمين التعريف، لكن في الحالات الأخرى، لا يتم استرجاع النتيجة وتكون درجات التشابه متقاربة. بالنسبة للاستعلامات 4 و 6، لا نستطيع استرجاع النتيجة الصحيحة، رغم أن الدرجات تشير إلى خلاف ذلك. وبالتالي، قد يؤدي التحديد حسب نتائج الاسترجاع بناءً على درجات التشابه إلى تعزيز أداء المولد الفرعي الأمثل. نقوم بتقييم أداء المولد على استعلاماتنا بناءً على النتائج المسترجعة. يتم ذلك باستخدام أعلى \(k\) تعريفات مسترجعة، والمصطلحات والتعريفات. يعطي السياق الأفضل استجابات مولدة أفضل. بالنسبة للاختصارات وتوسعاتها، لا يضيف المولد أي قيمة إضافية.
لاسترجاع الوثيقة الكاملة، نستكشف البحث عن التشابه بواسطة الجمل والفقرات بشكل منفصل. في الحالة الأولى، نسترجع الفقرة التي تنتمي إليها الجملة ونأخذ أعلى \(k\) فقرات مميزة من الجمل الأكثر تشابهاً. نلاحظ أن النتائج بواسطة البحث عن التشابه بناءً على الجمل واستخدام الفقرات للمولد توفر أداء استرجاع وتوليد أفضل. يذكر المؤلفون في (chen2023understanding) أن ترتيب المعلومات المقدمة مهم، لكننا لم نلاحظ نتائج مختلفة عند تبديل الفقرات المسترجعة. نلاحظ أن استجابات المولد تفشل أحياناً بسبب الاسترجاع الخاطئ، أو الحقائق المتوهمة أو التوليف الخاطئ كما هو موضح في (chen2023understanding).
نوصي بمثل هذه الطرق لتعريف الأسئلة والأجوبة والأسئلة والأجوبة الطويلة.
لقد أظهرنا أن طول القطعة يؤثر على تضمينات أداة الاسترجاع، وأن تعزيز المولد بتحديد نتائج أداة الاسترجاع بناءً على درجات التشابه قد يكون غير موثوق. ومع ذلك، فإن استخدام الاختصارات وعدد كبير من الفقرات المتعلقة بموضوع ما يجعل ملاحظاتنا ذات صلة خاصة بالأسئلة والأجوبة الطويلة على الوثائق الفنية. كأعمال مستقبلية، نود استخدام مقاييس (es2023ragas, chen2023benchmarking) لاختيار استراتيجيات الاسترجاع. كما ستكون الطرق ومقاييس التقييم للإجابة على الأسئلة التالية موضوعاً يستحق الاهتمام.
يجب أن تستند الاستشهادات داخل النص إلى حزمة natbib
وتتضمن أسماء عائلات المؤلفين والسنة (مع استخدام بناء الجملة “وآخرون” لأكثر من مؤلفين اثنين). عندما يتم ذكر المؤلفين أو النشر داخل الجملة، يجب ألا يكون الاستشهاد بين قوسين باستخدام \citet{}
(كما في “انظر (Hinton06) لمزيد من المعلومات.”). وإلا، يجب أن يكون الاستشهاد بين قوسين باستخدام \citep{}
(كما في “تظهر التعلم العميق وعداً لتحقيق تقدم نحو الذكاء الاصطناعي (Bengio+chapter2007).”).
يجب أن تدرج المراجع المقابلة بترتيب أبجدي لأسماء المؤلفين، في قسم المراجع. بالنسبة لتنسيق المراجع نفسها، أي أسلوب مقبول طالما أنه مستخدم بشكل متسق.
جميع الجداول يجب أن تكون مركزة، نظيفة، وواضحة. لا تستخدم جداول مرسومة باليد. يجب أن يظهر رقم الجدول وعنوانه قبل الجدول. انظر الجدول [sample-table].
ضع مسافة سطر واحدة قبل عنوان الجدول، ومسافة سطر واحدة بعد عنوان الجدول، ومسافة سطر واحدة بعد الجدول. يجب أن يكون عنوان الجدول بأحرف صغيرة (ما عدا الكلمة الأولى والأسماء الخاصة)؛ ويتم ترقيم الجداول بشكل متسلسل.
في محاولة لتشجيع التدوين الموحد، قمنا بتضمين ملف التدوين من الكتاب المدرسي، التعلم العميق (goodfellow2016deep) المتاح على https://github.com/goodfeli/dlbook_notation/. استخدام هذا الأسلوب ليس إلزامياً ويمكن تعطيله بتعليق math_commands.tex
.
الأعداد والمصفوفات
\(\displaystyle a\) | عدد نسبي (صحيح أو حقيقي) |
\(\displaystyle \va\) | متجه |
\(\displaystyle \mA\) | مصفوفة |
\(\displaystyle \tA\) | تنسور |
\(\displaystyle \mI_n\) | مصفوفة الهوية بn صفوف وn أعمدة |
\(\displaystyle \mI\) | مصفوفة الهوية بأبعاد يفترض من السياق |
\(\displaystyle \ve^{(i)}\) | متجه الأساس القياسي \([0,\dots,0,1,0,\dots,0]\) بواحد في الموضع \(i\) |
\(\displaystyle \text{diag}(\va)\) | مصفوفة مربعة قطرية بمدخلات قطرية معطاة بواسطة \(\va\) |
\(\displaystyle \ra\) | متغير عشوائي نسبي |
\(\displaystyle \rva\) | متغير عشوائي متجهي |
\(\displaystyle \rmA\) | متغير عشوائي مصفوفي |
المجموعات والرسومات
\(\displaystyle \sA\) | مجموعة |
\(\displaystyle \R\) | مجموعة الأعداد الحقيقية |
\(\displaystyle \{0, 1\}\) | المجموعة التي تحتوي على 0 و1 |
\(\displaystyle \{0, 1, \dots, n \}\) | مجموعة جميع الأعداد الصحيحة بين \(0\) و\(n\) |
\(\displaystyle [a, b]\) | الفترة الحقيقية التي تشمل \(a\) و\(b\) |
\(\displaystyle (a, b]\) | الفترة الحقيقية التي تستثني \(a\) لكن تشمل \(b\) |
\(\displaystyle \sA \backslash \sB\) | طرح المجموعات، أي المجموعة التي تحتوي على عناصر \(\sA\) التي ليست في \(\sB\) |
\(\displaystyle \gG\) | رسم بياني |
\(\displaystyle \parents_\gG(\ervx_i)\) | الآباء لـ \(\ervx_i\) في \(\gG\) |
الفهرسة
\(\displaystyle \eva_i\) | العنصر \(i\) من المتجه \(\va\)، حيث تبدأ الفهرسة من 1 |
\(\displaystyle \eva_{-i}\) | جميع عناصر المتجه \(\va\) باستثناء العنصر \(i\) |
\(\displaystyle \emA_{i,j}\) | العنصر \(i, j\) من المصفوفة \(\mA\) |
\(\displaystyle \mA_{i, :}\) | الصف \(i\) من المصفوفة \(\mA\) |
\(\displaystyle \mA_{:, i}\) | العمود \(i\) من المصفوفة \(\mA\) |
\(\displaystyle \etA_{i, j, k}\) | العنصر \((i, j, k)\) من تنسور ثلاثي الأبعاد \(\tA\) |
\(\displaystyle \tA_{:, :, i}\) | شريحة ثنائية الأبعاد من تنسور ثلاثي الأبعاد |
\(\displaystyle \erva_i\) | العنصر \(i\) من المتجه العشوائي \(\rva\) |
التفاضل والتكامل
\(\displaystyle\frac{d y} {d x}\) | مشتقة \(y\) بالنسبة لـ \(x\) |
[2ex] \(\displaystyle \frac{\partial y} {\partial x} \) | المشتقة الجزئية لـ \(y\) بالنسبة لـ \(x\) |
\(\displaystyle \nabla_\vx y \) | التدرج لـ \(y\) بالنسبة لـ \(\vx\) |
\(\displaystyle \nabla_\mX y \) | مشتقات المصفوفة لـ \(y\) بالنسبة لـ \(\mX\) |
\(\displaystyle \nabla_\tX y \) | تنسور يحتوي على مشتقات \(y\) بالنسبة لـ \(\tX\) |
\(\displaystyle \frac{\partial f}{\partial \vx} \) | مصفوفة جاكوبي \(\mJ \in \R^{m\times n}\) لـ \(f: \R^n \rightarrow \R^m\) |
\(\displaystyle \nabla_\vx^2 f(\vx)\text{ or }\mH( f)(\vx)\) | مصفوفة هيسيان لـ \(f\) في نقطة الإدخال \(\vx\) |
\(\displaystyle \int f(\vx) d\vx \) | التكامل المحدد على كامل نطاق \(\vx\) |
\(\displaystyle \int_\sS f(\vx) d\vx\) | التكامل المحدد بالنسبة لـ \(\vx\) على المجموعة \(\sS\) |
نظرية الاحتمالات والمعلومات
\(\displaystyle P(\ra)\) | توزيع احتمالي على متغير متقطع |
\(\displaystyle p(\ra)\) | توزيع احتمالي على متغير مستمر، أو على متغير لم يتم تحديد نوعه |
\(\displaystyle \ra \sim P\) | المتغير العشوائي \(\ra\) له التوزيع \(P\) |
\(\displaystyle \E_{\rx\sim P} [ f(x) ]\text{ or } \E f(x)\) | توقع \(f(x)\) بالنسبة لـ \(P(\rx)\) |
\(\displaystyle \Var(f(x)) \) | التباين لـ \(f(x)\) تحت \(P(\rx)\) |
\(\displaystyle \Cov(f(x),g(x)) \) | التغاير بين \(f(x)\) و\(g(x)\) تحت \(P(\rx)\) |
\(\displaystyle H(\rx) \) | إنتروبيا شانون للمتغير العشوائي \(\rx\) |
\(\displaystyle \KL ( P \Vert Q ) \) | تباعد كولباك-لايبلر بين P وQ |
\(\displaystyle \mathcal{N} ( \vx ; \vmu , \mSigma)\) | التوزيع الطبيعي على \(\vx\) بمتوسط \(\vmu\) وتباين \(\mSigma\) |
الدوال
\(\displaystyle f: \sA \rightarrow \sB\) | الدالة \(f\) بمجال \(\sA\) ومدى \(\sB\) |
\(\displaystyle f \circ g \) | تركيب الدالتين \(f\) و\(g\) |
\(\displaystyle f(\vx ; \vtheta) \) | دالة في \(\vx\) بمعامل \(\vtheta\). (أحياناً نكتب \(f(\vx)\) ونحذف الوسيط \(\vtheta\) لتبسيط التدوين) |
\(\displaystyle \log x\) | اللوغاريتم الطبيعي لـ \(x\) |
\(\displaystyle \sigma(x)\) | سيجمويد لوجستي، \(\displaystyle \frac{1} {1 + \exp(-x)}\) |
\(\displaystyle \zeta(x)\) | سوفت بلس، \(\log(1 + \exp(x))\) |
\(\displaystyle || \vx ||_p \) | القيمة \(\normlp\) لـ \(\vx\) |
\(\displaystyle || \vx || \) | القيمة \(\normltwo\) لـ \(\vx\) |
\(\displaystyle x^+\) | الجزء الموجب من \(x\)، أي \(\max(0,x)\) |
\(\displaystyle \1_\mathrm{condition}\) | تساوي 1 إذا كان الشرط صحيحاً، و0 خلاف ذلك |
يقر الكتاب بأن على الأقل مؤلف رئيسي واحد في هذا العمل يلبي معايير URM لمسار الأوراق الصغيرة في ICLR 2024.
الأوامر المستخدمة لنموذج اللغة الكبير في تجاربنا هي كما يلي:
أمر النظام: أجب عن الأسئلة استناداً إلى الفقرات المقدمة هنا. لا تستخدم أي معلومات أخرى باستثناء تلك الموجودة في الفقرات. اجعل الإجابات قصيرة قدر الإمكان. فقط قدم الإجابة. لا مقدمة مطلوبة.
أمر المستخدم: “الفقرات: ”+context + “الأسئلة: ”+ query
نوفر مستودع Git مجهول يحتوي على:
شفرة مصدرية مجهولة
جدولة التجربة مقابل الفرضية (للنتائج الكمية الموحدة)
تفاصيل التجارب عبر 42 استفسار و7 فرضيات
بالإضافة إلى ذلك، نقدم تفاصيل بالنسبة للفرضيات في الجدول [tab:observations] من خلال تقديم استفسارات نموذجية والنتائج المسترجعة والمولدة.