مقدمة
تتطلب تطبيقات الذكاء الاصطناعي رسائل غير متزامنة لفصل تقديم الطلب عن معالجة الاستدلال، وضمان التسليم الموثوق تحت الحمل المتغير. ترشدك هذه الوحدة خلال استخدام Azure Service Bus لترتيب وتوزيع ومعالجة أحمال العمل الذكية على Azure.
تخيل أنك مطور تبني منصة تحليل مستندات تستخدم نماذج لغوية كبيرة لاستخراج البيانات المنظمة من العقود المرفوعة. يقوم العملاء بتقديم المستندات عبر واجهة برمجة تطبيقات الويب، ويتطلب كل مستند بين خمس وثلاثين ثانية من وقت المعالجة حسب الطول والتعقيد. خلال ساعات الذروة، تصل مئات الوثائق خلال دقائق، لكن خدمة الاستدلال يمكنها معالجة عدد محدود فقط في نفس الوقت. بدون وجود مخزن مؤقت بين واجهة برمجة التطبيقات وطبقة المعالجة، تصبح الواجهة غير مستجيبة تحت التحميل، ويتلقى العملاء أخطاء انتهاء المهلة، وتفقد المستندات عند إعادة تشغيل وحدات المعالجة. يحتاج فريقك إلى طبقة رسائل تمتص ارتفاعات حركة المرور، وتوزع العمل على عدة معالجات، وتضمن معالجة كل مستند مرة واحدة فقط. بعض الخدمات اللاحقة تحتاج أيضا إلى الاستجابة للتحليلات المكتملة، مثل خدمة الإشعار التي تنبه المرسل وخدمة تدقيق تسجل النتيجة للامتثال. يجب على المنصة التعامل مع إخفاقات المعالجة برشاقة، حيث توجه المستندات غير القابلة للمعالجة إلى طابور منفصل للتحقيق بدلا من إسقاطها بصمت. يوفر Azure Service Bus قدرات الانتظار والنشر والاشتراك والحروف الميتة التي يتطلبها هذا الهيكل.
بعد إِكمال هذه الوحدة، ستتمكن من القيام بما يلي:
- اشرح كيف يقوم Azure Service Bus بفصل مكونات تطبيقات الذكاء الاصطناعي وتحديد متى يجب تطبيق أنماط الرسائل مثل مستوى التحميل، المستهلكين المتنافسين، والنشر-الاشتراك.
- اختر بين قوائم انتظار حافلات الخدمة والمواضيع التي تحتوي على اشتراكات بناء على ما إذا كان سير عمل الذكاء الاصطناعي يتطلب معالجة لمستهلك واحد أو توزيع لعدة مستهلكين.
- هيكل رسائل ناقل الخدمة لأحمال العمل الذكاء الاصطناعي، بما في ذلك تسلسل الأوامر ومعلمات النموذج، والتعامل مع الحمولات الكبيرة باستخدام نمط التحقق من المطالبات، وتضمين معرفات الارتباط لتتبع الطلبات من البداية إلى النهاية.
- يعالج الرسائل بشكل موثوق باستخدام وضع الاستقبال بقفل النظر، ويتعامل مع الرسائل السامة عبر قوائم انتظار الحروف الميتة، ويراقب قائمة الانتظار للاستدلالات الفاشلة.
ملاحظة
جميع أمثلة الكود في هذه الوحدة مبنية على أحدث إصدار من المكتبة azure-servicebus وقت كتابة الكتابة. يتم تحديث المكتبة بشكل متكرر والتوصية هي زيارة توثيق Azure Service Bus SDK للحصول على أحدث المعلومات up-toالتاريخ.