8341TokenFactory
LLM APIAPI Gateway

مراجعة عملية لمنصة token8341 لتجميع واجهات برمجة تطبيقات النماذج الكبيرة: ارتفاع حاد في مهلات API في ساعة متأخرة من الليل دفعني إلى إعادة تصميم بوابة النماذج

SiCore TokenWorks Team·2026-11-11

في الساعة الثانية وأربعين دقيقة بعد منتصف الليل، بدأت مجموعة تنبيهات المراقبة تمتلئ بالرسائل. كنا نقدم الدعم التقني لفريق يعمل على نظام خدمة عملاء للتجارة الإلكترونية العابرة للحدود، وارتفع معدل مهلات API لروبوت خدمة العملاء الذكي لديهم من 0.3% في الأيام العادية إلى 27%، واستمر ذلك قرابة ساعة. ما رآه المستخدمون هو: روبوت خدمة العملاء لا يرد لفترة طويلة، واضطر الموظفون إلى التحويل المؤقت إلى الرد اليدوي.

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

ثلاث مشكلات في الاعتماد على نقطة واحدة، وقعنا فيها جميعاً

كثيرون يظنون أن دمج API نموذج كبير هو مجرد إدخال مفتاح وإرسال طلب HTTP. لكن في بيئة الإنتاج الفعلية، تتركز المشكلات في ثلاثة مواضع.

الأولى هي تقييد الطلبات. تُمنح حصة QPS من المزود على مستوى الحساب، وخلال فترات العروض الترويجية الكبرى تضاعفت جلسات خدمة العملاء ثلاث مرات، فامتلأت الحصة فوراً وعادت الاستجابات بالرمز 429. لم نكن قد أعددنا آلية لانتظار الطلبات والتراجع الأسي، وكانت منطق إعادة المحاولة لدينا مفرطاً في العدوانية، فزاد الضغط بدلاً من تخفيفه.

الثانية هي المهلات. بمجرد أن تتعطل واجهة البث (SSE) في المنبع، يظل الاتصال معلقاً لفترة طويلة دون إرجاع أي شيء، ولا يملك العميل سوى الانتظار. في ذلك العطل، كانت نسبة كبيرة من الطلبات ليست فاشلة بل «حية ظاهرياً» — اتصال TCP لا يزال قائماً، لكن لم يخرج منه token واحد.

الثالثة هي اختلاف البروتوكولات. تختلف المزودون في صيغة الإرجاع المتدفق وعلامات النهاية وتعريف رموز الأخطاء. فبنية أحداث SSE في GPT-4o API تختلف عن Claude API، ولكل من Qwen API وDeepSeek API المحليين حقوله الخاصة. وإذا تعاملت شيفرة الأعمال مباشرة مع عدة مزودين، فأنت تزرع لنفسك كومة من عبارات if-else.

حل توجيه النماذج المتعددة: التصنيف، والتخفيض، والتوحيد، والتجميع

بعد العطل أجرينا جولة إعادة هيكلة، والفكرة الأساسية هي إدخال طبقة بوابة نماذج تعزل مسألة «أي نموذج نستدعي» عن شيفرة الأعمال.

تصنيف الطلبات هو الخطوة الأولى. صنّفنا الطلبات حسب أهميتها التجارية إلى ثلاث فئات: فئة المحادثة الفورية (خدمة العملاء، مساعد الموظفين) تتطلب زمن استجابة P99 أقل من ثانيتين؛ فئة التوليد الدفعي (أوصاف المنتجات، مسودات البريد) يمكنها تحمل مستوى الدقائق؛ فئة المهام غير المتصلة (وسم البيانات، ملخصات التقارير) غير متزامنة بالكامل. بعد التصنيف فقط تصبح لاستراتيجية التوجيه أساس.

التخفيض التلقائي عند الأعطال هو الخطوة الثانية. لكل نموذج فحص صحي، وعند تجاوز الفشل المتتالي أو المهلات للحد المعين يُستبعد تلقائياً ويُحوَّل المرور إلى نموذج احتياطي. حددنا العتبة عند تجاوز معدل الخطأ 5% ضمن نافذة منزلقة، بفاصل 30 ثانية لفحص الاستعادة. هنا تنبيه: التخفيض ليس تحويلاً أعمى، بل يجب مراعاة نوع المهمة — التحويل إلى نموذج بقدرات مشابهة في سيناريو خدمة العملاء مقبول، لكن المهام التي تتضمن استدلالاً معقداً يجب وسمها بعد التخفيض لمراجعتها بشرياً لاحقاً.

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

تجميع الاستهلاك هو الخطوة الرابعة. بعد استدعاء نماذج متعددة، يجب توحيد معيار فوترة Token وإحصاءات الاستهلاك، وإلا فستصاب بالجنون عند تسوية الحسابات آخر الشهر. تجمع البوابة حسب المستأجر والنموذج ونوع المهمة بثلاثة أبعاد، وتُخرج فاتورة موحدة.

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

حول حدود استراتيجية التوجيه، بعض الكلام الصريح

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

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

استخدمنا في مشروعنا أيضاً منصة token8341 لتجميع واجهات برمجة تطبيقات النماذج الكبيرة للدمج الموحد لنماذج متعددة، فمفتاح واحد يكفي لاستدعاء النماذج السائدة مثل GPT-4o وClaude وGemini وDeepSeek وQwen وERNIE وDoubao، وهي متوافقة مع OpenAI SDK، ويكفي تغيير سطر base_url للتبديل. ما تحله أساساً هو مشكلتا توحيد البروتوكول وتجميع الاستهلاك المذكورتان أعلاه، ما يوفر عناء صيانة SDKs متعددة بنفسك. وللفرق التي لا تريد بناء بوابة من الصفر، فإن حلول تجميع API للذكاء الاصطناعي مثل token8341 خيار مطروح.

وأخيراً ملاحظة: منصة token8341 لتجميع واجهات برمجة تطبيقات النماذج الكبيرة تغطي النماذج المحلية بشكل شامل نسبياً، فتشمل Pangu وDeepSeek وQwen وERNIE وDoubao وSpark، ما يريح المشاريع التي تتطلب الامتثال لمبادرة الابتكار التقني المحلي. لكن الأداة تبقى أداة، فكيف تصمم استراتيجية التوجيه وكيف تحدد عتبات التخفيض، يبقى أمراً يحتاج إلى ضبط وفق بيانات أعمالك. الدرس الأكثر واقعية الذي علمنا إياه ذلك العطل الليلي هو: التوافر لا يُشترى، بل يُصمم طبقة فوق طبقة.

المؤلف: صن هاوَران

تاريخ النشر: 12 نوفمبر 2026