مدیریت API در Azure، سرویسی است که یک Gateway را بر روی نقاط انتهایی API شما فراهم میکند. این سرویس به عنوان یک پروکسی در جلوی APIهای شما عمل میکند و میتواند تصمیم بگیرد که با درخواستهای ورودی چه کاری انجام دهد.
با استفاده از این سرویس، میتوانید مجموعهای از ویژگیهای اضافی را اضافه کنید، مانند:
- امنیت: میتوانید از کلیدهای API، JWT، یا هویت مدیریتشده استفاده کنید.
- محدودیت نرخ: ویژگی عالی این است که میتوانید تعیین کنید چند درخواست در یک بازه زمانی مشخص مجاز است. این کار تجربه کاربری بهتری را تضمین میکند و همچنین از بار زیاد روی سرویس شما جلوگیری میکند.
- مقیاسپذیری و تعادل بار: میتوانید چندین نقطه انتهایی را برای تعادل بار تنظیم کنید و همچنین تصمیم بگیرید که چگونه بار را توزیع کنید.
- ویژگیهای هوش مصنوعی مانند کش معنایی، محدودیت توکن، نظارت بر توکن و موارد دیگر. این ویژگیها پاسخگویی را بهبود میبخشند و به شما کمک میکنند مصرف توکن خود را مدیریت کنید. بیشتر بخوانید.
پروتکل Model Context (MCP) به سرعت به یک استاندارد برای برنامههای هوش مصنوعی عاملمحور تبدیل شده است و راهی برای انتشار ابزارها و دادهها به صورت یکپارچه فراهم میکند. مدیریت API در Azure یک انتخاب طبیعی است زمانی که نیاز به "مدیریت" APIها دارید. سرورهای MCP اغلب با سایر APIها برای پاسخ به درخواستها ادغام میشوند. بنابراین ترکیب مدیریت API در Azure و MCP منطقی است.
در این مورد خاص، یاد میگیریم که چگونه نقاط انتهایی API را به عنوان یک سرور MCP منتشر کنیم. با این کار، میتوانیم به راحتی این نقاط انتهایی را بخشی از یک برنامه عاملمحور کنیم و در عین حال از ویژگیهای مدیریت API در Azure بهرهمند شویم.
- شما میتوانید روشهای نقاط انتهایی که میخواهید به عنوان ابزار منتشر شوند را انتخاب کنید.
- ویژگیهای اضافی که دریافت میکنید به تنظیماتی که در بخش سیاستها برای API خود پیکربندی میکنید بستگی دارد. اما در اینجا نشان میدهیم که چگونه میتوانید محدودیت نرخ را اضافه کنید.
اگر قبلاً یک API در مدیریت API در Azure دارید، میتوانید این مرحله را رد کنید. اگر نه، این لینک را بررسی کنید: وارد کردن یک API به مدیریت API در Azure.
برای انتشار نقاط انتهایی API، مراحل زیر را دنبال کنید:
-
به پورتال Azure و آدرس زیر بروید: https://portal.azure.com/?Microsoft_Azure_ApiManagement=mcp
به نمونه مدیریت API خود بروید. -
در منوی سمت چپ، گزینه APIs > MCP Servers > + Create new MCP Server را انتخاب کنید.
-
در بخش API، یک REST API را برای انتشار به عنوان سرور MCP انتخاب کنید.
-
یک یا چند عملیات API را برای انتشار به عنوان ابزار انتخاب کنید. میتوانید همه عملیات یا فقط عملیات خاصی را انتخاب کنید.
-
گزینه Create را انتخاب کنید.
-
به منوی APIs و MCP Servers بروید. باید صفحهای مشابه زیر ببینید:
سرور MCP ایجاد شده و عملیات API به عنوان ابزار منتشر شدهاند. سرور MCP در پنل MCP Servers لیست شده است. ستون URL آدرس سرور MCP را نشان میدهد که میتوانید برای تست یا در یک برنامه کلاینت از آن استفاده کنید.
مدیریت API در Azure مفهوم اصلی سیاستها را دارد که در آن میتوانید قوانین مختلفی را برای نقاط انتهایی خود تنظیم کنید، مانند محدودیت نرخ یا کش معنایی. این سیاستها در قالب XML نوشته میشوند.
در اینجا نحوه تنظیم یک سیاست برای محدودیت نرخ سرور MCP آورده شده است:
-
در پورتال، در بخش APIs، گزینه MCP Servers را انتخاب کنید.
-
سرور MCP که ایجاد کردهاید را انتخاب کنید.
-
در منوی سمت چپ، در بخش MCP، گزینه Policies را انتخاب کنید.
-
در ویرایشگر سیاست، سیاستهایی که میخواهید به ابزارهای سرور MCP اعمال کنید را اضافه یا ویرایش کنید. سیاستها در قالب XML تعریف میشوند. برای مثال، میتوانید سیاستی اضافه کنید که تعداد تماسها به ابزارهای سرور MCP را محدود کند (در این مثال، ۵ تماس در هر ۳۰ ثانیه برای هر آدرس IP کلاینت). این کد XML باعث محدودیت نرخ میشود:
<rate-limit-by-key calls="5" renewal-period="30" counter-key="@(context.Request.IpAddress)" remaining-calls-variable-name="remainingCallsPerIP" />
تصویر زیر ویرایشگر سیاست را نشان میدهد:
بیایید مطمئن شویم که سرور MCP ما همانطور که انتظار میرود کار میکند.
برای این کار، از Visual Studio Code و GitHub Copilot در حالت Agent استفاده میکنیم. سرور MCP را به یک فایل mcp.json اضافه میکنیم. با این کار، Visual Studio Code به عنوان یک کلاینت با قابلیتهای عاملمحور عمل میکند و کاربران نهایی میتوانند یک درخواست وارد کنند و با سرور تعامل داشته باشند.
-
از دستور MCP: Add Server در Command Palette استفاده کنید.
-
وقتی از شما خواسته شد، نوع سرور را انتخاب کنید: HTTP (HTTP یا Server Sent Events).
-
آدرس URL سرور MCP در مدیریت API را وارد کنید. مثال: https://.azure-api.net/-mcp/sse (برای نقطه انتهایی SSE) یا https://.azure-api.net/-mcp/mcp (برای نقطه انتهایی MCP). توجه کنید که تفاوت بین انتقالها در
/sseیا/mcpاست. -
یک شناسه سرور به انتخاب خود وارد کنید. این مقدار مهم نیست اما به شما کمک میکند این نمونه سرور را به خاطر بسپارید.
-
انتخاب کنید که آیا تنظیمات را در تنظیمات فضای کاری یا تنظیمات کاربر ذخیره کنید.
-
تنظیمات فضای کاری - پیکربندی سرور در یک فایل .vscode/mcp.json ذخیره میشود که فقط در فضای کاری فعلی در دسترس است.
mcp.json
"servers": { "APIM petstore" : { "type": "sse", "url": "url-to-mcp-server/sse" } }
یا اگر انتقال HTTP استریمینگ را انتخاب کنید، کمی متفاوت خواهد بود:
"servers": { "APIM petstore" : { "type": "http", "url": "url-to-mcp-server/mcp" } }
-
تنظیمات کاربر - پیکربندی سرور به فایل settings.json جهانی شما اضافه میشود و در همه فضاهای کاری در دسترس است. پیکربندی مشابه زیر خواهد بود:
-
همچنین باید یک هدر اضافه کنید تا مطمئن شوید که به درستی به مدیریت API در Azure احراز هویت میکند. این کار از طریق هدر Ocp-Apim-Subscription-Key انجام میشود.
- در اینجا نحوه اضافه کردن آن به تنظیمات آمده است:
، این کار باعث میشود یک درخواست برای وارد کردن مقدار کلید API نمایش داده شود که میتوانید آن را در پورتال Azure برای نمونه مدیریت API خود پیدا کنید.
- برای اضافه کردن آن به mcp.json، میتوانید به این صورت عمل کنید:
"inputs": [ { "type": "promptString", "id": "apim_key", "description": "API Key for Azure API Management", "password": true } ] "servers": { "APIM petstore" : { "type": "http", "url": "url-to-mcp-server/mcp", "headers": { "Ocp-Apim-Subscription-Key": "Bearer ${input:apim_key}" } } }
اکنون همه چیز در تنظیمات یا در .vscode/mcp.json تنظیم شده است. بیایید آن را امتحان کنیم.
باید یک آیکون ابزار مانند زیر وجود داشته باشد که ابزارهای منتشر شده از سرور شما را لیست میکند:
-
روی آیکون ابزار کلیک کنید و باید لیستی از ابزارها مانند زیر ببینید:
-
یک درخواست در چت وارد کنید تا ابزار را فراخوانی کنید. برای مثال، اگر ابزاری برای دریافت اطلاعات سفارش انتخاب کردهاید، میتوانید از عامل درباره یک سفارش بپرسید. مثال:
get information from order 2اکنون یک آیکون ابزار نمایش داده میشود که از شما میخواهد برای فراخوانی ابزار ادامه دهید. انتخاب کنید که ابزار را اجرا کنید، باید خروجی مشابه زیر ببینید:
آنچه در بالا میبینید بستگی به ابزارهایی دارد که تنظیم کردهاید، اما ایده این است که یک پاسخ متنی مانند بالا دریافت کنید.
در اینجا میتوانید اطلاعات بیشتری کسب کنید:
-
نمونه پایتون: ایمنسازی سرورهای MCP از راه دور با استفاده از مدیریت API در Azure (تجربی)
-
استفاده از افزونه مدیریت API در Azure برای VS Code برای وارد کردن و مدیریت APIها
-
AI Gateway مخزن عالی که بسیاری از قابلیتهای هوش مصنوعی با مدیریت API در Azure را نشان میدهد.
-
کارگاههای AI Gateway شامل کارگاههایی با استفاده از پورتال Azure، که راهی عالی برای شروع ارزیابی قابلیتهای هوش مصنوعی است.
سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما تلاش میکنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است شامل خطاها یا نادرستیها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفهای انسانی توصیه میشود. ما مسئولیتی در قبال سوء تفاهمها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.







