كل ما تحتاج معرفته عن تقنية التلقين التلقائي لسلسلة الأفكار في النماذج اللغوية الكبيرة

كل ما تحتاج معرفته عن تقنية التلقين التلقائي لسلسلة الأفكار في النماذج اللغوية الكبيرة

مقدمة

ما هي تقنية التلقين التلقائي لسلسلة الأفكار في النماذج اللغوية الكبيرة؟ في هذه المدونة، سنقسم هذا السؤال إلى أجزاء صغيرة، بدءًا من تعريف سلسلة الأفكار (CoT)، وصولاً إلى مزايا وتطوير Auto CoT. وأخيرًا، سنناقش LLM API باعتبارها جزءًا أساسيًا من تطبيق Auto CoT. تابعونا لاستكشاف Auto CoT القوي!

ما هو التلقين بسلسلة الأفكار؟

التلقين بسلسلة الأفكار (CoT) هو تقنية تُستخدم لتعزيز قدرات التفكير للنماذج اللغوية الكبيرة (LLMs). أظهرت النماذج اللغوية الكبيرة، مثل GPT-3، أداءً مذهلاً في مجموعة متنوعة من المهام، بما في ذلك الإجابة على الأسئلة، وتوليد النصوص، وحل المشكلات.

ولكن، في العديد من مهام التفكير المعقدة، قد تواجه النماذج اللغوية الكبيرة صعوبة في تقديم حل كامل ومتسق خطوة بخطوة. يهدف التلقين بسلسلة الأفكار إلى معالجة ذلك من خلال حث النموذج اللغوي على توليد “سلسلة أفكار” — سلسلة من خطوات التفكير الوسيطة التي تؤدي إلى الإجابة النهائية.

الفكرة الأساسية وراء التلقين بسلسلة الأفكار هي حث النموذج اللغوي على التفكير في المشكلة بشكل صريح، بدلاً من مجرد تقديم إجابة مباشرة. ويتم ذلك عادةً عن طريق تضمين موجه مثل “دعنا نفكر في هذا خطوة بخطوة” أو “اشرح منطقك” إلى جانب سؤال الإدخال أو المشكلة. يمكن أن يؤدي التلقين بسلسلة الأفكار إلى مخرجات أكثر دقة وقابلة للتفسير، خاصة بالنسبة للمهام المعقدة متعددة الخطوات.

لماذا نحتاج إلى Auto CoT؟

المشكلة الرئيسية هي وجود نهجين رئيسيين للتلقين بسلسلة الأفكار (CoT)، وكلاهما له عيوب كبيرة.

قيود Zero-Shot-CoT

في هذا النهج، تقوم ببساطة بإعطاء النموذج اللغوي سؤالاً وتطلب منه أن “يفكر خطوة بخطوة” للوصول إلى الإجابة. الميزة هي أنه سهل الاستخدام للغاية — لا تحتاج إلى تقديم أي معلومات أو أمثلة إضافية. لكن الجانب السلبي الكبير هو أن التفكير خطوة بخطوة للنموذج اللغوي غالبًا ما يكون معيبًا أو يحتوي على أخطاء. لذلك قد لا تكون الإجابة النهائية موثوقة.

قيود Manual-CoT

يتضمن هذا النهج إنشاء أمثلة مفصلة يدويًا للنموذج اللغوي، توضح له كيفية تقسيم المشكلة إلى خطوات منطقية والوصول إلى الإجابة الصحيحة. من خلال تقديم هذه الأمثلة المصممة بعناية، يمكن للنموذج اللغوي استخدام تلك المعرفة لحل الأسئلة الجديدة بشكل أفضل. الفائدة هي أن تفكير النموذج اللغوي يصبح أكثر قوة ودقة عندما يمكنه الرجوع إلى الأمثلة اليدوية. لكن العيب الرئيسي هو أن إنشاء هذه الأمثلة التفصيلية يستغرق وقتًا طويلاً للغاية ويتطلب الكثير من الجهد البشري والخبرة. إنه غير قابل للتطوير على الإطلاق.

التغلب على القيود باستخدام Auto-CoT

