ذكاء البيانات التوليدية

التدريب الموزع والتوسع الفعال باستخدام نموذج Amazon SageMaker Parallel ومكتبات البيانات المتوازية | خدمات الويب الأمازون

التاريخ:

لقد كان هناك تقدم هائل في مجال التعلم العميق الموزع لنماذج اللغات الكبيرة (LLMs)، خاصة بعد إصدار ChatGPT في ديسمبر 2022. وتستمر نماذج LLM في النمو من حيث الحجم بمليارات أو حتى تريليونات من المعلمات، وغالبًا ما لا تفعل ذلك. تتناسب مع جهاز تسريع واحد مثل GPU أو حتى عقدة واحدة مثل ml.p5.32xlarge بسبب قيود الذاكرة. غالبًا ما يتعين على العملاء الذين يقومون بتدريب LLMs توزيع عبء العمل الخاص بهم عبر مئات أو حتى الآلاف من وحدات معالجة الرسومات. ولا يزال تمكين التدريب على هذا النطاق يمثل تحديًا في التدريب الموزع، كما يمثل التدريب بكفاءة في مثل هذا النظام الكبير مشكلة أخرى لا تقل أهمية. على مدى السنوات الماضية، قدم مجتمع التدريب الموزع التوازي ثلاثي الأبعاد (توازي البيانات، وتوازي خطوط الأنابيب، وتوازي الموتر) وتقنيات أخرى (مثل توازي التسلسل وتوازي الخبراء) لمواجهة مثل هذه التحديات.

في ديسمبر 2023، أعلنت أمازون عن إطلاق نموذج المكتبة الموازية SageMaker 2.0 (SMP)، الذي يحقق أحدث كفاءة في التدريب على النماذج الكبيرة، جنبًا إلى جنب مع مكتبة SageMaker الموزعة لتوازي البيانات (سمدب). يعد هذا الإصدار تحديثًا مهمًا من 1.x: تم الآن دمج SMP مع PyTorch مفتوح المصدر بيانات مجزأة بالكامل بالتوازي (FSDP) APIs، والتي تتيح لك استخدام واجهة مألوفة عند تدريب النماذج الكبيرة، وهي متوافقة مع محرك المحولات (TE)، وفتح تقنيات التوازي الموتر إلى جانب FSDP لأول مرة. لمعرفة المزيد عن الإصدار، راجع تعمل المكتبة المتوازية لنموذج Amazon SageMaker الآن على تسريع أعباء عمل PyTorch FSDP بنسبة تصل إلى 20%.

في هذا المنشور، نستكشف فوائد الأداء الأمازون SageMaker (بما في ذلك SMP وSMDDP)، وكيف يمكنك استخدام المكتبة لتدريب النماذج الكبيرة بكفاءة على SageMaker. نعرض أداء SageMaker من خلال المعايير على مجموعات ml.p4d.24xlarge لما يصل إلى 128 مثيلًا، ودقة FSDP المختلطة مع bfloat16 لنموذج Llama 2. نبدأ بعرض توضيحي لكفاءة القياس شبه الخطي لـ SageMaker، متبوعًا بتحليل المساهمات من كل ميزة لتحقيق الإنتاجية المثلى، وننتهي بتدريب فعال بأطوال تسلسلية مختلفة تصل إلى 32,768 من خلال توازي الموتر.

القياس شبه الخطي باستخدام SageMaker

لتقليل وقت التدريب الإجمالي لنماذج LLM، يعد الحفاظ على الإنتاجية العالية عند التوسع في مجموعات كبيرة (الآلاف من وحدات معالجة الرسومات) أمرًا بالغ الأهمية نظرًا لحجم الاتصالات بين العقد. في هذا المنشور، نعرض كفاءات القياس القوية وشبه الخطية (من خلال تغيير عدد وحدات معالجة الرسومات لحجم إجمالي ثابت للمشكلة) في مثيلات p4d التي تستدعي كلاً من SMP وSMDDP.

في هذا القسم، نعرض أداء القياس شبه الخطي لـ SMP. نقوم هنا بتدريب نماذج Llama 2 بأحجام مختلفة (معلمات 7B و13B و70B) باستخدام طول تسلسل ثابت يبلغ 4,096، وواجهة SMDDP الخلفية للاتصال الجماعي، وتمكين TE، وحجم دفعة عالمي يبلغ 4 ملايين، مع 16 إلى 128 عقدة p4d . يلخص الجدول التالي التكوين الأمثل والأداء التدريبي (نموذج TFLOPs في الثانية).

