تشهد الطريقة التي تعالج بها النماذج اللغوية النصوص وتجزِّئها تحوُّلًا من الأسلوب الثابت التقليدي إلى عملية أكثر كفاءة وتجاوبًا. وعلى عكس التجزئة التقليدية ذات الحجم الثابت، التي تقسِّم المستندات الكبيرة عند نقاط محددة سلفًا، تستخدم التجزئة الوكيلية تقنيات تعتمد على الذكاء الاصطناعي لتحليل المحتوى بشكل ديناميكي وتحديد الطريقة المُثلى لتقسيم النص.
تعتمد التجزئة الوكيلية على أساليب تقسيم النصوص القائمة على الذكاء الاصطناعي، مثل التجزئة التكرارية وطريقة التداخل بين الأجزاء، والتي تعمل معًا لتحسين جودة التجزئة، مع الحفاظ على الروابط بين الأفكار البارزة وتحسين النوافذ السياقية في الوقت الفعلي. مع التجزئة الوكيلية، يتم إثراء كل جزء ببيانات وصفية لزيادة دقة الاسترجاع وتحسين كفاءة النموذج بشكل عام. ويُعَد هذا الأمر بالغ الأهمية في تطبيقات RAG، حيث إن طريقة تقسيم البيانات تؤثِّر بشكل مباشر في جودة الاسترجاع وتماسك الاستجابة. يتم الحفاظ على السياق الهادف داخل جميع الأجزاء الصغيرة، ما يجعل هذا الأسلوب بالغ الأهمية لتطبيقات مثل روبوتات المحادثة وقواعد المعرفة وحالات استخدام الذكاء الاصطناعي التوليدي. تعمل أطر العمل مثل LangChain وLlamaIndex على تحسين كفاءة الاسترجاع بشكل أكبر، ما يجعل هذه الطريقة فعَّالة للغاية.
1. استراتيجية التجزئة التكيفية: اختيار طريقة التجزئة الأنسب بشكل ديناميكي استنادًا إلى نوع المحتوى، وهدف الاستعلام، واحتياجات الاسترجاع، لضمان تقسيم فعَّال.
2. تحديد حجم الأجزاء بطريقة ديناميكية: تعديل أحجام المقاطع في الوقت الفعلي من خلال مراعاة البنية الدلالية والسياق، بدلًا من الالتزام بحدود ثابتة للرموز المميزة.
3. التداخل مع الحفاظ على السياق: تقييم التداخل بين المقاطع بذكاء للحفاظ على التماسك وتجنب فقدان المعلومات الأساسية، وبالتالي تحسين كفاءة الاسترجاع.
احصل على رؤى منسقة حول أهم أخبار الذكاء الاصطناعي وأكثرها إثارةً للاهتمام. اشترِك في خدمة رسائل Think الإخبارية الأسبوعية. راجع بيان الخصوصية لشركة IBM.
توفّر التجزئة الوكيلية مزايا مقارنةً بالتجزئة التقليدية:
أ. الاحتفاظ بالسياق: الحفاظ على المعلومات المهمة دون انقطاع غير ضروري.
ب. التحجيم الذكي: ضبط حدود الأجزاء وفقًا للمعنى والأهمية.
ج. تحسين الاستعلامات: العمل باستمرار على تحسين الأجزاء لتتوافق مع الاستعلامات المحددة.
د. الاسترجاع الفعَّال: تحسين نتائج أنظمة البحث وRAG عن طريق تقليل التجزئة غير الضرورية.
في هذا البرنامج التعليمي، ستُجري تجربة على استراتيجية التجزئة الوكيلية باستخدام نموذج Granite-3.0-8B-Instruct من IBM، والمتاح حاليًا على watsonx.ai.الهدف الأساسي هو تنفيذ تجزئة فعَّالة لضمان تطبيق ناجح لنموذج RAG.
تحتاج إلى حساب® IBM Cloud لإنشاء watsonx.ai مشروع.
رغم توفُّر عدة أدوات للاختيار منها، يُرشدك هذا الدليل خلال خطوات إعداد حساب IBM لاستخدام Jupyter Notebook.
سجِّل الدخول إلى watsonx.ai باستخدام حساب IBM Cloud الخاص بك.
أنشئ مشروع watsonx.ai.
يمكنك الحصول على معرِّف المشروع من داخل مشروعك. انقر على علامة التبويب الإدارة (Manage)، ثم انسخ معرِّف المشروع من قسم التفاصيل (Details) في صفحة عام (General). ستحتاج إلى هذا المعرِّف في هذا البرنامج التعليمي.
أنشئ Jupyter Notebook.
تفتح هذه الخطوة بيئة دفتر ملاحظات حيث يمكنك نسخ التعليمات البرمجية من هذا البرنامج التعليمي. أو يمكنك تنزيل هذا الدفتر إلى نظامك المحلي وتحميله إلى مشروع watsonx.ai كأصل. لمشاهدة المزيد من البرامج التعليمية حول Granite، تفضَّل بزيارة مجتمع IBM Granite. يمكن العثور على Jupyter Notebook هذا مع مجموعات البيانات المستخدمة على GitHub.
أنشئ مثيل خدمة watsonx.ai Runtime (اختَر المنطقة المناسبة لك، واختَر خطة Lite، وهي مثيل مجاني).
اربط مثيل خدمة watsonx.ai Runtime بالمشروع الذي أنشأته في watsonx.ai.
ستحتاج إلى عدد قليل من المكتبات والوحدات لهذا البرنامج التعليمي. تأكَّد من استيراد المكتبات التالية، وإذا لم تكن مثبَّتة، يمكنك تثبيتها بسرعة باستخدام pip.
ملحوظة، تم تطوير هذا البرنامج التعليمي باستخدام Python 3.12.7.
لتعيين بيانات الاعتماد الخاصة بنا، نحتاج إلى "WATSONX_APIKEY" و"WATSONX_PROJECT_ID". سنقوم أيضًا بتعيين عنوان URL الذي يعمل كنقطة نهاية لواجهة برمجة التطبيقات.
في هذا البرنامج التعليمي، نوصي باستخدام نموذج Granite-3.0-8B-Instruct من IBM كنموذج لغوي كبير لتحقيق نتائج مشابهة. لك الحرية في استخدام أي نموذج ذكاء اصطناعي من اختيارك. يمكن العثور على نماذج الأساس المتاحة من خلال watsonx هنا.
تقوم هذه الوظيفة باستخلاص المحتوى النصي من صفحة الشرح الخاصة بالتعلم الآلي من IBM. تُزيل هذه الوظيفة عناصر HTML غير المرغوب فيها (مثل البرامج النصية والأنماط)، وتُعيد نصًا نظيفًا وقابلًا للقراءة.
بدلًا من استخدام طريقة تجزئة بطول ثابت، استخدمنا نموذجًا لغويًا كبيرًا لتقسيم النص بناءً على المعنى. تعتمد هذه الوظيفة على نموذج لغوي كبير لتقسيم النص بذكاء إلى أجزاء ذات معنى دلالي استنادًا إلى المواضيع.
لنطبع الأجزاء لفهم أفضل لهيكل الناتج.
رائع! تم إنشاء الأجزاء بنجاح بواسطة الوكلاء في الناتج.
والآن، بعد أن جرَّبنا التجزئة الوكيلية على النص، دعونا نتابع تنفيذ نظام RAG.
في هذا الدليل، نختار الأجزاء التي أنشأها الوكلاء ونحوّلها إلى تضمينات متجهية. مخزن المتجهات مفتوح المصدر الذي يمكننا استخدامه هو Chroma DB. يمكننا الوصول بسهولة إلى وظائف Chroma من خلال حزمة langchain_chroma. لنقم بتهيئة قاعدة بيانات متجهات Chroma، ونزودها بنموذج التضمين الخاص بنا، ونضيف المستندات التي أنتجتها عملية التجزئة الوكيلة.
أنشئ قاعدة بيانات متجهات Chroma.
حوِّل كل جزء نصي إلى كائن مستند.
أضِف المستندات إلى قاعدة بيانات المتجهات.
الآن، يمكننا إنشاء قالب موجِّه للنموذج اللغوي الكبير. يضمن هذا القالب أنه يمكننا طرح أسئلة متعددة مع الحفاظ على اتساق هيكل الموجِّه. بالإضافة إلى ذلك، يمكننا دمج مخزن المتجهات كأداة استرداد، ووضع اللمسات الأخيرة على إطار عمل RAG.
باستخدام هذه الأجزاء الوكيلية في سير عمل RAG، لنبدأ استعلام المستخدم. أولًا، يمكننا توجيه النموذج بطريقة استراتيجية دون أي سياق إضافي من مخزن المتجهات الذي أنشأناه، لاختبار إذا ما كان النموذج يستخدم معرفته المدمجة أم يعتمد فعليًا على سياق RAG. باستخدام شرح التعلم الآلي من IBM، دعونا نطرح السؤال الآن.
من الواضح أن النموذج لم يتم تدريبه على معلومات تتعلق بعملية تحسين النماذج، ومن دون أدوات أو مصادر خارجية، لا يمكنه تزويدنا بالمعلومة الصحيحة. النموذج يهلوس. الآن، دعنا نحاول تقديم الاستعلام نفسه إلى سلسلة RAG مع الأجزاء الوكيلية التي أنشأناها.
رائع! استخدَم نموذج Granite بشكل صحيح أجزاء RAG الوكيلية كسياق لتزويدنا بمعلومات دقيقة حول عملية تحسين النماذج، مع الحفاظ على التماسك الدلالي.
في هذا البرنامج التعليمي، أنشأنا أجزاء صغيرة من المعلومات ذات الصلة باستخدام وكلاء الذكاء الاصطناعي في عملية التجزئة، وأنشأنا مسارًا قائمًا على التوليد المعزز بالاسترجاع (RAG).
تعمل هذه الطريقة على تحسين استرجاع المعلومات وتحسين نوافذ السياق باستخدام الذكاء الاصطناعي ومعالجة اللغة الطبيعية (NLP). وهي تبسِّط مقاطع البيانات لرفع كفاءة الاسترجاع عند استخدام النماذج اللغوية الكبيرة (LLMs) مثل نماذج GPT من OpenAI لتحقيق نتائج أفضل.
تمكين المطورين من إنشاء وكلاء الذكاء الاصطناعي ونشرهم ومراقبتهم باستخدام استوديو IBM watsonx.ai.
حقِّق إنتاجية غير مسبوقة مع مجموعة من أكثر الحلول تكاملًا في القطاع لمساعدة الأعمال على بناء وتخصيص وإدارة وكلاء ومساعدي الذكاء الاصطناعي.
تحقيق وفورات في التكاليف تزيد على 90% باستخدام نماذج Granite الصغيرة والمفتوحة المصممة لتعزيز كفاءة المطوِّرين. تقدِّم هذه النماذج الجاهزة للمؤسسات أداءً استثنائيًا في معايير الأمان، وتتفوق في مجموعة واسعة من المهام المؤسسية من الأمن الإلكتروني إلى التوليد المعزز بالاسترجاع (RAG).