باختصار، Zero-Shot-CoT سهل ولكنه غير موثوق، بينما Manual-CoT أكثر قوة ولكنه يتطلب عمالة كثيفة. هذا هو التحدي الرئيسي الذي يحاول المؤلفون معالجته من خلال نهجهم المقترح “Auto-CoT”.

الفكرة الأساسية لـ Auto-CoT التي يدعو إليها بعض الباحثين هي إنشاء الأمثلة التوضيحية التي يمكن للنموذج اللغوي استخدامها تلقائيًا، دون الحاجة إلى جهد بشري يدوي. يمكن أن يجمع هذا بين فوائد كلا النهجين الحاليين — تفكير موثوق، ولكن بطريقة أكثر قابلية للتطوير.

كيف طور الناس Auto CoT؟

في هذا القسم، سنستكشف تفاصيل الورقة البحثية بعنوان “التلقين التلقائي لسلسلة الأفكار في النماذج اللغوية الكبيرة” بقلم Zhuosheng Zhang و Aston Zhang و Mu Li و Alex Smola التي نُشرت في عام 2022. إذا كنت غير مهتم بتفاصيل البحث، يمكنك التخطي إلى القسم التالي.

النهج المقترح

للتغلب على هذه القيود في نهج CoT الحالية، يقترح المؤلفون نموذج “Auto-CoT” الذي يقوم تلقائيًا ببناء العروض التوضيحية للتلقين بسلسلة الأفكار.

الخطوات الرئيسية هي:

  1. استخدام النماذج اللغوية الكبيرة مع موجه “دعنا نفكر خطوة بخطوة” لتوليد سلاسل التفكير لأسئلة توضيحية.
  2. إدراك أن سلاسل التفكير المولدة قد تحتوي على أخطاء، يركز المؤلفون على ضمان التنوع في أسئلة العروض التوضيحية المختارة.
  3. يطور المؤلفون نهجًا من خطوتين لبناء العروض التوضيحية تلقائيًا:
    أ. تقسيم أسئلة مجموعة البيانات إلى مجموعات بناءً على التشابه.
    ب. اختيار سؤال تمثيلي من كل مجموعة وتوليد سلسلة التفكير الخاصة به باستخدام Zero-Shot-CoT.

التقييم

يقيم المؤلفون نهج Auto-CoT باستخدام GPT-3 على عشر مهام تفكير معيارية، بما في ذلك التفكير الحسابي والمنطقي والرمزي. يقارنون الأداء مع نماذج Zero-Shot-CoT و Manual-CoT.

النتائج الرئيسية

تظهر النتائج أن نهج Auto-CoT يتطابق باستمرار مع أداء نموذج Manual-CoT أو يتجاوزه، والذي يتطلب تصميمًا يدويًا للعروض التوضيحية. يوضح هذا أن النماذج اللغوية الكبيرة يمكنها أداء تفكير فعال لسلسلة الأفكار دون الحاجة إلى جهود يدوية.

كيف يعمل Auto CoT؟

الفكرة الرئيسية وراء Auto-CoT هي إنشاء الأمثلة التوضيحية تلقائيًا التي يمكن للنموذج اللغوي استخدامها للتلقين بسلسلة الأفكار، بدلاً من الاعتماد على أمثلة مصممة يدويًا.

إليك كيفية عمل نهج Auto-CoT، خطوة بخطوة:

الخطوة 1 تجميع الأسئلة:

  • الخطوة الأولى هي أخذ مجموعة أسئلة الاختبار (الأسئلة التي سيتم تقييم النموذج اللغوي عليها وأسئلة موجودة مسبقًا من مجموعات البيانات المعيارية) وتجميعها في عدد قليل من المجموعات بناءً على تشابهها.
  • يساعد هذا التجميع في ضمان أن الأسئلة التوضيحية تغطي أنواعًا متنوعة من المشكلات، بدلاً من أن تكون متشابهة جدًا.