حجم النموذج عدد العقد تفلوبس* الحزب الديمقراطي الاجتماعي* ن* تفريغ* كفاءة القياس
7B 16 136.76 32 1 N 100.0%
32 132.65 64 1 N 97.0%
64 125.31 64 1 N 91.6%
128 115.01 64 1 N 84.1%
13B 16 141.43 32 1 Y 100.0%
32 139.46 256 1 N 98.6%
64 132.17 128 1 N 93.5%
128 120.75 128 1 N 85.4%
70B 32 154.33 256 1 Y 100.0%
64 149.60 256 1 N 96.9%
128 136.52 64 2 N 88.5%

*في حجم النموذج المحدد وطول التسلسل وعدد العقد، نعرض الإنتاجية والتكوينات المثالية عالميًا بعد استكشاف مجموعات تفريغ sdp وtp وتنشيط مختلفة.

يلخص الجدول السابق أرقام الإنتاجية المثالية الخاضعة لدرجة توازي البيانات المجزأة (sdp) (عادةً ما تستخدم تقسيم FSDP المختلط بدلاً من التجزئة الكاملة، مع مزيد من التفاصيل في القسم التالي)، ودرجة الموتر المتوازي (tp)، وتغييرات قيمة تفريغ التنشيط، مما يدل على تحجيم شبه خطي لSMP مع SMDDP. على سبيل المثال، نظرًا لحجم نموذج Llama 2 7B وطول التسلسل 4,096، فإنه يحقق بشكل عام كفاءات توسيع تبلغ 97.0% و91.6% و84.1% (بالنسبة إلى 16 عقدة) عند 32 و64 و128 عقدة على التوالي. تكون كفاءات القياس مستقرة عبر أحجام النماذج المختلفة وتزداد قليلاً مع زيادة حجم النموذج.

يُظهر SMP وSMDDP أيضًا كفاءات توسيع مماثلة لأطوال التسلسل الأخرى مثل 2,048 و8,192.

أداء المكتبة المتوازية لنموذج SageMaker 2.0: Llama 2 70B

استمرت أحجام النماذج في النمو خلال السنوات الماضية، إلى جانب تحديثات الأداء الحديثة المتكررة في مجتمع LLM. في هذا القسم، نوضح الأداء في SageMaker لنموذج Llama 2 باستخدام حجم نموذج ثابت 70B، وطول تسلسل يبلغ 4,096، وحجم دفعة عالمي يبلغ 4 ملايين. للمقارنة مع التكوين الأمثل عالميًا والإنتاجية للجدول السابق (مع الواجهة الخلفية SMDDP، عادةً تقسيم FSDP المختلط وTE)، يمتد الجدول التالي إلى الإنتاجية المثلى الأخرى (ربما مع توازي الموتر) مع مواصفات إضافية على الواجهة الخلفية الموزعة (NCCL وSMDDP) ، استراتيجيات تقسيم FSDP (التقسيم الكامل والتجزئة الهجين)، وتمكين TE أم لا (افتراضي).

حجم النموذج عدد العقد TFLOPS تكوين TFLOPs رقم 3 تحسين TFLOPs على خط الأساس
. . المشاركة الكاملة لـ NCCL: #0 SMDDP المشاركة الكاملة: #1 تقسيم SMDDP المختلط: #2 SMDDP الهجين مع TE: #3 الحزب الديمقراطي الاجتماعي* ن* تفريغ* #0 → #1 #1 → #2 #2 → #3 #0 → #3
70B 32 150.82 149.90 150.05 154.33 256 1 Y -0.6٪ 0.1% 2.9% 2.3%
64 144.38 144.38 145.42 149.60 256 1 N 0.0% 0.7% 2.9% 3.6%
128 68.53 103.06 130.66 136.52 64 2 N 50.4% 26.8% 4.5% 99.2%

*في حجم النموذج المحدد وطول التسلسل وعدد العقد، نعرض الإنتاجية والتكوين الأمثل عالميًا بعد استكشاف مجموعات تفريغ sdp وtp وتنشيط مختلفة.

