/ الدليل / الملعب / Azure AI Gateway
● رسمي Azure-Samples 🔑 يتطلب مفتاحك

Azure AI Gateway

بواسطة Azure-Samples · Azure-Samples/AI-Gateway

أنماط بوابة الذكاء الاصطناعي من Microsoft المستندة إلى APIM — لتوجيه وقياس وحوكمة حركة LLM (بما فيها MCP) من خلال Azure API Management.

Azure AI Gateway هو مستودع تطبيق مرجعي من Microsoft يوضح كيفية وضع Azure API Management (APIM) أمام نقاط نهاية LLM/MCP للمصادقة والحصص والتخزين المؤقت والتوجيه والتسجيل وقطع الدائرة. يكشف MCP عن عمليات البوابة هذه بحيث يمكن للوكيل تكوينها والتحقق منها.

لماذا تستخدمه

الميزات الأساسية

عرض مباشر

كيف يبدو في الممارسة

azure-ai-gateway.replay ▶ جاهز
0/0

التثبيت

اختر العميل

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "azure-ai-gateway": {
      "command": "uvx",
      "args": [
        "azure-ai-gateway-mcp"
      ]
    }
  }
}

افتح Claude Desktop → Settings → Developer → Edit Config. أعد التشغيل بعد الحفظ.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "azure-ai-gateway": {
      "command": "uvx",
      "args": [
        "azure-ai-gateway-mcp"
      ]
    }
  }
}

يستخدم Cursor نفس مخطط mcpServers مثل Claude Desktop. إعدادات المشروع أولى من الإعدادات العامة.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "azure-ai-gateway": {
      "command": "uvx",
      "args": [
        "azure-ai-gateway-mcp"
      ]
    }
  }
}

انقر على أيقونة MCP Servers في شريط Cline الجانبي، ثم "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "azure-ai-gateway": {
      "command": "uvx",
      "args": [
        "azure-ai-gateway-mcp"
      ]
    }
  }
}

نفس الصيغة مثل Claude Desktop. أعد تشغيل Windsurf لتطبيق التغييرات.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "azure-ai-gateway",
      "command": "uvx",
      "args": [
        "azure-ai-gateway-mcp"
      ]
    }
  ]
}

يستخدم Continue مصفوفة من كائنات الخادم بدلاً من خريطة.

~/.config/zed/settings.json
{
  "context_servers": {
    "azure-ai-gateway": {
      "command": {
        "path": "uvx",
        "args": [
          "azure-ai-gateway-mcp"
        ]
      }
    }
  }
}

أضف إلى context_servers. يعيد Zed التحميل تلقائيًا عند الحفظ.

claude mcp add azure-ai-gateway -- uvx azure-ai-gateway-mcp

أمر من سطر واحد. تحقق باستخدام claude mcp list. احذف باستخدام claude mcp remove.

حالات الاستخدام

استخدامات عملية: Azure AI Gateway

فرض حصص الرموز لكل فريق عبر نشرات Azure OpenAI

👤 فرق المنصة المركزية التي تحكم إنفاق LLM ⏱ ~30 min advanced

متى تستخدمه: يشارك عدة فرق منتجات في AOAI؛ لا يجب أن تحرق حلقة الفريق الواحد المجنونة ميزانية TPM المشتركة.

المتطلبات الأساسية
  • مثيل APIM مع تطبيق أنماط AI-Gateway — نشر البنية المرجعية من مستودع Azure-Samples/AI-Gateway
  • مفتاح اشتراك APIM لكل فريق — يحصل كل فريق على اشتراك APIM متميز (مفتاح) يتم تضمينه في رأس Ocp-Apim-Subscription-Key
الخطوات
  1. مراجعة الحصص الحالية
    اسرد اشتراكات APIM مع حصصها الحالية من TPM و RPM لمنتج AOAI.✓ تم النسخ
    → جدول الحصص حسب الفريق
  2. تقليل الفريق الصاخب
    فريق 'النمو' في حرق 90% من TPM يوميًا. قلل حصتهم من 200 ألف → 100 ألف TPM. اترك الآخرين دون تغيير.✓ تم النسخ
    → تم تحديث الحصة؛ تأكيد
  3. المراقبة بعد التغيير
    على مدار الساعة التالية، اسحب عدد 429 (معدل محدود) لكل اشتراك. تأكد من أن النمو يجري تشكيله لكن لا تتأثر فرق المنتج الحرجة.✓ تم النسخ
    → الإنفاذ مرئي في المقاييس