الخطوة 2 إنشاء العروض التوضيحية:

  • لكل مجموعة من الأسئلة، يختار Auto-CoT سؤالًا تمثيليًا من تلك المجموعة.
  • ثم يستخدم موجه “دعنا نفكر خطوة بخطوة” ليطلب من النموذج اللغوي توليد سلسلة تفكير لهذا السؤال التمثيلي.
  • تصبح سلسلة التفكير هذه، التي تتكون من الخطوات الوسيطة والإجابة النهائية، هي المثال التوضيحي لتلك المجموعة.

الخطوة 3 تلقين النموذج اللغوي:

  • عند تقييم النموذج اللغوي على سؤال اختبار جديد، يوفر Auto-CoT للنموذج اللغوي مجموعة الأمثلة التوضيحية المولدة تلقائيًا.
  • يمكن للنموذج اللغوي بعد ذلك استخدام هذه العروض التوضيحية لتوجيه عملية التفكير خطوة بخطوة الخاصة به للوصول إلى إجابة سؤال الاختبار.

كيف يمكنني استخدام Auto CoT؟

المتطلبات:

  • إصدار Python 3.8 أو أحدث

التثبيت:

  • قم بتثبيت حزمتي PyTorch و torchtext المطلوبتين باستخدام الإصدارات المحددة ورابط PyPI:
    pip install torch==1.8.2+cu111 torchtext==0.9.2 -fhttps://download.pytorch.org/whl/lts/1.8/torch_lts.html
  • قم بتثبيت المتطلبات الأخرى عن طريق تشغيل pip install -r requirements.txt

مجموعات البيانات:

قم بتنزيل مجموعات البيانات من مستودعات GitHub التالية:

بدء سريع:

راجع دفتر try_cot.ipynb للحصول على دليل بدء سريع.

التعليمات:

بناء العروض التوضيحية:

  • قم بتشغيل الأمر التالي لبناء عروض توضيحية لمهمة “multiarith”:
    python run_demo.py --task multiarith --pred_file log/multiarith_zero_shot_cot.log --demo_save_dir demos/multiarith

تشغيل الاستدلال:

  • قم بتشغيل الأمر التالي لإجراء الاستدلال على مجموعة بيانات “multiarith”:
    python run_inference.py --dataset multiarith --demo_path demos/multiarith --output_dir experiment/multiarith

الاستشهاد بـ Auto-CoT:

إذا استخدمت Auto-CoT في عملك، يرجى الاستشهاد بالورقة التالية:

@inproceedings{zhang2023automatic,
title={Automatic Chain of Thought Prompting in Large Language Models},
author={Zhang, Zhuosheng and Zhang, Aston and Li, Mu and Smola, Alex},
booktitle={The Eleventh International Conference on Learning Representations (ICLR 2023)},
year={2023}
}

LLM API كجزء أساسي من تطبيق Auto-CoT

ما هي فوائد الجمع بين Auto-CoT و LLM APIs؟

  1. الوصول إلى نماذج لغوية قوية:
  • يعتمد Auto-CoT على قدرات النماذج اللغوية الكبيرة لتوليد سلاسل تفكير خطوة بخطوة وإنتاج مخرجات دقيقة.
  • من خلال دمج واجهات برمجة تطبيقات LLM، يمكن للباحثين والمطورين الاستفادة من أحدث وأقوى النماذج اللغوية، مثل GPT-3 و Megatron-LLM أو InstructGPT، لتشغيل نظام Auto-CoT.

2. المرونة والتخصيص:

  • قد تختلف النماذج اللغوية في نقاط قوتها وتحيزاتها وقدراتها. يسمح دمج واجهات برمجة تطبيقات LLM للمستخدمين بتجربة ومقارنة أداء النماذج المختلفة لمهامهم وتطبيقاتهم المحددة.
  • تتيح هذه المرونة للباحثين ضبط وتخصيص النماذج اللغوية وفقًا لاحتياجاتهم، مما يحسن الفعالية الإجمالية لنظام Auto-CoT.

