ð§ª
ããŒã«ã«ð§ª ã«ã€ããŠ
AI Gateway Labs ã¯ãAzure API Management ãš Microsoft Foundry äžã® AI ã²ãŒããŠã§ã€ãéããŠãAI ã¢ãã«ãMCP ãµãŒããŒããšãŒãžã§ã³ãã詊ãããã®ãã³ãºãªã³éã§ããåã©ãã«ã¯ãAzure ãµãã¹ã¯ãªãã·ã§ã³ã«ãããã€ã§ãã Jupyter ããŒãããã¯ãBicep ãã³ãã¬ãŒããAPIM ããªã·ãŒãå«ãŸããŸãã
äž»ãªæ©èœ
- 01ã¢ãã«ãããŒã«ããšãŒãžã§ã³ãã«é¢ãã 30 以äžã®ã©ã
- 02ã©ãããšã®ã¹ããã圢åŒã® Jupyter ããŒãããã¯
- 03Bicep ã€ã³ãã©ãã³ãã¬ãŒããš APIM ããªã·ãŒ
- 04OAuth èªèšŒæ å ±ç®¡çã䌎ã MCP ããŒã«ã®æ¥ç¶
- 05æ°ããã©ããäœæããããã® Copilot ãšãŒãžã§ã³ãã¹ãã«
掻çšã·ãŒã³
- 01APIM ã§ã¢ãã«åŒã³åºãã®ã¬ãŒãå¶éãšã»ãã³ãã£ãã¯ãã£ãã·ã¥ãèšå®ããæ¹æ³ã®åŠç¿
- 02Azure äžã§ã® MCP ããŒã«ã® OAuth èªå¯ãããŒã®æ€èšŒ
- 03æ¢åã©ããé圢ãšããã«ã¹ã¿ã ã²ãŒããŠã§ã€æ§æã®äœæ
MCP 察å¿
ã©ãã«ã¯ MCP ããŒã«æ¥ç¶ã®äŸãå«ãŸããŠãããAPIM ãä»ããããŒã«ãžã®ã¢ã¯ã»ã¹ç®¡çãšãMCP ã¯ã©ã€ã¢ã³ãã®èªå¯ãããŒã瀺ããŠããŸãã
èšå®
ããŒã«ã«ãµãŒããŒã®èšå®ã¯ã©ã®ã¯ã©ã€ã¢ã³ãã§ãå ±éã§ããã³ããŒããŠã¯ã©ã€ã¢ã³ãã® MCP èšå®ãã¡ã€ã«ã«è²Œãä»ããŠãã ããã
ãã®ãµãŒããŒã®ããã±ãŒãžããªã¢ãŒããšã³ããã€ã³ãã¯ãŸã ååŸã§ããŠããŸããããããžã§ã¯ãã® README ã®æé ã«åŸã£ãŠãã ããã
ããŒã«
ããŒã«ã«ãµãŒããŒã®ããŒã«ã¯ãã·ã³äžã§èµ·åããŠåããŠååŸã§ããŸããã¡ã³ãããŒã¯ãŸã ããŒã«äžèЧãæäŸããŠããŸããã
詳现
âš AI Gateway Labs
AI ã¢ãã«ãããŒã«ããšãŒãžã§ã³ãã管çãããšã³ã¿ãŒãã©ã€ãºã°ã¬ãŒãã®ã²ãŒããŠã§ã€ã詳ããèŠãŠã¿ãŸããã
ð° æ°çïŒ AI Gateway Dev Portal ãå ¬éãããŸãããAzure API Management AI Gateway äžã«ç¬èªã®éçºè ããŒã¿ã«ãæ§ç¯ããããã®åºçºç¹ã§ãããã©ãŒã¯ããŠãGitHub CopilotïŒãŸãã¯ä»»æã®ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãïŒã䜿ã£ãŠ VS Code ã§éããããŒãºã«åãããŠã«ã¹ã¿ãã€ãºããŸãããïŒ
AI Gateway ãéžã¶çç±
æ¬çªç°å¢ã«å¯Ÿå¿ãã AI ã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããã«ã¯ãã¢ãã« API ãåŒã³åºãã ãã§ã¯äžååã§ããã€ãããŒã·ã§ã³ã劚ããããšãªããã»ãã¥ãªãã£ãä¿¡é Œæ§ãå¯èŠ³æž¬æ§ãã³ã¹ã管çãå®çŸããå¿ èŠããããŸãã
Azure API Management ãåºç€ãšãã AI Gateway ãæäŸããæ©èœïŒ
- ð ã»ãã¥ãªã㣠â OAuth 2.0ããããŒãžã IDãã³ã³ãã³ãå®å šæ§ãã£ã«ã¿ãªã³ã°
- â¡ ããã©ãŒãã³ã¹ â è² è·åæ£ãã»ãã³ãã£ãã¯ãã£ãã·ã¥ããªã¯ãšã¹ãã«ãŒãã£ã³ã°
- ð å¯èŠ³æž¬æ§ â ããŒã¯ã³ã¡ããªãã¯ãçµã¿èŸŒã¿ãã°ããã¬ãŒã¹
- ð° ã³ã¹ã管ç â ã¬ãŒãå¶éãã¯ã©ãŒã¿ç®¡çãFinOps ãã¬ãŒã ã¯ãŒã¯
- ð æ¡åŒµæ§ â MCP ãããã³ã«ã®ãµããŒãã颿°åŒã³åºããè€æ°ã¢ãã«ã®ã«ãŒãã£ã³ã°
ð ã©ãã詳ããèŠã
ð aka.ms/ai-gateway/labs ã§ãã¹ãŠã® 30 以äžã®ã©ããã芧ãã ãã
åã©ãã¯ãæé ã远ã£ãŠåŠã¹ã Jupyter ããŒãããã¯ã§ããAzure ãµãã¹ã¯ãªãã·ã§ã³ã«ãããã€ã§ãã Bicep ã€ã³ãã©ã¹ãã©ã¯ãã£ãã³ãã¬ãŒããš APIM ããªã·ãŒãçšæãããŠããŸãã
ð§ ã¢ãã«åã AI Gateway
ãšã³ã¿ãŒãã©ã€ãºã°ã¬ãŒãã®ããªã·ãŒã§ãå€§èŠæš¡èšèªã¢ãã«ãžã®ã¢ã¯ã»ã¹ã管çããã³å¶åŸ¡ããŸãã
| ã©ã | 説æ |
|---|---|
| ããã¯ãšã³ãããŒã«ã®è² è·åæ£ | è€æ°ã®ã¢ãã«ãšã³ããã€ã³ãéã§ãªã¯ãšã¹ãã忣ããŸã |
| ããŒã¯ã³ã®ã¬ãŒãå¶é | ã¬ãŒãå¶éããªã·ãŒã§ããŒã¯ã³æ¶è²»ãå¶åŸ¡ããŸã |
| ã»ãã³ãã£ãã¯ãã£ãã·ã¥ | ãã¯ãã«é¡äŒŒåºŠã䜿ã£ãŠå¿çããã£ãã·ã¥ããããé«éãã€äœã³ã¹ãã§åçãçæããŸã |
| ã¢ãã«ã«ãŒãã£ã³ã° | ã¢ãã«ãšããŒãžã§ã³ã«åºã¥ããŠããªã¯ãšã¹ããç°ãªãããã¯ãšã³ãã«ã«ãŒãã£ã³ã°ããŸã |
| FinOps ãã¬ãŒã ã¯ãŒã¯ | ã¯ã©ãŒã¿å¶åŸ¡ãèªååã㊠AI ã®äºç®ã管çããŸã |
ð§ ããŒã«åã AI Gateway
MCP ãããã³ã«ãšé¢æ°åŒã³åºãæ©èœã䜿ã£ãŠãå®å šãªããŒã«ã¢ã¯ã»ã¹ãå®çŸããŸãã
| ã©ã | 説æ |
|---|---|
| Model Context ProtocolïŒMCPïŒ | OAuth èªèšŒæ å ±ç®¡çã䜿ã£ãŠãããŒã«ããã©ã°ã¢ã³ããã¬ã€ã§å©çšã§ããŸã |
| MCP ã¯ã©ã€ã¢ã³ãèªèšŒ | ã¯ã©ã€ã¢ã³ãèªèšŒãããŒã§ MCP ãå®è£ ããŸã |
| 颿°åŒã³åºã | Azure Functions ããã¯ãšã³ãã§ OpenAI ã®é¢æ°åŒã³åºãã䜿çšããŸã |
| ãªã¢ã«ã¿ã€ã é³å£° + MCP | ãªã¢ã«ã¿ã€ã é³å£° API ãš MCP ããŒã«ãçµã¿åãããŸã |
ð€ ãšãŒãžã§ã³ãåã AI ã²ãŒããŠã§ã€
ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãã¬ãŒã ã¯ãŒã¯ã䜿çšããŠããšãŒãžã§ã³ãåã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã»å¶åŸ¡ããŸãã
| ã©ã | 説æ |
|---|---|
| AI Agent Service | è€æ°ã®ãµãŒãã¹ãå¶åŸ¡ããªãããFoundry Agent Service ã詊ããŸã |
| OpenAI Agents SDK | Azure OpenAI ãš APIM 管çã®ããŒã«ã䜿çšããŠãOpenAI Agents ãæŽ»çšããŸã |
| Gemini MCP Agents | Google Gemini ã¢ãã«ã MCP ããŒã«ãšçµ±åããŸã |
| A2A Enabled Agents | ã¢ãã«ãš MCP ã®ãã©ã°ã¢ã³ããã¬ã€ããŒã«ãåãããA2A 察å¿ãšãŒãžã§ã³ãã䜿çšããŸã |
ð ã¯ã€ãã¯ã¹ã¿ãŒã
åææ¡ä»¶
- Python 3.12+
- uvïŒé«é㪠Python ããã±ãŒãžãããŒãžã£ãŒïŒ â
curl -LsSf https://astral.sh/uv/install.sh | shïŒLinux/macOSïŒãŸãã¯powershell -c "irm https://astral.sh/uv/install.ps1 | iex"ïŒWindowsïŒã§ã€ã³ã¹ããŒã«ããŸã - Jupyter æ¡åŒµæ©èœãã€ã³ã¹ããŒã«ãã VS Code
- Contributor ãš RBAC Administrator ã®ããŒã«ãä»äžããã Azure ãµãã¹ã¯ãªãã·ã§ã³
- ãµãã¹ã¯ãªãã·ã§ã³ã«èªèšŒæžã¿ã® Azure CLI
ã¯ããã«
# Clone the repository
git clone https://github.com/Azure-Samples/AI-Gateway.git
cd AI-Gateway
# Create the virtual environment and install dependencies
uv sync
uv pip install -r pyproject.toml
# Open VS Code and start with a lab
code .
ããŒãããã¯ãéãéã¯ãuv sync ã§äœæããã .venv ã€ã³ã¿ãŒããªã¿ãŒã Jupyter ã«ãŒãã«ãšããŠéžæããŠãã ããã
ãŸãã¯ãGitHub Codespaces âïž ã§ããã«èµ·åã§ããŸãã
ðš éçºè ããŒã«
tools/ ãã©ã«ããŒã«ã¯ããã¹ããšéçºã«åœ¹ç«ã€ãŠãŒãã£ãªãã£ãçšæãããŠããŸãã
| ããŒã« | 説æ |
|---|---|
| Tracing | ãã¬ãŒã¹ãæå¹ã«ã㊠AI Foundry API ãåŒã³åºããŸã |
| Streaming | AI ã¢ãã«ããã®ã¹ããªãŒãã³ã°å¿çããã¹ãããŸã |
| Rate Limit Tester | ã¬ãŒãå¶éã®æ§æãæ€èšŒããŸã |
| Mock Server | ããŒã«ã«ã§ã®éçºãšãã¹ãã«äœ¿ãã OpenAI API ã¢ãã¯ã§ã |
| OAuth Client | OAuth èªèšŒãããŒããã¹ãããŸã |
ð©âð» AI ã§ç¬èªã®ã©ããæ§ç¯ãã
ãã®ãªããžããªã«ã¯ãVS Code ã§ AI æ¯æŽéçºã䜿ã£ãŠæ°ããã©ããäœæããã®ã«åœ¹ç«ã€ Copilot Agent Skills ãå«ãŸããŠããŸãã
å©çšå¯èœãªã¹ãã«
| ã¹ãã« | 説æ |
|---|---|
lab-creator | ããŒãããã¯ãBicepãããªã·ãŒãå«ãæ°ããã©ãã®ã²ãªåœ¢ãäœæããŸã |
apim-bicep | APIM ãªãœãŒã¹çšã® Azure Bicep ãã³ãã¬ãŒããçæããŸã |
apim-terraform | APIM çšã® Terraform æ§æãçæããŸã |
apim-policies | AI ã²ãŒããŠã§ã€ã®ã·ããªãªçšã« APIM XML ããªã·ãŒãäœæããŸã |
apim-kql | ã¢ãã«ãããŒã«ããšãŒãžã§ã³ããå¶åŸ¡ãã KQL ã¯ãšãªãçæããŸã |
mcp-builder | ããŒã«çµ±åçšã® MCP ãµãŒããŒãæ§ç¯ããŸã |
äŸïŒæ°ããã©ããäœæãã
GitHub Copilot ã䜿çšã㊠VS Code ã§ãã®ãªããžããªãéããæ¬¡ã®ããã³ããã䜿çšããŸãã
Create a new lab called "multi-model-failover" that demonstrates how to
implement automatic failover between different AI models when the primary
model is unavailable or throttled. Include:
- A backend pool with priority-based routing
- Retry policy with exponential backoff
- Circuit breaker pattern for unhealthy backends
- Built-in LLM logging to track usage across all backends
- Test the model with a LangChain agent: https://docs.langchain.com/oss/python/langchain/agents
Use gpt-4.1-mini as primary and gpt-4.1-nano as fallback, deploy to Sweden Central.
Copilot ã¯æ¬¡ã®ãã®ãå«ããã©ãã®å®å šãªæ§æãçæããŸãã
- ð æé ã远ã£ã説æä»ãã® Jupyter ããŒãããã¯
- ðŠŸ Bicep ã€ã³ãã©ã¹ãã©ã¯ãã£ãã³ãã¬ãŒã
- âïž APIM ããªã·ãŒ XML
- ð README ããã¥ã¡ã³ã
- ð§¹ ã¯ãªãŒã³ã¢ããçšããŒãããã¯
ðïž Well-Architected Framework
ã©ãã¯ãAzure Well-Architected Framework ã®ååã«æ²¿ã£ãŠèšèšãããŠããŸãã
| æ± | ã©ã |
|---|---|
| ã»ãã¥ãªã㣠| ã¢ã¯ã»ã¹å¶åŸ¡ãã³ã³ãã³ãã®å®å šæ§ããã©ã€ããŒãæ¥ç¶ |
| ä¿¡é Œæ§ | ããã¯ãšã³ãããŒã«ã®è² è·åæ£ãããŒã¯ã³ã®ã¬ãŒãå¶é |
| ããã©ãŒãã³ã¹ | ã»ãã³ãã£ãã¯ãã£ãã·ã¥ãã¢ãã«ã«ãŒãã£ã³ã° |
| éçš | çµã¿èŸŒã¿ãã®ã³ã°ãããŒã¯ã³ã¡ããªãã¯ã®åºå |
| ã³ã¹ã | FinOps ãã¬ãŒã ã¯ãŒã¯ãã»ãã³ãã£ãã¯ãã£ãã·ã¥ |
ð ãšã³ã¿ãŒãã©ã€ãº AI ã²ãŒããŠã§ã€ e-Book
ãšã³ã¿ãŒãã©ã€ãº AI ã²ãŒããŠã§ã€ e-BookãããŠã³ããŒãããŠããšã³ã¿ãŒãã©ã€ãº AI ã²ãŒããŠã§ã€ãã¿ãŒã³ã®å
æ¬çãªãšã³ãããŒãšã³ãã®æŠèŠãã芧ãã ãããçµç¹ã AI ãå€§èŠæš¡ã«å°å
¥ããéã«ããªãäžå
åãããã¬ããã³ã¹å±€ãäžå¯æ¬ ãªã®ãããŸã Azure API Management ãš Microsoft Foundry ã䜿çšããŠå®çšçã«å®è£
ããæ¹æ³ã説æããŠããŸãã
AI ã²ãŒããŠã§ã€ããAI ã¢ããªããšãŒãžã§ã³ããšãããããæ¯ããã¢ãã«ãããŒã¿ãããŒã«ãšã®éã®ãã¹ãŠã®ããåãã仲ä»ããã³ã³ãããŒã«ãã¬ãŒã³ãšããŠèª¬æããã»ãã¥ãªãã£ãå®å
šæ§ãã³ã¹ã管çãå埩æ§ãã¹ã±ãŒã©ããªãã£ãå¯èŠ³æž¬æ§ãã¬ããã³ã¹ãäžè²«ããŠé©çšã§ããããã«ããŸããå
šäœãšããŠããã® e-Book ã§ã¯ãšã³ã¿ãŒãã©ã€ãº AI ã²ãŒããŠã§ã€ããä¿¡é Œãã³ã³ãã©ã€ã¢ã³ã¹ãå¯èŠæ§ãå¶åŸ¡ãç¶æããªãããäŒæ¥ã AI ãæŽ»çšããŠè¿
éã«ã€ãããŒã·ã§ã³ãèµ·ããããã®åºç€ãšãªãã¢ãŒããã¯ãã£ã³ã³ããŒãã³ããšããŠäœçœ®ä»ããŠããŸãã
ð¬ ã«ã³ãã¡ã¬ã³ã¹ãšãŠã§ããã£ã¹ã
AI ã²ãŒããŠã§ã€ã®ã³ã³ã»ãããšå®è£ ãæ±ã以äžã®åç»ã§ãå°éå®¶ããåŠã³ãŸãããã
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
ð ãªãœãŒã¹
- ð AI ã²ãŒããŠã§ã€ã®ããã¥ã¡ã³ã
- ð AI ã²ãŒããŠã§ã€ã®ã¯ãŒã¯ã·ã§ãã
- âïž APIM ã®ãµã³ãã«
- ð APIM ã®åŠç¿ã¢ãžã¥ãŒã«
- ð¡ ã©ã³ãã£ã³ã°ãŸãŒã³ã¢ã¯ã»ã©ã¬ãŒã¿ãŒ
- ðïž Foundry Ctadel
- ð° API Management ã®ãã¥ãŒã¹
ð€ ã³ã³ããªãã¥ãŒã·ã§ã³
ã³ã³ããªãã¥ãŒã·ã§ã³ãæè¿ããŸãïŒã¬ã€ãã©ã€ã³ã«ã€ããŠã¯ãCONTRIBUTING.mdããèªã¿ãã ããã
ã©ã€ã»ã³ã¹
ã³ã¡ã³ã
MCP ã¯åããŠã§ããïŒ
ãããã³ã«ã®æŠèŠããæåã®ãµãŒããŒã®å°å ¥ãŸã§ãããããçåã«ãŸãšããŠçããŸãã
AI ã¢ããªã±ãŒã·ã§ã³ãå€éšã®ããŒã«ãããŒã¿ãœãŒã¹ã«çµ±äžçãªæ¹æ³ã§æ¥ç¶ããããã®ãªãŒãã³ãªãããã³ã«ã§ããã¯ã©ã€ã¢ã³ãã¯ã¢ãã«ãšã®å¯Ÿè©±ãæ ããMCP ãµãŒããŒã¯ããŒã«ã»ãªãœãŒã¹ã»ããã³ãããã³ãã¬ãŒããæäŸããŸããæšæºã¡ãã»ãŒãžã§ããåãããããã1 ã€ã®ãµãŒããŒãè€æ°ã®ã¯ã©ã€ã¢ã³ãã§åå©çšã§ããŸãã
















