# Azure Aigateway > Configura Azure API Management como AI Gateway para modelos, herramientas MCP y agentes: caché semántica, límites de tokens, seguridad de contenido, balanceo de carga y control de costes. Fuente: https://skillsagentes.com/skills/microsoft/azure-skills/azure-aigateway Markdown: https://skillsagentes.com/skills/microsoft/azure-skills/azure-aigateway.md Repositorio: https://github.com/microsoft/azure-skills Autor: microsoft Licencia: MIT Actualizado: hace 2 meses Coste de contexto: 99 tok instalada, 1.3k tok al activarse, 10.1k tok con todos los archivos del bundle Bundle: 9 archivos, 39 KB Permisos que pide: ninguno declarado ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add microsoft/azure-skills --skill azure-aigateway --agent claude-code # Cursor npx -y skills add microsoft/azure-skills --skill azure-aigateway --agent cursor # Codex npx -y skills add microsoft/azure-skills --skill azure-aigateway --agent codex # Gemini CLI npx -y skills add microsoft/azure-skills --skill azure-aigateway --agent gemini # Windsurf npx -y skills add microsoft/azure-skills --skill azure-aigateway --agent windsurf # Cline npx -y skills add microsoft/azure-skills --skill azure-aigateway --agent cline ``` ## Qué hace - Configura Azure API Management como puerta de enlace de IA para gobernar modelos, herramientas MCP y agentes. - Gobierno de modelos: caché semántica, límites de tokens, balanceo de carga y seguimiento del uso de tokens. - Gobierno de herramientas: limitación de tasa para MCP, protección de tools y conversión de una API a MCP. - Gobierno de agentes: seguridad de contenido, detección de jailbreak y filtrado de contenido dañino. ## Cuándo usarla - Se quiere caché semántica, límites de tokens, balanceo de carga o control de coste de IA. - Se quiere limitar la tasa de MCP, detectar jailbreaks o convertir una API en MCP. ## Cuándo no - Para desplegar APIM en sí: el archivo remite a `azure-prepare`. ## Qué la activa - "monta caché semántica para mis LLM" - "limita los tokens por cliente" - "detecta jailbreaks en el gateway" - "convierte esta API a MCP" ## Antes de instalar - El frontmatter declara que requiere la CLI de Azure (`az`) para configurar y probar. - Necesita en el PATH: az, curl - Variables de entorno: GATEWAY_URL - makes network requests - reads environment config ## Archivos - SKILL.md — 5 KB - references/auth-best-practices.md — 6 KB - references/patterns.md — 7 KB - references/policies.md — 9 KB - references/sdk/azure-ai-contentsafety-py.md — 1 KB - references/sdk/azure-ai-contentsafety-ts.md — 1 KB - references/sdk/azure-mgmt-apimanagement-dotnet.md — 1 KB - references/sdk/azure-mgmt-apimanagement-py.md — 1 KB - references/troubleshooting.md — 8 KB ## SKILL.md Reproducido tal cual desde microsoft/azure-skills bajo MIT. Esta sección es el documento original y está en inglés. # Azure AI Gateway Configure Azure API Management (APIM) as an AI Gateway for governing AI models, MCP tools, and agents. > **To deploy APIM**, use the **azure-prepare** skill. See [APIM deployment guide](https://learn.microsoft.com/azure/api-management/get-started-create-service-instance). ## When to Use This Skill | Category | Triggers | |----------|----------| | **Model Governance** | "semantic caching", "token limits", "load balance AI", "track token usage" | | **Tool Governance** | "rate limit MCP", "protect my tools", "configure my tool", "convert API to MCP" | | **Agent Governance** | "content safety", "jailbreak detection", "filter harmful content" | | **Configuration** | "add Azure OpenAI backend", "configure my model", "add AI Foundry model" | | **Testing** | "test AI gateway", "call OpenAI through gateway" | --- ## Quick Reference | Policy | Purpose | Details | |--------|---------|---------| | `azure-openai-token-limit` | Cost control | [Model Policies](references/policies.md#token-rate-limiting) | | `azure-openai-semantic-cache-lookup/store` | 60-80% cost savings | [Model Policies](references/policies.md#semantic-caching) | | `azure-openai-emit-token-metric` | Observability | [Model Policies](references/policies.md#token-metrics) | | `llm-content-safety` | Safety & compliance | [Agent Policies](references/policies.md#content-safety) | | `rate-limit-by-key` | MCP/tool protection | [Tool Policies](references/policies.md#request-rate-limiting) | --- ## Get Gateway Details ```bash # Get gateway URL az apim show --name --resource-group --query "gatewayUrl" -o tsv # List backends (AI models) az apim backend list --service-name --resource-group \ --query "[].{id:name, url:url}" -o table # Get subscription key az apim subscription keys list \ --service-name --resource-group --subscription-id ``` --- ## Test AI Endpoint ```bash GATEWAY_URL=$(az apim show --name --resource-group --query "gatewayUrl" -o tsv) curl -X POST "${GATEWAY_URL}/openai/deployments//chat/completions?api-version=2024-02-01" \ -H "Content-Type: application/json" \ -H "Ocp-Apim-Subscription-Key: " \ -d '{"messages": [{"role": "user", "content": "Hello"}], "max_tokens": 100}' ``` --- ## Common Tasks ### Add AI Backend See [references/patterns.md](references/patterns.md#pattern-1-add-ai-model-backend) for full steps. ```bash # Discover AI resources az cognitiveservices account list --query "[?kind=='OpenAI']" -o table # Create backend az apim backend create --service-name --resource-group \ --backend-id openai-backend --protocol http --url "https://.openai.azure.com/openai" # Grant access (managed identity) az role assignment create --assignee \ --role "Cognitive Services User" --scope ``` ### Apply AI Governance Policy Recommended policy order in ``: 1. **Authentication** - Managed identity to backend 2. **Semantic Cache Lookup** - Check cache before calling AI 3. **Token Limits** - Cost control 4. **Content Safety** - Filter harmful content 5. **Backend Selection** - Load balancing 6. **Metrics** - Token usage tracking See [references/policies.md](references/policies.md#combining-policies) for complete example. --- ## Troubleshooting | Issue | Solution | |-------|----------| | Token limit 429 | Increase `tokens-per-minute` or add load balancing | | No cache hits | Lower `score-threshold` to 0.7 | | Content false positives | Increase category thresholds (5-6) | | Backend auth 401 | Grant APIM "Cognitive Services User" role | See [references/troubleshooting.md](references/troubleshooting.md) for details. --- ## References - [**Detailed Policies**](references/policies.md) - Full policy examples - [**Configuration Patterns**](references/patterns.md) - Step-by-step patterns - [**Troubleshooting**](references/troubleshooting.md) - Common issues - [AI-Gateway Samples](https://github.com/Azure-Samples/AI-Gateway) - [GenAI Gateway Docs](https://learn.microsoft.com/azure/api-management/genai-gateway-capabilities) ## SDK Quick References - **Content Safety**: [Python](references/sdk/azure-ai-contentsafety-py.md) | [TypeScript](references/sdk/azure-ai-contentsafety-ts.md) - **API Management**: [Python](references/sdk/azure-mgmt-apimanagement-py.md) | [.NET](references/sdk/azure-mgmt-apimanagement-dotnet.md) ## Dónde encaja - Categoría: [Desarrollo de APIs](https://skillsagentes.com/categorias/desarrollo-apis.md) — Diseña, prueba y documenta APIs HTTP y GraphQL. - Creador: [microsoft](https://skillsagentes.com/creators/microsoft.md) — 43 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)