3. قابلية التوسع والنشر:

  • غالبًا ما توفر واجهات برمجة تطبيقات LLM بنية تحتية قابلة للتوسع وموثوقة لخدمة ونشر النماذج اللغوية، مما يسمح لأنظمة Auto-CoT بالتعامل مع أعباء العمل المتزايدة وخدمة قاعدة مستخدمين أكبر.
  • من خلال الاستفادة من قدرات التوسع لواجهات برمجة تطبيقات LLM، يمكن للباحثين والمطورين نشر وصيانة نظام Auto-CoT بسهولة أكبر في بيئات الإنتاج.

4. تحسينات النموذج المستمرة:

  • تتطور النماذج اللغوية بسرعة، مع إصدار إصدارات جديدة ومحسنة بشكل متكرر. يتيح دمج واجهات برمجة تطبيقات LLM لأنظمة Auto-CoT الاستفادة من هذه التطورات والبقاء على اطلاع بأحدث قدرات النماذج اللغوية.
  • يضمن ذلك استمرار نظام Auto-CoT في تقديم نتائج عالية الجودة والحفاظ على قدرته التنافسية مع تقدم مجال النماذج اللغوية.

كيف يمكنني دمج LLM API في مشروعي؟

Novita AI توفر للمستخدمين واجهة برمجة تطبيقات LLM مع العديد من النماذج للاستدعاء، بما في ذلك llama-3–8b و llama-3–70b الصادرة حديثًا. يمكنك تجربة نماذج مختلفة ومقارنة أدائها على الملعب (Playground) مجانًا قبل دمج واجهة برمجة تطبيقات LLM الخاصة بنا.

علاوة على ذلك، لتلبية الاحتياجات المخصصة، يمكنك ضبط المعلمات الرئيسية مثل temperature (التحكم في العشوائية والاستكشاف لمخرجات النموذج)، و top_p (بديل لأخذ العينات باستخدام درجة الحرارة، يسمى أخذ العينات النووية، حيث يأخذ النموذج في الاعتبار نتائج الرموز ذات الكتلة الاحتمالية top_p)، و presence_penalty (تشجيع النموذج على إنتاج نص مختلف عما أنشأه من قبل)، و maximum tokens (تعيين الحد الأقصى لطول المخرجات المولدة للنموذج) لتحسين مخرجات النموذج لمتطلبات تطبيقك المحددة. يسمح لك هذا المستوى من التخصيص بالجمع الكامل بين قدرات LLM وأنظمة Auto-CoT الخاصة بك.

يمكنك زيارة موقعنا الإلكتروني للحصول على مزيد من المعلومات حول LLM API، بما في ذلك إرشادات الكود الخاصة بالدمج والتسعير والميزات الأخرى.

الخاتمة

في هذه المدونة، استكشفنا مفهوم التلقين بسلسلة الأفكار (CoT) والحاجة إلى نهج آلي يسمى Auto-CoT. على الرغم من أن طرق CoT الحالية لها قيود، فإن نهج Auto-CoT يهدف إلى إنشاء أمثلة توضيحية تلقائيًا لتوجيه النماذج اللغوية في التفكير خطوة بخطوة، دون الحاجة إلى جهد يدوي. ناقشنا الخطوات الرئيسية لـ Auto-CoT، بما في ذلك تجميع الأسئلة وإنشاء العروض التوضيحية. أخيرًا، سلطنا الضوء على كيفية دمج واجهات برمجة تطبيقات LLM يمكن أن يوفر نماذج لغوية قوية ومرنة لتشغيل نظام Auto-CoT، مما يؤدي إلى تحسين الأداء وقابلية التوسع والتحسينات المستمرة للنموذج. بشكل عام، يمثل Auto-CoT تطورًا مثيرًا في تعزيز قدرات التفكير للنماذج اللغوية الكبيرة.

Novita AI، المنصة الشاملة للإبداع غير المحدود التي تمنحك الوصول إلى أكثر من 100 واجهة برمجة تطبيقات. من إنشاء الصور ومعالجة اللغة إلى تحسين الصوت ومعالجة الفيديو، بنظام الدفع حسب الاستخدام الرخيص، تحررك من متاعب صيانة GPU أثناء بناء منتجاتك الخاصة. جربها مجانًا.