النتيجة: إنفاق AOAI مشترك خاضع للرقابة دون إلحاق الضرر بحركة المرور الشرعية ذات الأولوية العالية.

المزالق
  • تعيين حصص منخفضة جدًا يحرم أحمال العمل الشرعية — قم بالنشر في وضع الظل أولاً (السجل فقط)، ثم افرض بعد فهم الأنماط الحقيقية

تكوين الانتقال الفوري متعدد المناطق لنشر Azure OpenAI

👤 مهندسو الموثوقية الذين يشغلون أحمال عمل AI الإنتاجية ⏱ ~45 min advanced

متى تستخدمه: انقطاع AOAI الإقليمي (نادر لكن حقيقي) يجب أن ينتقل بشفافية إلى منطقة أخرى.

المتطلبات الأساسية
  • نشرات AOAI في منطقتين على الأقل (مثل East US و West Europe) — توفير عبر بوابة Azure؛ مطابقة النموذج والإصدار
الخطوات
  1. فحص مجمع الواجهات الخلفية الحالي
    أظهر مجمع الواجهات الخلفية APIM لـ AOAI API الخاص بنا. كم عدد الواجهات الخلفية والأولوية وتكوين فاصل الدائرة؟✓ تم النسخ
    → تكوين المجمع الحالي
  2. إضافة منطقة ثانوية
    أضف نقطة نهاية AOAI في West Europe بـ priority=2 مع فاصل دائرة: 5 فشل في دقيقة واحدة → فتح لمدة 5 دقائق. اترك East US كأساسي.✓ تم النسخ
    → تم تحديث المجمع؛ تم تكوين واجهتان خلفيتان
  3. اختبر الانتقال الفوري
    حاكِ انقطاع الواجهة الخلفية الأساسية بتعطيل نقطة نهاية East US لمدة دقيقتين. تأكد من تحول حركة المرور إلى West Europe، ثم عكس.✓ تم النسخ
    → تحول حركة المرور ملحوظ؛ تم التحقق من الاسترجاع

النتيجة: انتقال فوري شفاف مع دليل على أنه يعمل قبل أن تحتاج إليه.

المزالق
  • المناطق المختلفة لها إصدارات نموذج مختلفة مثبتة — ثبّت على إصدار نموذج موجود في كلا المنطقتين؛ الإصدارات غير المتطابقة تعود صامتة بجودة مختلفة

نشر التخزين المؤقت الدلالي لتقليل تكاليف الموجهات المكررة

👤 فرق المنصة التي تركز على التكاليف ⏱ ~30 min advanced

متى تستخدمه: يسأل المستخدمون عن أسئلة مماثلة مرارًا وتكرارًا؛ 30–60% من المكالمات هي عمليًا نقرات كاش.

الخطوات
  1. تشغيل سياسة كاش دلالي
    تمكين سياسة semantic-cache-lookup في APIM على AOAI completions API مع عتبة تشابه 0.95، TTL 1 ساعة.✓ تم النسخ
    → تم تطبيق السياسة
  2. ملاحظة معدل النجاح
    بعد 24 ساعة، اسحب معدل نجاح الكاش وتوفير الرموز من App Insights.✓ تم النسخ
    → معدل النجاح % + الرموز المحفوظة
  3. اضبط العتبة
    إذا كان معدل النجاح <20%، خفض العتبة إلى 0.92 وراقب مرة أخرى. إذا كانت هناك شكاوى جودة، ارفعها للخلف إلى 0.97.✓ تم النسخ
    → الضبط التكراري مع القياسات

النتيجة: تقليل التكاليف المقاس على الاستعلامات المكررة دون تقليل جودة الإخراج.

المزالق
  • التخزين المؤقت العدواني جدًا يقدم إجابات خاطئة لأسئلة مماثلة لكن مختلفة — ابدأ بقيمة عالية (0.97) وقلل فقط بناءً على الجودة المرصودة