يدعم الإصدار الأخير من SMP وSMDDP ميزات متعددة بما في ذلك PyTorch FSDP الأصلي، والتقطيع الهجين الموسع والأكثر مرونة، وتكامل محرك المحولات، والتوازي الموتر، والتشغيل الجماعي المحسن. لفهم كيفية تحقيق SageMaker لتدريب موزع فعال لحاملي LLM بشكل أفضل، نستكشف المساهمات الإضافية من SMDDP وSMP التالية الميزات الأساسية:

  • تحسين SMDDP عبر NCCL مع مشاركة FSDP الكاملة
  • استبدال تجزئة FSDP الكاملة بالتقسيم المختلط، مما يقلل من تكلفة الاتصال لتحسين الإنتاجية
  • تعزيز إضافي للإنتاجية باستخدام TE، حتى عند تعطيل توازي الموتر
  • في إعدادات الموارد المنخفضة، قد يكون إلغاء تحميل التنشيط قادرًا على تمكين التدريب الذي قد يكون غير ممكن أو بطيئًا جدًا بسبب ارتفاع ضغط الذاكرة

مشاركة FSDP الكاملة: تحسين SMDDP عبر NCCL

كما هو موضح في الجدول السابق، عندما يتم تقسيم النماذج بالكامل مع FSDP، على الرغم من أن إنتاجية NCCL (TFLOPs #0) وSMDDP (TFLOPs #1) قابلة للمقارنة عند 32 أو 64 عقدة، إلا أن هناك تحسنًا كبيرًا بنسبة 50.4% من NCCL إلى SMDDP عند 128 عقدة.

في أحجام النماذج الأصغر، نلاحظ تحسينات متسقة وهامة مع SMDDP عبر NCCL، بدءًا من أحجام المجموعات الأصغر، لأن SMDDP قادر على تخفيف عنق الزجاجة في الاتصال بشكل فعال.

تقسيم FSDP المختلط لتقليل تكلفة الاتصال

في SMP 1.0، أطلقنا توازي البيانات المجزأة، وهي تقنية تدريب موزعة مدعومة من أمازون داخليًا ميكس تكنولوجيا. في SMP 2.0، نقدم تقنية SMP الهجينة، وهي تقنية تقسيم هجينة قابلة للتوسيع وأكثر مرونة تسمح بتقسيم النماذج بين مجموعة فرعية من وحدات معالجة الرسومات، بدلاً من جميع وحدات معالجة الرسومات التدريبية، وهذا هو الحال بالنسبة للتقسيم الكامل لـ FSDP. إنه مفيد للنماذج متوسطة الحجم التي لا تحتاج إلى التقسيم عبر المجموعة بأكملها من أجل تلبية قيود الذاكرة لكل وحدة معالجة رسومات. يؤدي هذا إلى وجود مجموعات تحتوي على أكثر من نموذج متماثل واحد وتتواصل كل وحدة معالجة رسومات مع عدد أقل من أقرانها في وقت التشغيل.

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

يوضح الشكل التالي اعتماد الإنتاجية على sdp عند tp = 1 من أجل البساطة. على الرغم من أنها ليست بالضرورة نفس قيمة tp المثالية للتقسيم الكامل لـ NCCL أو SMDDP في الجدول السابق، إلا أن الأرقام متقاربة تمامًا. إنه يتحقق بوضوح من صحة قيمة التحول من التقسيم الكامل إلى التقسيم المختلط بحجم مجموعة كبير يبلغ 128 عقدة، وهو ما ينطبق على كل من NCCL وSMDDP. بالنسبة لأحجام النماذج الأصغر، تبدأ التحسينات المهمة في التقسيم المختلط بأحجام مجموعات أصغر، ويستمر الفرق في التزايد مع حجم المجموعة.

تحسينات مع TE

تم تصميم TE لتسريع تدريب LLM على وحدات معالجة الرسومات NVIDIA. على الرغم من عدم استخدام FP8 لأنه غير مدعوم في مثيلات p4d، ما زلنا نرى تسريعًا كبيرًا مع TE على p4d.

علاوة على MiCS المدربة مع الواجهة الخلفية SMDDP، تقدم TE تعزيزًا ثابتًا للإنتاجية عبر جميع أحجام المجموعة (الاستثناء الوحيد هو التجزئة الكاملة عند 128 عقدة)، حتى عند تعطيل توازي الموتر (درجة توازي الموتر هي 1).

بالنسبة لأحجام النماذج الأصغر أو أطوال التسلسل المختلفة، يكون تعزيز TE مستقرًا وغير تافه، في حدود 3 إلى 7.6% تقريبًا.

تفريغ التنشيط في إعدادات الموارد المنخفضة

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

على سبيل المثال، كما رأينا سابقًا، على الرغم من أن Llama 2 بحجم النموذج 13B وطول التسلسل 4,096 قادر على التدريب بشكل مثالي مع ما لا يقل عن 32 عقدة مع فحص التنشيط وبدون تفريغ التنشيط، فإنه يحقق أفضل إنتاجية مع تفريغ التنشيط عندما يقتصر على 16 العقد.

تمكين التدريب بتسلسلات طويلة: توازي موتر SMP

إن الأطوال المتسلسلة الأطول مطلوبة للمحادثات الطويلة والسياق، وتحظى باهتمام أكبر في مجتمع LLM. ولذلك، فإننا نورد مختلف الإنتاجية المتسلسلة الطويلة في الجدول التالي. يعرض الجدول الإنتاجية المثالية لتدريب Llama 2 على SageMaker، بأطوال تسلسلية مختلفة من 2,048 إلى 32,768. عند طول التسلسل 32,768، يكون تدريب FSDP الأصلي غير ممكن مع 32 عقدة بحجم دفعة عالمي يبلغ 4 ملايين.

. . . TFLOPS
حجم النموذج طول التسلسل عدد العقد FSDP الأصلي وNCCL SMP وSMDDP تحسين SMP
7B 2048 32 129.25 138.17 6.9%
4096 32 124.38 132.65 6.6%
8192 32 115.25 123.11 6.8%
16384 32 100.73 109.11 8.3%
32768 32 NA 82.87 .
13B 2048 32 137.75 144.28 4.7%
4096 32 133.30 139.46 4.6%
8192 32 125.04 130.08 4.0%
16384 32 111.58 117.01 4.9%
32768 32 NA 92.38 .
*: الأعلى . . . . 8.3%
*: الوسيط . . . . 5.8%

عندما يكون حجم المجموعة كبيرًا ويعطى حجم دفعة عالمي ثابت، قد يكون بعض التدريب على النماذج غير ممكن باستخدام PyTorch FSDP الأصلي، حيث يفتقر إلى خط أنابيب مدمج أو دعم توازي الموتر. في الجدول السابق، نظرًا لحجم الدُفعة العالمي البالغ 4 ملايين و32 عقدة وطول التسلسل 32,768، فإن حجم الدُفعة الفعال لكل وحدة معالجة رسومات هو 0.5 (على سبيل المثال، tp = 2 مع حجم الدُفعة 1)، والذي قد يكون غير ممكن دون تقديم التوازي الموتر.

وفي الختام

في هذا المنشور، أظهرنا تدريبًا فعالاً على LLM باستخدام SMP وSMDDP على مثيلات p4d، وإسناد المساهمات إلى ميزات رئيسية متعددة، مثل تحسين SMDDP عبر NCCL، والتقسيم الهجين المرن لـ FSDP بدلاً من التقسيم الكامل، وتكامل TE، وتمكين توازي الموتر لصالح أطوال متتالية طويلة. بعد اختباره على نطاق واسع من الإعدادات باستخدام نماذج وأحجام نماذج وأطوال تسلسلية مختلفة، فإنه يُظهر كفاءات قوية للقياس شبه الخطي، تصل إلى 128 مثيل p4d على SageMaker. باختصار، لا يزال SageMaker أداة قوية للباحثين والممارسين في LLM.

لمعرفة المزيد ، يرجى الرجوع إلى مكتبة التوازي النموذجي SageMaker v2أو اتصل بفريق SMP على [البريد الإلكتروني محمي].

شكر وتقدير

نود أن نشكر روبرت فان دوسن، وبن سنايدر، وجوتام كومار، ولويس كوينتيلا على تعليقاتهم ومناقشاتهم البناءة.


حول المؤلف

شينلي شيلا ليو هو SDE في Amazon SageMaker. تستمتع في أوقات فراغها بالقراءة والرياضة في الهواء الطلق.

سوهيت كودجولي هو مهندس تطوير برمجيات لدى مجموعة AWS للذكاء الاصطناعي ويعمل على أطر التعلم العميق. يستمتع في أوقات فراغه بالمشي لمسافات طويلة والسفر والطهي.

فيكتور تشو هو مهندس برمجيات في التعلم العميق الموزع في Amazon Web Services. يمكن العثور عليه وهو يستمتع بالمشي لمسافات طويلة وألعاب الطاولة حول منطقة خليج سان فرانسيسكو.

ديريا كافدار يعمل كمهندس برمجيات في AWS. تشمل اهتماماتها التعلم العميق وتحسين التدريب الموزع.

تنغ شو هو مهندس تطوير برمجيات في مجموعة التدريب الموزع في AWS AI. يستمتع بالقراءة.

بقعة_صورة

أحدث المعلومات الاستخباراتية

بقعة_صورة

الدردشة معنا

أهلاً! كيف يمكنني مساعدك؟