المدوَّنة العربية
استخدم ميّزة التوجيه الذكي للأوامر في Amazon Bedrock لتحسين التكلفة وزمن الاستجابة
في ديسمبر 2024، أعلنا عن النسخة التجريبية لميّزة التوجيه الذكي للأوامر في Amazon Bedrock، والتي توفر نقطة نهاية بدون خادم (Serverless Endpoint) لتوجيه الطلبات بكفاءة بين نماذج الأساس المختلفة ضمن نفس العائلة. تقوم هذه الميّزة بالتنبؤ ديناميكيًا بجودة الاستجابة من كل نموذج وتوجيه الطلب إلى النموذج الأنسب بناءً على التكلفة وجودة الاستجابة، كما هو موضح في الشكل التالي.
اليوم، يسعدنا الإعلان عن التوافر العام لميّزة التوجيه الذكي للأوامر في Amazon Bedrock . وخلال الأشهر الماضية، أجرينا العديد من التحسينات بناءً على ملاحظات العملاء والاختبارات الداخلية المكثفة. هدفنا هو تمكينك من إعداد توجيه تلقائي ومحسّن بين النماذج اللغوية الكبيرة (LLMs) من خلال فهم عميق لسلوك النماذج داخل كل عائلة، باستخدام أحدث الأساليب في تدريب وحدات التوجيه لمجموعات متنوعة من النماذج والمهام والأوامر.
في هذه المقالة، سنستعرض أبرز نتائج اختباراتنا، وكيفية البدء باستخدام الميّزة، بالإضافة إلى بعض الملاحظات وأفضل الممارسات. نوصي بدمج ميّزة التوجيه الذكي في تطبيقاتك الحالية أو المستقبلية المعتمدة على الذكاء الاصطناعي المولّد.
النقاط البارزة والتحسينات
يمكنك اليوم استخدام ميزة التوجيه الذكي للأوامر في Amazon Bedrock إما عبر الموجّهات الافتراضية التي توفرها الخدمة، أو من خلال إعداد موجّهات خاصة بك لضبط الأداء بشكل خطي بين نموذجين مرشحين من نفس عائلة النماذج اللغوية الكبيرة، استنادًا إلى فرق جودة الاستجابة بينهما. توفر Amazon Bedrock موجّهات افتراضية مُعدة مسبقًا – وهي أنظمة توجيه تقوم بإرسال الأوامر إلى النموذج الأعلى أداءً عند الحاجة، مع توجيه الأوامر الأبسط إلى النموذج الأقل تكلفة – وذلك لكل عائلة من عائلات النماذج. تأتي هذه الموجّهات بإعدادات جاهزة وتعمل مباشرة مع نماذج الأساس المحددة، مما يوفر حلاً سهلاً ومباشرًا دون الحاجة إلى إعدادات إضافية. بالنسبة للعملاء الذين اختبروا الميّزة خلال فترة التجربه (شكرًا لكم!)، كانت النماذج المتاحة تنتمي إلى عائلتي Anthropic وMeta. أما اليوم، فيمكنك الاختيار من بين نماذج إضافية ضمن عائلات Amazon Nova وAnthropic وMeta، بما في ذلك:
- عائلة Claude من Anthropic مثل: Haiku، Sonnet3.5 v1، Haiku 3.5، Sonnet 3.5 v2
- عائلة Llama مثل: Llama 3.1 8b، 70b، 3.2 11B، 90B و 3.3 70B
- عائلة Nova مثل: Nova Pro و Nova lite
كما يمكنك إعداد موجّهات أوامر مخصصة حسب احتياجاتك وتفضيلاتك الخاصة. هذا الخيار ملائم أكثر عندما تحتاج إلى تحكم أدق في آلية التوجيه والنماذج المستخدمة. في الإصدار العام، يمكنك إنشاء موجه خاص بك عن طريق اختيار نموذجين من نفس العائلة، ثم تحديد فرق جودة الاستجابة الذي سيُستخدم كأساس لعملية التوجيه.
قد يؤدي إدراج مكونات إضافية قبل إرسال الأمر الأصلي إلى النموذج المختار إلى زيادة في الحمل (Overhead). وقد عملنا على تقليل هذا الحمل بنسبة تتجاوز 20٪ ليصل إلى نحو 85 مللي ثانية (P90). ونظرًا لأن وحدة التوجيه تُفضّل استدعاء النموذج الأقل تكلفة مع الحفاظ على نفس مستوى الدقة الأساسي في تنفيذ المهمة، يمكنك أن تتوقع تحقيق فائدة إجمالية من حيث تقليل كلٍّ من زمن الاستجابة والتكلفة، مقارنةً بإرسال جميع الأوامر دائمًا إلى النموذج الأكبر أو الأعلى تكلفة، وذلك على الرغم من وجود الحمل الإضافي. وسيتم مناقشة هذا الموضوع بشكل أوسع في قسم نتائج القياس أدناه.
قمنا بإجراء مجموعة من الاختبارات الداخلية باستخدام بيانات خاصة وعامة لتقييم مؤشرات أداء ميّزة التوجيه الذكي للأوامر في Amazon Bedrock. في البداية، استخدمنا مقياس متوسط تحسّن جودة الاستجابة تحت قيود التكلفة (ARQGC)، وهو مقياس أداء طبيعي (يتراوح من 0 إلى 1)، و يُستخدم لتقييم جودة نظام التوجيه ضمن قيود تكلفة مختلفة ، بالاعتماد على نموذج مكافآت. حيث تشير القيمة 0.5 إلى توجيه عشوائي، بينما تمثل القيمة 1 الأداء الأمثل في حالة التوجيه المثالي. كما قمنا بقياس نسبة التوفير في التكلفة الناتجة عن استخدام التوجيه الذكي، مقارنةً بالاعتماد الدائم على النموذج الأكبر ضمن نفس العائلة. كذلك قمنا بتقدير فائدة تقليل التأخير بناءً على متوسط الزمن المسجل حتى ظهور أول رمز (TTFT)، وذلك لتوضيح الفوائد بشكل شامل وتقديمها في الجدول التالي.
عائلة النموذج | الأداء العام لوحدة التوجيه | الأداء عند ضبط وحدة التوجيه لمضاهاة أداء النموذج الأقوى | |
متوسط ARQGC | نسبة التوفير في التكلفة (%) | فائدة تقليل التأخير (%) | |
Nova | 0.75 | 35% | 9.98% |
Anthropic | 0.86 | 56% | 6.15% |
Meta | 0.78 | 16% | 9.38% |
كيفية قراءة هذا الجدول؟
من المهم التوقف قليلًا لفهم هذه المؤشرات. أولًا، النتائج المعروضة في الجدول أعلاه تهدف فقط إلى المقارنة مع التوجيه العشوائي داخل نفس عائلة النماذج (أي التحسّن في قيمة ARQGC مقارنة بالقيمة 0.5)، ولا يُقصد بها المقارنة بين العائلات المختلفة. ثانيًا، هذه النتائج مرتبطة فقط بأداء التوجيه داخل عائلة معينة، وتختلف عن اختبارات الأداء المعروفة التي تُستخدم للمقارنة بين النماذج المختلفة. ثالثًا، نظرًا لأن التكاليف والأسعار الفعلية تتغير باستمرار وتعتمد على عدد الرموز المدخلة والمخرجة، فإن المقارنة المباشرة للتكلفة الحقيقية قد تكون صعبة. ولحل هذه الإشكالية، قمنا بتعريف مقياس التوفير في التكلفة على أنه الحد الأقصى للتوفير مقارنة بتكلفة استخدام النموذج الأقوى في العائلة، لتحقيق مستوى معيّن من جودة الاستجابة. على سبيل المثال، يُظهر الجدول أن استخدام وحدة توجيه ضمن عائلة Nova يحقق متوسط توفير بنسبة 35% مقارنة باستخدام نموذج Nova Pro لجميع الأوامر بدون توجيه.
يمكنك أن تتوقع مستويات متفاوتة من الفائدة اعتمادًا على حالة الاستخدام الخاصة بك. فعلى سبيل المثال، في أحد اختباراتنا الداخلية التي شملت مئات الأوامر، تمكّنا من تحقيق توفير بنسبة 60% في التكلفة باستخدام ميّزة التوجيه الذكي للأوامر في Amazon Bedrock مع عائلة نماذج Anthropic ، مع الحفاظ على نفس جودة الاستجابة التي يقدمها نموذج Claude Sonnet 3.5 V2 .
ما هو فرق جودة الاستجابة؟
يقيس فرق جودة الاستجابة التباين بين استجابات النموذج الاحتياطي والنماذج الأخرى. تشير القيمة الأصغر إلى أن الاستجابات متشابهة، بينما تشير القيمة الأعلى إلى وجود اختلاف كبير في الاستجابات بين النموذج الاحتياطي والنماذج الأخرى. يعتبر اختيار النموذج الذي تستخدمه كنموذج احتياطي أمرًا مهمًا. عند ضبط فرق جودة الاستجابة على 10٪ باستخدام نموذج Claude 3 Sonnet من Anthropic كنموذج احتياطي، يقوم الموجه باختيار نموذج بشكل ديناميكي لتحقيق أداء إجمالي مع انخفاض بنسبة 10٪ في جودة الاستجابة من Claude 3 Sonnet. وعلى العكس من ذلك، إذا استخدمت نموذجًا أقل تكلفة مثل Claude 3 Haiku كنموذج احتياطي، فسيقوم الموجه باختيار نموذج ديناميكيًا لتحقيق أداء إجمالي مع زيادة تتجاوز 10٪ من Claude 3 Haiku.
في الشكل التالي، يمكنك أن ترى أن فرق جودة الاستجابة تم ضبطه على 10٪ مع استخدام Haiku كنموذج احتياطي. إذا كان العملاء يرغبون في استكشاف إعدادات مثالية تتجاوز الإعدادات الافتراضية الموضحة سابقًا، يمكنهم تجربة حدود مختلفة لفرق جودة الاستجابة، وتحليل جودة الاستجابة والتكلفة وزمن الاستجابة الخاصة بالموجّه باستخدام مجموعة بيانات التطوير الخاصة بهم، ثم اختيار الإعداد الذي يتناسب بشكل أفضل مع متطلبات تطبيقهم.
عند إعداد وحدة التوجيه الخاصة بك للأوامر (Prompt Router)، يمكنك ضبط الحد الأقصى لاختلاف جودة الاستجابة كما هو موضح في الصورة التالية من صفحة Configure prompt router، ضمن Response quality difference (%) في وحدة تحكم Amazon Bedrock. للقيام بذلك باستخدام واجهات برمجة التطبيقات (APIs)، راجع قسم كيفية استخدام التوجيه الذكي للأوامر.
نتائج الاختبارات
عند استخدام أزواج مختلفة من النماذج، فإن قدرة النموذج الأصغر على معالجة عدد أكبر من الأوامر المدخلة تؤدي إلى فوائد كبيرة من حيث تقليل زمن الاستجابة والتكلفة، وذلك اعتمادًا على اختيار النموذج وحالة الاستخدام. على سبيل المثال، عند المقارنة بين استخدام Claude 3 Haiku وClaude 3.5 Haiku مع Claude 3.5 Sonnet، لاحظنا النتائج التالية باستخدام إحدى مجموعات البيانات الداخلية لدينا:
الحالة 1: التوجيه بين Claude 3 Haiku و Claude 3.5 Sonnet V2: تم تحقيق توفير في التكلفة بنسبة 48٪ مع الحفاظ على نفس جودة الاستجابة التي يقدمها Claude 3.5 Sonnet V2.
الحالة 2: التوجيه بين Claude 3.5 Haiku و Claude 3.5 Sonnet V2: تم تحقيق توفير في التكلفة بنسبة 56٪ مع الحفاظ على نفس جودة الاستجابة التي يقدمها Claude 3.5 Sonnet V2.
كما هو موضح في الحالة 1 والحالة 2، مع تحسّن قدرات النماذج الأقل تكلفة مقارنةً بالنماذج الأعلى تكلفة ضمن نفس العائلة (على سبيل المثال،Claude 3 Haiku إلى Claude 3.5 Haiku)، يمكنك توقع أن تصبح المهام الأكثر تعقيدًا قابلة للمعالجة بشكل موثوق من قِبل هذه النماذج. ونتيجة لذلك، يتم توجيه نسبة أكبر من الأوامر إلى النموذج الأقل تكلفة مع الاستمرار في الحفاظ على نفس مستوى الدقة في تنفيذ المهمة.
نشجعك على اختبار فعالية ميّزة التوجيه الذكي للأوامر في Amazon Bedrock على المهمة أو المجال المتخصص لديك، إذ قد تختلف النتائج من حالة لأخرى. فعلى سبيل المثال، عندما اختبرنا ميّزة التوجيه الذكي للأوامر باستخدام بيانات مفتوحة المصدر وداخلية لتوليد الاستجابات المعززة بالاسترجاع (RAG)، لاحظنا متوسط توفير في التكلفة بنسبة 63.6٪، وذلك نتيجة توجيه نسبة عالية من الأوامر (87٪) إلى نموذج Claude 3.5 Haiku، مع الحفاظ في الوقت نفسه على مستوى الدقة الأساسي للنموذج الأكبر/الأكثر تكلفة (Sonnet 3.5 V2) الموضح في الشكل التالي، وذلك بناءً على المتوسط عبر مجموعات بيانات RAG.
البدء
يمكنك البدء باستخدام وحدة تحكم AWS الخاصة بـ Amazon Bedrock. وكما ذكرنا سابقًا، يمكنك إنشاء لموجّه الخاص بك أو استخدام موجّه افتراضي:
استخدام وحدة التحكم لتكوين موجه:
- في وحدة تحكم Amazon Bedrock، اختر Prompt Routers في جزء التنقل، ثم اختر Configured promot routers.
- بعد ذلك، يمكنك استخدام موجّه قمت بإعداده مسبقًا أو موجّه افتراضي في بيئة التجربة التفاعلية (playground) في وحدة التحكم. على سبيل المثال، في الشكل التالي، قمنا بإرفاق مستند يحتوي على 10,000 كلمة من Amazon.com وطرحنا سؤالاً محددًا حول تكلفة المبيعات.
- اختر أيقونة مقاييس الموجه Router metrics (بجوار أيقونة التحديث) لعرض النموذج الذي تم توجيه الطلب إليه. نظرًا لأن هذا سؤال دقيق، فقد قامت ميّزة التوجيه الذكي للأوامر في Amazon Bedrock بتوجيه الطلب بشكل صحيح إلى Claude 3.5 Sonnet V2 في هذه الحالة، كما هو موضح في الشكل التالي.
يمكنك أيضًا استخدام واجهة سطر أوامر AWS (AWS CLI) أو واجهة برمجة التطبيقات (API)، لإعداد واستخدام موجّه الأوامر.
لإعداد موجّه باستخدام AWS CLI أو واجهة برمجة التطبيقات (API):
باستخدام AWS CLI:
باستخدام Boto3 SDK:
ملاحظات وأفضل الممارسات
عند استخدام ميّزة التوجيه الذكي للأوامر في Amazon Bedrock، يُرجى ملاحظة ما يلي:
- تم تحسين ميّزة التوجيه الذكي للأوامر في Amazon Bedrock للتعامل مع الأوامر باللغة الإنجليزية في حالات استخدام مساعدات الدردشة النموذجية. لاستخدام لغات أخرى أو حالات استخدام مخصصة، قم بإجراء اختباراتك الخاصة قبل استخدام ميّزة التوجيه في تطبيقاتك، أو تواصل مع فريق حساب AWS الخاص بك للحصول على المساعدة في تصميم وتنفيذ هذه الاختبارات.
- يمكنك اختيار نموذجين فقط ليكونا جزءًا من وحدة التوجيه (توجيه ثنائي)، على أن يكون أحدهما هو النموذج الاحتياطي. ويجب أن يكون كلا النموذجين في نفس منطقة AWS.
- عند البدء باستخدام ميّزة التوجيه الذكي للأوامر في Amazon Bedrock، نوصي بتجربة الموجّهات الافتراضية التي توفرها الخدمة أولًا قبل محاولة إعداد موجّهات مخصصة. بعد الانتهاء من التجربة باستخدام الموجّهات الافتراضية، يمكنك إعداد موجّهات خاصة بك حسب احتياجاتك، وتقييم جودة الاستجابة ضمن بيئة التجربة التفاعلية (playground)، واستخدامها في تطبيقاتك إذا كانت تلبي متطلباتك.
- لا يمكن لميّزة التوجيه الذكي للأوامر في Amazon Bedrock حاليًا تعديل قرارات التوجيه أو الاستجابات بناءً على بيانات الأداء الخاصة بالتطبيق. وقد لا توفر دائمًا التوجيه الأمثل في حالات الاستخدام الفريدة أو المتخصصة ضمن مجالات محددة. لذلك، تواصل مع فريق حساب AWS الخاص بك إذا كنت تحتاج دعمًا في تخصيص الحل لحالات استخدام معينة.
الخاتمة
في هذا المقال، استعرضنا ميّزة التوجيه الذكي للأوامر في Amazon Bedrock، وسلطنا الضوء على قدرتها في تحسين كل من جودة الاستجابة والتكلفة من خلال توجيه الطلبات ديناميكيًا بين نماذج الأساس المختلفة. أظهرت نتائج الاختبارات توفيرات كبيرة في التكلفة مع الحفاظ على جودة استجابة عالية وفوائد واضحة من حيث تقليل زمن الاستجابة عبر مختلف عائلات النماذج. سواءً اخترت استخدام الموجّهات الافتراضية المُعدة مسبقًا أو إنشاء إعدادات مخصصة، فإن ميّزة التوجيه الذكي للأوامر في Amazon Bedrock توفر طريقة فعّالة لتحقيق التوازن بين الأداء والكفاءة في تطبيقات الذكاء الاصطناعي المولّد. ومع دمجك لهذه الميّزة ضمن سير عملك، نوصي باختبار فعاليتها في حالات الاستخدام الخاصة بك للاستفادة الكاملة من المرونة التي تقدمها. للبدء، راجع صفحة فهم ميّزة التوجيه الذكي للأوامر في Amazon Bedrock.