التركيبات

اجمعها مع خوادم MCP أخرى لتحقيق نتائج x10

azure-ai-gateway + sentry

ربط ارتفاعات 5xx في APIM بأخطاء جانب التطبيق

إذا أظهر Sentry ارتفاع 5xx في التطبيق X في 10:02، اسحب مقاييس APIM للنافذة ذاتها وحدد ما إذا كانت البوابة تسببت فيه.✓ تم النسخ
azure-ai-gateway + notion

تقرير أسبوعي لحوكمة حركة المرور بالذكاء الاصطناعي إلى Notion

اجمع استخدام TPM حسب الفريق للأسبوع وعدد 429 ومعدل نجاح الكاش؛ انشر كصفحة Notion.✓ تم النسخ

الأدوات

ما يوفره هذا الـ MCP

الأداةالمدخلاتمتى تستدعيهاالتكلفة
list_subscriptions product_id? حصر الفرق التي تستهلك البوابة free (ARM API call)
update_quota subscription_id, tpm?, rpm? اضبط حدود token/الطلبات للفريق free
get_backend_pool api_id فحص التوجيه وتكوين الانتقال الفوري free
update_backend_pool api_id, backends, policies تغيير الأولويات وفواصل الدائرة وموازنة الحمل free
apply_policy api_id, policy_xml نشر سياسة APIM (كاش، مصادقة، تسجيل) free
get_metrics api_id, since, until ملاحظة شكل حركة المرور لكل API free

التكلفة والحدود

تكلفة التشغيل

حصة API
حدود معدل Azure Resource Manager (سخية لكل مستأجر)
الرموز لكل استدعاء
قراءات السياسة/مجمع الواجهات الخلفية: 500–2000 رمز
التكلفة المالية
يبدأ تسعير APIM من ~40 دولار/شهر (طبقة أساسية)؛ يُنصح بطبقة Standard للإنتاج
نصيحة
التخزين المؤقت الدلالي عادةً ما يدفع تكلفة APIM عدة مرات إذا كانت حركة المرور لديك مكررة. قس معدل النجاح للتبرير.

الأمان

الصلاحيات والأسرار ونطاق الأثر

الحد الأدنى من الصلاحيات: APIM Contributor على مثيل APIM المستهدف
تخزين بيانات الاعتماد: بيانات اعتماد مبدأ الخدمة في Azure (معرف العميل/السر/المستأجر) في env
نقل البيانات الخارجي: استدعاءات ARM API إلى management.azure.com؛ أجسام الموجهة/الرد تعبر APIM نفسها
لا تمنح أبدًا: Owner على الاشتراك Global admin

استكشاف الأخطاء

الأخطاء الشائعة وحلولها

401 على استدعاءات ARM API

مبدأ الخدمة يفتقر إلى دور APIM Contributor على مجموعة الموارد. منح عبر بوابة Azure أو az cli.

تحقق: az role assignment list --assignee <sp>
فشل تطبيق السياسة — خطأ التحقق من XML

سياسة APIM XML صارمة؛ استخدم محرر السياسة بالبوابة للتحقق، ثم انسخ والصق.

تستمر 429s بعد رفع حصة TPM

قد تكون نشرة AOAI نفسها هي الاختناق. تحقق من TPM النشر، وليس فقط TPM اشتراك APIM.

معدل نجاح الكاش الدلالي هو 0%

واجهة خلفية التضمين لبحث الكاش لم يتم تكوينها؛ تحقق من مرجع التضمينات لسياسة الكاش.

البدائل

Azure AI Gateway مقابل البدائل

البديلمتى تستخدمهاالمقايضة
Cloudflare AI Gatewayأنت على Cloudflare وتريد توجيه LLM متعدد الموفرين من الصندوقتكامل أقل عمقًا مع النماذج المستضافة على Azure
Portkey / LiteLLMتريد بوابة محايدة الموفر مع لوحة معلوماتSaaS تابعة لجهة خارجية؛ تغادر البيانات سحابتك

المزيد

الموارد

📖 اقرأ ملف README الرسمي على GitHub

🐙 تصفح القضايا المفتوحة

🔍 تصفح أكثر من 400 خادم MCP و Skills