AI Gateway 实验室
基于 Azure API Management 与 Microsoft Foundry 的动手实验集,帮助企业为 AI 模型、MCP 工具与智能体构建安全、可观测、可控成本的网关层。
证据显示各实验通过Bicep部署到用户Azure订阅,且要求Contributor+RBAC Administrator角色,权限偏宽,不满足最小权限;实验会创建计费资源,确认与回滚仅靠说明中提到的cleanup notebook,未见强制确认机制;数据流经APIM网关并在文档中说明,透明度尚可;敏感数据用.env与OAuth流管理但未见密钥轮换或泄露防护说明;依赖部分锁定(mcp==1.21.2、semantic-kernel==1.33.0)且配置CodeQL扫描,依赖安全处理合格;版权归属Microsoft、MIT许可证清晰。
根环境与各实验独立pyproject的分层设计一致且互不冲突,说明维护者有意识保持自洽;根依赖多数未锁定版本,可重现性受限但按实验锁定部分弥补;CI中nbchecks.py强制检查notebook无存储输出,属于可验证的质量控制;错误处理信息仅见CI脚本, notebooks 内部的失败提示无法从静态证据评估,扣分。
面向学习/评估AI网关的工程师,场景(模型、工具、Agent、MCP、A2A)覆盖清晰;但作为实验集合而非可复用Agent产品,能力边界与触发精度缺乏明确声明,扣分;环境适配良好(uv、Python 3.12、Codespaces、per-lab环境)。
信息架构清晰(labs/tools/skills分层、表格导航、外部文档链接);安装说明具体可执行(uv sync、内核选择);命名稳定(目录名与实验名一致);示例丰富(30+实验、视频、技能);许可证为MIT且文件完整,满分;但无CHANGELOG、无已知限制文档、根版本固定0.1.0且无发布流程说明,扣分;CONTRIBUTING.md存在,维护责任指向Azure-Samples组织。
产出为可运行的notebook+Bicep+策略,对学习AI网关模式有明确边际价值,且含mock server降低实验门槛;但每个实验需在用户Azure订阅部署真实计费资源,成本收益比依赖用户自行承担,仓库未给出各实验成本预估,扣分。
README中的关键主张(网关能力、Well-Architected对齐)均链接到Microsoft Learn文档与视频,可追溯;静态证据与文档、CI配置、依赖清单相互印证;事实陈述与宣传性表述(如enterprise-grade)基本可区分,但仍有个别营销性措辞未加证明。
- 实验要求订阅级Contributor+RBAC Administrator权限,并会部署计费的Azure资源,运行前请确认配额与成本上限。
- 根依赖大多未锁定版本,可重现性依赖各实验自身的pyproject;生产化使用前请自行审计并锁定依赖。
- 密钥通过.env管理,仓库未见密钥轮换与泄露检测指引,请勿将真实生产凭据放入实验环境。
- 本仓库是实验/教学集合,非可复用Agent产品;发布者未经FollowAgents企业注册库验证,身份视为未知。
这个 Agent 能做什么,适合哪些场景?
AI Gateway Labs 是 Azure-Samples 下的一个 MIT 许可实验仓库,包含 30 多个以 Jupyter Notebook 形式交付的动手实验,每个实验配有 Bicep 基础设施模板和 Azure API Management(APIM)策略 XML。实验覆盖三大主题:模型治理(后端池负载均衡、令牌限流、语义缓存、模型路由、FinOps 配额管理)、工具集成(MCP 协议、MCP 客户端授权、函数调用、实时语音加 MCP)以及智能体编排(Foundry Agent Service、OpenAI Agents SDK、Gemini MCP、A2A 智能体)。部署边界是用户自己的 Azure 订阅:通过 uv 同步 Python 环境、克隆仓库后在 VS Code 中逐个运行 Notebook,由 Notebook 调用 Azure CLI 与 Bicep 部署 APIM 实例和模型后端。仓库还附带 Copilot Agent Skills(lab-creator、apim-bicep、apim-policies 等),用于 AI 辅助生成新实验。它适合评估'是否应采用 APIM 作为 AI 网关'的架构师与平台团队,而非一个可直接安装运行的开箱即用产品。
仓库本身是一组可执行的学习与评估资产。每个实验室(如 labs/backend-pool-load-balancing/backend-pool-load-balancing.ipynb)读取用户配置的 Azure 订阅凭据,通过 Bicep 模板部署 APIM 实例与 Azure OpenAI / Foundry 模型后端,随后运行 Jupyter Notebook 步骤,配置并调用 APIM 策略(令牌限流、语义缓存、模型路由、内容安全过滤、OAuth),最后在 Notebook 中发出真实推理请求并查看令牌指标、日志与追踪输出。tools/ 目录提供追踪、流式响应、限流测试、OpenAI API 模拟服务器和 OAuth 客户端等辅助 Notebook。Copilot 技能(lab-creator、apim-bicep、apim-terraform、apim-policies、apim-kql、mcp-builder)在 VS Code 中根据提示词生成新实验室的 Notebook、Bicep、策略 XML、README 与清理脚本。
- 平台工程团队在将生产 AI 工作负载迁入 APIM 之前,用后端池负载均衡与模型路由实验评估多模型高可用方案。
- FinOps 或成本负责人需要为 AI 用量建立预算与配额体系,可用 FinOps Framework 实验验证令牌限流与自动配额控制。
- 开发者计划在智能体中接入 MCP 工具,可用 MCP 与 MCP 客户端授权实验学习在网关层管理 OAuth 凭据。
- 架构师评估语义缓存是否值得投入,可运行 semantic-caching 实验对比向量相似度缓存的成本与延迟收益。
- 企业需要让 AI 网关符合 Azure Well-Architected Framework,可按安全、可靠性、性能、运维、成本五个支柱对应的实验组合落地。
- 团队想快速起草自己的网关实验室,可在 VS Code 中使用内置 Copilot 技能(如 lab-creator)生成含 Notebook、Bicep 和策略的完整骨架。
这个 Agent 有哪些优点和局限?
- 由微软官方 Azure-Samples 组织维护,实验遵循 Azure Well-Architected Framework 五大支柱设计。
- 覆盖面罕见地完整:从模型治理(限流、缓存、路由)到 MCP/A2A/多框架智能体(OpenAI Agents SDK、Autogen、Gemini)共 30+ 实验。
- 每个实验都是可执行的端到端资产,包含 Notebook、Bicep 基础设施模板与 APIM 策略 XML,可直接部署到自己的订阅验证。
- 附带 Copilot Agent Skills 和配套电子书、研讨会、会议视频等学习资源,便于团队规模化推广。
- 深度绑定 Azure 生态:APIM、Azure OpenAI、Foundry、Bicep 缺一不可,无法在 AWS、GCP 或纯本地环境中复现。
- 需要拥有 Contributor 和 RBAC Administrator 权限的付费 Azure 订阅,实验会产生部署与推理成本,具体费用未在源中说明。
- 这是实验/样例仓库而非可安装产品,没有生产级打包(如 Docker 镜像或 Helm 图表),采纳后需自行工程化。
- 运行完整实验链路涉及 Python、uv、Azure CLI、VS Code 等多个工具链环节,初始环境搭建有一定摩擦。
如何安装或部署这个 Agent?
前置条件:Python 3.12+、uv 包管理器(Linux/macOS:curl -LsSf https://astral.sh/uv/install.sh | sh;Windows:powershell -c "irm https://astral.sh/uv/install.ps1 | iex")、带 Jupyter 扩展的 VS Code、拥有 Contributor 和 RBAC Administrator 角色的 Azure 订阅、已登录的 Azure CLI。安装:git clone https://github.com/Azure-Samples/AI-Gateway.git && cd AI-Gateway && uv sync && uv pip install -r pyproject.toml && code .。也可在 GitHub Codespaces 中直接打开。
如何使用这个 Agent?
在 VS Code 中打开任一实验室 Notebook(如 labs/token-rate-limiting/token-rate-limiting.ipynb),选择 uv sync 创建的 .venv 作为 Jupyter 内核,按单元格逐步执行:先部署 Bicep 模板创建 APIM 与模型后端,再运行调用 APIM 端点的推理测试,最后在 Azure 中查看令牌指标与日志。完成后运行各实验室附带的清理 Notebook 释放资源。