[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Azure-Samples--AI-Gateway":3,"tool-Azure-Samples--AI-Gateway":64},[4,17,27,35,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",138956,2,"2026-04-05T11:33:21",[13,15,26],"语言模型",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":23,"last_commit_at":33,"category_tags":34,"status":16},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,"2026-04-03T11:11:01",[13,14,15],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":23,"last_commit_at":41,"category_tags":42,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,43,44,45,15,46,26,13,47],"数据工具","视频","插件","其他","音频",{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":10,"last_commit_at":54,"category_tags":55,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,26,46],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":10,"last_commit_at":62,"category_tags":63,"status":16},2181,"OpenHands","OpenHands\u002FOpenHands","OpenHands 是一个专注于 AI 驱动开发的开源平台，旨在让智能体（Agent）像人类开发者一样理解、编写和调试代码。它解决了传统编程中重复性劳动多、环境配置复杂以及人机协作效率低等痛点，通过自动化流程显著提升开发速度。\n\n无论是希望提升编码效率的软件工程师、探索智能体技术的研究人员，还是需要快速原型验证的技术团队，都能从中受益。OpenHands 提供了灵活多样的使用方式：既可以通过命令行（CLI）或本地图形界面在个人电脑上轻松上手，体验类似 Devin 的流畅交互；也能利用其强大的 Python SDK 自定义智能体逻辑，甚至在云端大规模部署上千个智能体并行工作。\n\n其核心技术亮点在于模块化的软件智能体 SDK，这不仅构成了平台的引擎，还支持高度可组合的开发模式。此外，OpenHands 在 SWE-bench 基准测试中取得了 77.6% 的优异成绩，证明了其解决真实世界软件工程问题的能力。平台还具备完善的企业级功能，支持与 Slack、Jira 等工具集成，并提供细粒度的权限管理，适合从个人开发者到大型企业的各类用户场景。",70612,"2026-04-05T11:12:22",[26,15,13,45],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":80,"owner_email":80,"owner_twitter":80,"owner_website":81,"owner_url":82,"languages":83,"stars":123,"forks":124,"last_commit_at":125,"license":126,"difficulty_score":127,"env_os":128,"env_gpu":128,"env_ram":128,"env_deps":129,"category_tags":134,"github_topics":135,"view_count":23,"oss_zip_url":80,"oss_zip_packed_at":80,"status":16,"created_at":147,"updated_at":148,"faqs":149,"releases":185},3272,"Azure-Samples\u002FAI-Gateway","AI-Gateway","Labs to explore AI Models, MCP servers, and Agents with the AI Gateway powered by Azure API Management and Microsoft Foundry 🚀","AI-Gateway 是一个由 Azure API Management 和 Microsoft Foundry 驱动的企业级开源网关，旨在帮助开发者高效管理 AI 模型、工具（MCP 服务器）及智能体（Agents）。在构建生产级 AI 应用时，单纯调用模型接口往往难以兼顾安全、稳定性与成本控制，而 AI-Gateway 正是为了解决这一痛点而生。\n\n它通过提供 OAuth 2.0 认证、内容安全过滤等机制保障系统安全；利用负载均衡、语义缓存和智能路由技术提升响应性能并降低延迟；同时内置详细的 Token 指标监控与配额管理功能，帮助团队有效掌控 AI 支出。此外，它还原生支持模型上下文协议（MCP），让外部工具接入更加灵活便捷。\n\n该项目特别适合需要构建高可用、可观测且成本可控的 AI 应用的开发者和架构师使用。其最大的亮点在于提供了 30 多个实操实验室（Labs），每个实验室都包含完整的 Jupyter 笔记本教程、基础设施模板及策略配置，让用户能一步步亲手部署并掌握从流量治理到智能体编排的各项高级能力。无论是希望优化现有 AI 服务的企业团队，还是想要深入探索大模型落地最佳实","AI-Gateway 是一个由 Azure API Management 和 Microsoft Foundry 驱动的企业级开源网关，旨在帮助开发者高效管理 AI 模型、工具（MCP 服务器）及智能体（Agents）。在构建生产级 AI 应用时，单纯调用模型接口往往难以兼顾安全、稳定性与成本控制，而 AI-Gateway 正是为了解决这一痛点而生。\n\n它通过提供 OAuth 2.0 认证、内容安全过滤等机制保障系统安全；利用负载均衡、语义缓存和智能路由技术提升响应性能并降低延迟；同时内置详细的 Token 指标监控与配额管理功能，帮助团队有效掌控 AI 支出。此外，它还原生支持模型上下文协议（MCP），让外部工具接入更加灵活便捷。\n\n该项目特别适合需要构建高可用、可观测且成本可控的 AI 应用的开发者和架构师使用。其最大的亮点在于提供了 30 多个实操实验室（Labs），每个实验室都包含完整的 Jupyter 笔记本教程、基础设施模板及策略配置，让用户能一步步亲手部署并掌握从流量治理到智能体编排的各项高级能力。无论是希望优化现有 AI 服务的企业团队，还是想要深入探索大模型落地最佳实践的技术人员，都能从中获得切实可行的解决方案。","\u003C!-- markdownlint-disable MD033 -->\n\n\u003Cdiv align=\"center\">\n\n# ✨ AI Gateway Labs\n[![Open Source](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FOpen%20Source-❤️-blue)](https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway)\n[![GitHub Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FAzure-Samples\u002FAI-Gateway?style=social)](https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fstargazers)\n[![Open in GitHub Codespaces](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FOpen%20in-Codespaces-orange?logo=github)](https:\u002F\u002Fcodespaces.new\u002FAzure-Samples\u002FAI-Gateway)\n\n\n[![AI-Gateway Labs](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_3454baab97b6.png)](http:\u002F\u002Faka.ms\u002Fai-gateway\u002Flabs)\n\n### Explore the enterprise-grade gateway for managing AI Models, Tools, and Agents\n\n\u003Cbr\u002F>\n\n[![AI-Gateway flow](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_0217777646ad.gif)](http:\u002F\u002Faka.ms\u002Fai-gateway\u002Flabs)\n\n[![Azure](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPowered%20by-Azure%20API%20Management-0078D4)](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fapi-management\u002Fgenai-gateway-capabilities)\n\n\u003C\u002Fdiv>\n\n## Why AI Gateway?\n\nBuilding production-ready AI applications requires more than just calling model APIs. You need **security**, **reliability**, **observability**, and **cost control**—without slowing down innovation.\n\n[**AI Gateway**](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fapi-management\u002Fgenai-gateway-capabilities) powered by [Azure API Management](https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fapi-management\u002F) provides:\n\n- 🔐 **Security** — OAuth 2.0, managed identities, content safety filtering\n- ⚡ **Performance** — Load balancing, semantic caching, request routing\n- 📊 **Observability** — Token metrics, built-in logging, tracing\n- 💰 **Cost Control** — Rate limiting, quota management, FinOps framework\n- 🔌 **Extensibility** — MCP protocol support, function calling, multi-model routing\n\n## 📚 Explore the Labs\n\n> **🔗 Browse all 30+ labs at [aka.ms\u002Fai-gateway\u002Flabs](http:\u002F\u002Faka.ms\u002Fai-gateway\u002Flabs)**\n\nEach lab is a hands-on Jupyter notebook with step-by-step instructions, Bicep infrastructure templates, and APIM policies you can deploy to your Azure subscription.\n\n## 🧠 AI Gateway for Models\n\nManage and control access to Large Language Models with enterprise-grade policies.\n\n| Lab | Description |\n|-----|-------------|\n| [**Backend Pool Load Balancing**](labs\u002Fbackend-pool-load-balancing\u002Fbackend-pool-load-balancing.ipynb) | Distribute requests across multiple model endpoints |\n| [**Token Rate Limiting**](labs\u002Ftoken-rate-limiting\u002Ftoken-rate-limiting.ipynb) | Control token consumption with rate limiting policies |\n| [**Semantic Caching**](labs\u002Fsemantic-caching\u002Fsemantic-caching.ipynb) | Cache responses using vector similarity for faster, cheaper completions |\n| [**Model Routing**](labs\u002Fmodel-routing\u002Fmodel-routing.ipynb) | Route requests to different backends based on model and version |\n| [**FinOps Framework**](labs\u002Ffinops-framework\u002Ffinops-framework.ipynb) | Manage AI budgets with automated quota controls |\n\n## 🔧 AI Gateway for Tools\n\nEnable secure tool access with MCP protocol and function calling capabilities.\n\n| Lab | Description |\n|-----|-------------|\n| [**Model Context Protocol (MCP)**](labs\u002Fmodel-context-protocol\u002Fmodel-context-protocol.ipynb) | Plug & play tools with OAuth credential management |\n| [**MCP Client Authorization**](labs\u002Fmcp-client-authorization\u002Fmcp-client-authorization.ipynb) | Implement MCP with the client authorization flow |\n| [**Function Calling**](labs\u002Ffunction-calling\u002Ffunction-calling.ipynb) | Use OpenAI function calling with Azure Functions backend |\n| [**Realtime Audio + MCP**](labs\u002Frealtime-mcp-agents\u002Frealtime-mcp-agents.ipynb) | Combine realtime voice API with MCP tools |\n\n## 🤖 AI Gateway for Agents\n\nBuild and control agentic applications with orchestration frameworks.\n\n| Lab | Description |\n|-----|-------------|\n| [**AI Agent Service**](labs\u002Fai-agent-service\u002Fai-agent-service-v2.ipynb) | Explore Foundry Agent Service with multi-service control |\n| [**OpenAI Agents SDK**](labs\u002Fopenai-agents\u002Fopenai-agents.ipynb) | Use OpenAI Agents with Azure OpenAI and APIM-managed tools |\n| [**Gemini MCP Agents**](labs\u002Fgemini-mcp-agents\u002Fgemini-mcp-agents.ipynb) | Integrate Google Gemini models with MCP tools |\n| [**A2A Enabled Agents**](labs\u002Fmcp-a2a-agents\u002Fmcp-agent-as-a2a-server.ipynb) | A2A-enabled Agents with models and MCP plug & play tools |\n\n## 🚀 Quick Start\n\n### Prerequisites\n\n- [Python 3.12+](https:\u002F\u002Fwww.python.org\u002F)\nPython environment with the requirements.txt or run pip install -r requirements.txt in your terminal\n- [Python environment](https:\u002F\u002Fcode.visualstudio.com\u002Fdocs\u002Fpython\u002Fenvironments#_creating-environments) with the [requirements.txt](requirements.txt) or run `pip install -r requirements.txt` in your terminal\n- [VS Code](https:\u002F\u002Fcode.visualstudio.com\u002F) with [Jupyter extension](https:\u002F\u002Fmarketplace.visualstudio.com\u002Fitems?itemName=ms-toolsai.jupyter)\n- [Azure Subscription](https:\u002F\u002Fazure.microsoft.com\u002Ffree\u002F) with Contributor + RBAC Administrator roles\n- [Azure CLI](https:\u002F\u002Flearn.microsoft.com\u002Fcli\u002Fazure\u002Finstall-azure-cli) authenticated to your subscription\n\n### Get Started\n\n```bash\n# Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway.git\ncd AI-Gateway\n\n# Open VS Code and start with a lab\ncode .\n```\n\nOr launch instantly with **[GitHub Codespaces](https:\u002F\u002Fcodespaces.new\u002FAzure-Samples\u002FAI-Gateway\u002Ftree\u002Fmain)** ☁️\n\n## 🔨 Developer Tools\n\nThe [`tools\u002F`](tools\u002F) folder provides utilities for testing and development:\n\n| Tool | Description |\n|------|-------------|\n| [**Tracing**](tools\u002Ftracing.ipynb) | Invoke AI Foundry APIs with tracing enabled |\n| [**Streaming**](tools\u002Fstreaming.ipynb) | Test streaming responses from AI models |\n| [**Rate Limit Tester**](tools\u002Frate-limit.ipynb) | Validate rate limiting configurations |\n| [**Mock Server**](tools\u002Fmock-server\u002Fmock-server.ipynb) | OpenAI API mock for local development and testing |\n| [**OAuth Client**](tools\u002Fclient-oauth.ipynb) | Test OAuth authentication flows |\n\n## 👩‍💻 Build Your Own Labs with AI\n\nThis repository includes **Copilot Agent Skills** that help you create new labs using AI-assisted development in VS Code.\n\n### Available Skills\n\n| Skill | Description |\n|-------|-------------|\n| `lab-creator` | Scaffolds new labs with notebooks, Bicep, and policies |\n| `apim-bicep` | Generates Azure Bicep templates for APIM resources |\n| `apim-terraform` | Generates Terraform configurations for APIM |\n| `apim-policies` | Creates APIM XML policies for AI gateway scenarios |\n| `apim-kql` | Generates queries in KQL to control models, tools and agents |\n| `mcp-builder` | Builds MCP servers for tool integration |\n\n### Example: Create a New Lab\n\nOpen this repo in VS Code with GitHub Copilot and use this prompt:\n\n```\nCreate a new lab called \"multi-model-failover\" that demonstrates how to \nimplement automatic failover between different AI models when the primary \nmodel is unavailable or throttled. Include:\n- A backend pool with priority-based routing\n- Retry policy with exponential backoff\n- Circuit breaker pattern for unhealthy backends\n- Built-in LLM logging to track usage across all backends\n- Test the model with a LangChain agent: https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flangchain\u002Fagents\nUse gpt-4.1-mini as primary and gpt-4.1-nano as fallback, deploy to Sweden Central.\n```\n\nCopilot will generate the complete lab structure including:\n- 📓 Jupyter notebook with step-by-step instructions\n- 🦾 Bicep infrastructure template\n- ⚙️ APIM policy XML\n- 📖 README documentation\n- 🧹 Cleanup notebook\n\n## 🏛️ Well-Architected Framework\n\nLabs are designed following [Azure Well-Architected Framework](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fwell-architected\u002Fwhat-is-well-architected-framework) principles:\n\n| Pillar | Labs |\n|--------|------|\n| **Security** | Access controlling, Content safety, Private connectivity |\n| **Reliability** | Backend pool load balancing, Token rate limiting |\n| **Performance** | Semantic caching, Model routing |\n| **Operations** | Built-in logging, Token metrics emitting |\n| **Cost** | FinOps framework, Semantic caching |\n\n## 📕 Enterprise AI Gateway e-Book\n\n\u003Cimg align=\"left\" width=\"200\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_2ee0b0cff786.png\" alt=\"Enterprise AI Gateway eBook\">\n\nDownload the \u003Ca href=\"docs\u002Fmedia\u002FEnterprise%20AI%20Gateway%20eBook%20-%20Feb%202026.pdf\">Enterprise AI Gateway e-Book\u003C\u002Fa> for comprehensive end-to-end view of the Enterprise AI Gateway pattern, explaining why a centralized governance layer is essential for organizations adopting AI at scale and how it can be practically implemented using Azure API Management and Microsoft Foundry.  \nIt describes the AI Gateway as a control plane that mediates all interactions between AI apps and agents and the underlying models, data, and tools, enabling consistent enforcement of security, safety, cost controls, resiliency, scalability, observability, and governance. Overall, the e-Book positions the Enterprise AI Gateway as a foundational architectural component that allows enterprises to innovate rapidly with AI while maintaining trust, compliance, visibility, and control.\n\u003Cbr clear=\"left\"\u002F>\n\n## 🎬 Conferences & Webcasts\n\nLearn from experts through these videos covering AI Gateway concepts and implementations.\n\n| | | | |\n|:---:|:---:|:---:|:---:|\n| [![Build 2025](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_9d99769f39d6.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=TG4ZULpS81w) | [![Reactor Jan 2025](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_c5c439ec9a56.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=yNkK6q1vFF8) | [![MCP Workflows](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_03b13ca50f3e.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ian7K6QKgJQ) | [![Supercharge your API's](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_e1ef48481fc4.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ou3QEAcxW3o)\n[![Ignite 2024](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_b32958ccb8f3.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=HuPNgrjMcuI) | [![Reactor Nov 2024](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_fd6a27e8e6f4.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=gOopye0Hwo4) | [![Content Safety](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_bc080b3356f7.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=WCtcBL4GZXs)| [![Semantic Caching](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_c8138d1fe5ca.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=8Fzu8kF47Bw)\n[![Token Emit Metric](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_722bad584a1f.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=2pW6Z2VwHmQ) | [![GenAI Gateway](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_258f8604d354.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=dBTCgzTe900) | [![Control AI Services](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_0896f1d14941.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=yYt1-a7RocU) | [![John Savill](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_837f0a77176d.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=l_8dTUwrqNw)\n[![Houssem Dellai](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_b28a64b6e806.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=C17qTB3fL3Y) | [![Turbo360](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_0f014a952d58.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=QRCHKN9PX7o) | [![A2A MCP Multiagents](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_ef698e7f8323.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ylzdM1KangA) | | |\n\n## 📖 Resources\n\n- 📘 [AI Gateway Documentation](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fapi-management\u002Fgenai-gateway-capabilities)\n- 🎓 [AI Gateway Workshop](https:\u002F\u002Faka.ms\u002Fai-gateway\u002Fworkshop)\n- ⚙️ [APIM Samples](https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FApim-Samples)\n- 📚 [APIM Learning Modules](https:\u002F\u002Flearn.microsoft.com\u002Ftraining\u002Fbrowse\u002F?products=azure-api-management)\n- 💡 [Landing Zone Accelerator](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fcloud-adoption-framework\u002Fscenarios\u002Fapp-platform\u002Fapi-management\u002Flanding-zone-accelerator)\n- 🏛️ [Foundry Ctadel](https:\u002F\u002Faka.ms\u002Ffoundry-citadel)\n- 📰 [API Management News](https:\u002F\u002Ftechcommunity.microsoft.com\u002Ftag\u002FAPI%20Management)\n\n## 🤝 Contributing\n\nContributions are welcome! Please read [CONTRIBUTING.md](CONTRIBUTING.MD) for guidelines.\n\n## ⚠️ Disclaimer\n\n> This software is provided for demonstration purposes only. It is not intended to be relied upon for any purpose. The creators make no representations or warranties about the completeness, accuracy, reliability, or suitability of this software.\n\n\n\u003Cdiv align=\"center\">\n\n[![APIM Love](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAPIM%20Love-❤️-blue)](http:\u002F\u002Faka.ms\u002Fapimlove)\n\n\u003C\u002Fdiv>\n","\u003C!-- markdownlint-disable MD033 -->\n\n\u003Cdiv align=\"center\">\n\n# ✨ AI 网关实验室\n[![开源](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FOpen%20Source-❤️-blue)](https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway)\n[![GitHub 星标](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FAzure-Samples\u002FAI-Gateway?style=social)](https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fstargazers)\n[![在 GitHub Codespaces 中打开](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FOpen%20in-Codespaces-orange?logo=github)](https:\u002F\u002Fcodespaces.new\u002FAzure-Samples\u002FAI-Gateway)\n\n\n[![AI 网关实验室](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_3454baab97b6.png)](http:\u002F\u002Faka.ms\u002Fai-gateway\u002Flabs)\n\n### 探索用于管理 AI 模型、工具和代理的企业级网关\n\n\u003Cbr\u002F>\n\n[![AI 网关流程](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_0217777646ad.gif)](http:\u002F\u002Faka.ms\u002Fai-gateway\u002Flabs)\n\n[![Azure](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPowered%20by-Azure%20API%20Management-0078D4)](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fapi-management\u002Fgenai-gateway-capabilities)\n\n\u003C\u002Fdiv>\n\n## 为什么选择 AI 网关？\n\n构建生产就绪的 AI 应用程序不仅仅需要调用模型 API。您还需要**安全性**、**可靠性**、**可观测性**和**成本控制**——同时不拖慢创新步伐。\n\n由 [Azure API Management](https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fapi-management\u002F) 提供支持的 **AI 网关** 提供：\n\n- 🔐 **安全性** — OAuth 2.0、托管标识、内容安全过滤\n- ⚡ **性能** — 负载均衡、语义缓存、请求路由\n- 📊 **可观测性** — 令牌指标、内置日志记录、追踪\n- 💰 **成本控制** — 速率限制、配额管理、FinOps 框架\n- 🔌 **可扩展性** — 支持 MCP 协议、函数调用、多模型路由\n\n## 📚 探索实验室\n\n> **🔗 浏览所有 30 多个实验室，请访问 [aka.ms\u002Fai-gateway\u002Flabs](http:\u002F\u002Faka.ms\u002Fai-gateway\u002Flabs)**\n\n每个实验室都是一个动手实践的 Jupyter 笔记本，包含分步说明、Bicep 基础架构模板以及可部署到您的 Azure 订阅中的 APIM 策略。\n\n## 🧠 AI 网关与模型\n\n使用企业级策略管理和控制对大型语言模型的访问。\n\n| 实验室 | 描述 |\n|-----|-------------|\n| [**后端池负载均衡**](labs\u002Fbackend-pool-load-balancing\u002Fbackend-pool-load-balancing.ipynb) | 将请求分发到多个模型端点 |\n| [**令牌速率限制**](labs\u002Ftoken-rate-limiting\u002Ftoken-rate-limiting.ipynb) | 使用速率限制策略控制令牌消耗 |\n| [**语义缓存**](labs\u002Fsemantic-caching\u002Fsemantic-caching.ipynb) | 使用向量相似度缓存响应，以实现更快、更经济的完成 |\n| [**模型路由**](labs\u002Fmodel-routing\u002Fmodel-routing.ipynb) | 根据模型和版本将请求路由到不同的后端 |\n| [**FinOps 框架**](labs\u002Ffinops-framework\u002Ffinops-framework.ipynb) | 使用自动配额控制管理 AI 预算 |\n\n## 🔧 AI 网关与工具\n\n通过 MCP 协议和函数调用功能，实现安全的工具访问。\n\n| 实验室 | 描述 |\n|-----|-------------|\n| [**模型上下文协议 (MCP)**](labs\u002Fmodel-context-protocol\u002Fmodel-context-protocol.ipynb) | 即插即用工具，配备 OAuth 凭证管理 |\n| [**MCP 客户端授权**](labs\u002Fmcp-client-authorization\u002Fmcp-client-authorization.ipynb) | 使用客户端授权流程实现 MCP |\n| [**函数调用**](labs\u002Ffunction-calling\u002Ffunction-calling.ipynb) | 使用 OpenAI 函数调用功能，并结合 Azure Functions 后端 |\n| [**实时音频 + MCP**](labs\u002Frealtime-mcp-agents\u002Frealtime-mcp-agents.ipynb) | 将实时语音 API 与 MCP 工具相结合 |\n\n## 🤖 AI 网关与代理\n\n借助编排框架构建和控制代理应用程序。\n\n| 实验室 | 描述 |\n|-----|-------------|\n| [**AI 代理服务**](labs\u002Fai-agent-service\u002Fai-agent-service-v2.ipynb) | 探索具有多服务控制能力的 Foundry 代理服务 |\n| [**OpenAI 代理 SDK**](labs\u002Fopenai-agents\u002Fopenai-agents.ipynb) | 将 OpenAI 代理与 Azure OpenAI 和 APIM 管理的工具结合使用 |\n| [**Gemini MCP 代理**](labs\u002Fgemini-mcp-agents\u002Fgemini-mcp-agents.ipynb) | 将 Google Gemini 模型与 MCP 工具集成 |\n| [**A2A 启用的代理**](labs\u002Fmcp-a2a-agents\u002Fmcp-agent-as-a2a-server.ipynb) | 具备 A2A 功能的代理，配备模型和 MCP 即插即用工具 |\n\n## 🚀 快速入门\n\n### 先决条件\n\n- [Python 3.12+](https:\u002F\u002Fwww.python.org\u002F)\nPython 环境需安装 requirements.txt 文件，或在终端运行 `pip install -r requirements.txt`\n- [Python 环境](https:\u002F\u002Fcode.visualstudio.com\u002Fdocs\u002Fpython\u002Fenvironments#_creating-environments) 配置好 [requirements.txt](requirements.txt) 文件，或在终端运行 `pip install -r requirements.txt`\n- [VS Code](https:\u002F\u002Fcode.visualstudio.com\u002F) 并安装 [Jupyter 扩展](https:\u002F\u002Fmarketplace.visualstudio.com\u002Fitems?itemName=ms-toolsai.jupyter)\n- [Azure 订阅](https:\u002F\u002Fazure.microsoft.com\u002Ffree\u002F) 并具备贡献者及 RBAC 管理员角色\n- [Azure CLI](https:\u002F\u002Flearn.microsoft.com\u002Fcli\u002Fazure\u002Finstall-azure-cli) 并已认证登录到您的订阅\n\n### 开始使用\n\n```bash\n# 克隆仓库\ngit clone https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway.git\ncd AI-Gateway\n\n# 打开 VS Code 并从一个实验室开始\ncode .\n```\n\n或者直接使用 **[GitHub Codespaces](https:\u002F\u002Fcodespaces.new\u002FAzure-Samples\u002FAI-Gateway\u002Ftree\u002Fmain)** 一键启动 ☁️\n\n## 🔨 开发者工具\n\n`tools\u002F` 文件夹提供了用于测试和开发的实用工具：\n\n| 工具 | 描述 |\n|------|-------------|\n| [**追踪**](tools\u002Ftracing.ipynb) | 在启用追踪的情况下调用 AI Foundry API |\n| [**流式传输**](tools\u002Fstreaming.ipynb) | 测试来自 AI 模型的流式响应 |\n| [**速率限制测试器**](tools\u002Frate-limit.ipynb) | 验证速率限制配置 |\n| [**模拟服务器**](tools\u002Fmock-server\u002Fmock-server.ipynb) | 用于本地开发和测试的 OpenAI API 模拟服务器 |\n| [**OAuth 客户端**](tools\u002Fclient-oauth.ipynb) | 测试 OAuth 认证流程 |\n\n## 👩‍💻 使用 AI 构建您自己的实验室\n\n此仓库包含 **Copilot Agent Skills**，可帮助您在 VS Code 中利用 AI 辅助开发创建新实验室。\n\n### 可用技能\n\n| 技能 | 描述 |\n|-------|-------------|\n| `lab-creator` | 为新实验室搭建笔记本、Bicep 和策略的框架 |\n| `apim-bicep` | 生成用于 APIM 资源的 Azure Bicep 模板 |\n| `apim-terraform` | 生成用于 APIM 的 Terraform 配置 |\n| `apim-policies` | 创建适用于 AI 网关场景的 APIM XML 策略 |\n| `apim-kql` | 生成 KQL 查询，以控制模型、工具和代理 |\n| `mcp-builder` | 构建用于工具集成的 MCP 服务器 |\n\n### 示例：创建一个新的实验室\n\n在 VS Code 中使用 GitHub Copilot 打开此仓库，并使用以下提示：\n\n```\n创建一个名为“multi-model-failover”的新实验室，演示当主模型不可用或被限流时，如何在不同 AI 模型之间实现自动故障转移。包含：\n- 带有优先级路由的后端池\n- 具有指数退避机制的重试策略\n- 用于检测不健康后端的断路器模式\n- 内置的 LLM 日志记录功能，以跟踪所有后端的使用情况\n- 使用 LangChain 代理测试该模型：https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flangchain\u002Fagents\n以 gpt-4.1-mini 作为主模型，gpt-4.1-nano 作为备用模型，并部署到瑞典中部。\n```\n\nCopilot 将生成完整的实验室结构，包括：\n- 📓 带有分步说明的 Jupyter 笔记本\n- 🦾 Bicep 基础设施模板\n- ⚙️ APIM 策略 XML\n- 📖 README 文档\n- 🧹 清理笔记本\n\n## 🏛️ 良好架构框架\n\n实验室的设计遵循 [Azure 良好架构框架](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fwell-architected\u002Fwhat-is-well-architected-framework) 的原则：\n\n| 支柱 | 实验室 |\n|--------|------|\n| **安全性** | 访问控制、内容安全、私有连接 |\n| **可靠性** | 后端池负载均衡、令牌速率限制 |\n| **性能** | 语义缓存、模型路由 |\n| **运营** | 内置日志记录、令牌指标输出 |\n| **成本** | FinOps 框架、语义缓存 |\n\n## 📕 企业 AI 网关电子书\n\n\u003Cimg align=\"left\" width=\"200\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_2ee0b0cff786.png\" alt=\"Enterprise AI Gateway eBook\">\n\n下载 \u003Ca href=\"docs\u002Fmedia\u002FEnterprise%20AI%20Gateway%20eBook%20-%20Feb%202026.pdf\">企业 AI 网关电子书\u003C\u002Fa>,全面介绍企业 AI 网关模式的端到端视图，解释为什么集中式治理层对于大规模采用 AI 的组织至关重要，以及如何利用 Azure API 管理和 Microsoft Foundry 实际实施这一模式。  \n书中将 AI 网关描述为一个控制平面，介导所有 AI 应用程序和代理与底层模型、数据和工具之间的交互，从而实现对安全性、可靠性、成本控制、弹性、可扩展性、可观测性和治理的一致性执行。总体而言，该电子书将企业 AI 网关定位为一项基础性的架构组件，使企业能够在保持信任、合规、可见性和控制的同时，快速进行 AI 创新。\n\u003Cbr clear=\"left\"\u002F>\n\n## 🎬 会议与网络直播\n\n通过这些涵盖 AI 网关概念和实施的视频，向专家学习。\n\n| | | | |\n|:---:|:---:|:---:|:---:|\n| [![Build 2025](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_9d99769f39d6.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=TG4ZULpS81w) | [![Reactor Jan 2025](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_c5c439ec9a56.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=yNkK6q1vFF8) | [![MCP Workflows](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_03b13ca50f3e.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ian7K6QKgJQ) | [![Supercharge your API's](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_e1ef48481fc4.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ou3QEAcxW3o)\n[![Ignite 2024](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_b32958ccb8f3.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=HuPNgrjMcuI) | [![Reactor Nov 2024](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_fd6a27e8e6f4.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=gOopye0Hwo4) | [![Content Safety](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_bc080b3356f7.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=WCtcBL4GZXs)| [![Semantic Caching](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_c8138d1fe5ca.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=8Fzu8kF47Bw)\n[![Token Emit Metric](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_722bad584a1f.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=2pW6Z2VwHmQ) | [![GenAI Gateway](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_258f8604d354.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=dBTCgzTe900) | [![Control AI Services](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_0896f1d14941.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=yYt1-a7RocU) | [![John Savill](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_837f0a77176d.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=l_8dTUwrqNw)\n[![Houssem Dellai](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_b28a64b6e806.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=C17qTB3fL3Y) | [![Turbo360](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_0f014a952d58.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=QRCHKN9PX7o) | [![A2A MCP Multiagents](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_readme_ef698e7f8323.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ylzdM1KangA) | | |\n\n## 📖 资源\n\n- 📘 [AI 网关文档](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fapi-management\u002Fgenai-gateway-capabilities)\n- 🎓 [AI 网关研讨会](https:\u002F\u002Faka.ms\u002Fai-gateway\u002Fworkshop)\n- ⚙️ [APIM 示例](https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FApim-Samples)\n- 📚 [APIM 学习模块](https:\u002F\u002Flearn.microsoft.com\u002Ftraining\u002Fbrowse\u002F?products=azure-api-management)\n- 💡 [着陆区加速器](https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fcloud-adoption-framework\u002Fscenarios\u002Fapp-platform\u002Fapi-management\u002Flanding-zone-accelerator)\n- 🏛️ [Foundry Ctadel](https:\u002F\u002Faka.ms\u002Ffoundry-citadel)\n- 📰 [API 管理新闻](https:\u002F\u002Ftechcommunity.microsoft.com\u002Ftag\u002FAPI%20Management)\n\n## 🤝 贡献\n\n欢迎贡献！请阅读 [CONTRIBUTING.md](CONTRIBUTING.MD) 以获取相关指南。\n\n## ⚠️ 免责声明\n\n> 本软件仅用于演示目的。它不应用于任何实际用途。创作者不对本软件的完整性、准确性、可靠性或适用性作出任何陈述或保证。\n\n\n\u003Cdiv align=\"center\">\n\n[![APIM Love](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAPIM%20Love-❤️-blue)](http:\u002F\u002Faka.ms\u002Fapimlove)\n\n\u003C\u002Fdiv>","# AI-Gateway 快速上手指南\n\nAI-Gateway 是一个基于 Azure API Management 构建的企业级网关，用于统一管理 AI 模型、工具和智能体（Agents）。它提供了安全性、可靠性、可观测性及成本控制等核心能力，帮助开发者快速构建生产就绪的 AI 应用。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Windows, macOS 或 Linux\n*   **Python**：版本 3.12 或更高 ([下载链接](https:\u002F\u002Fwww.python.org\u002F))\n*   **编辑器**：[VS Code](https:\u002F\u002Fcode.visualstudio.com\u002F) 并安装 [Jupyter 扩展](https:\u002F\u002Fmarketplace.visualstudio.com\u002Fitems?itemName=ms-toolsai.jupyter)\n*   **Azure 账户**：拥有有效的 Azure 订阅，且当前用户具备 `Contributor` 和 `RBAC Administrator` 角色权限\n*   **Azure CLI**：已安装并登录到您的 Azure 订阅 ([安装指南](https:\u002F\u002Flearn.microsoft.com\u002Fcli\u002Fazure\u002Finstall-azure-cli))\n\n> **提示**：如果您希望避免本地环境配置问题，可以直接使用 **[GitHub Codespaces](https:\u002F\u002Fcodespaces.new\u002FAzure-Samples\u002FAI-Gateway\u002Ftree\u002Fmain)** 在云端一键启动开发环境。\n\n## 安装步骤\n\n### 1. 克隆仓库\n打开终端，执行以下命令将项目克隆到本地：\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway.git\ncd AI-Gateway\n```\n\n### 2. 创建虚拟环境并安装依赖\n推荐使用 Python 虚拟环境来管理依赖包：\n\n```bash\n# 创建虚拟环境 (可选，但推荐)\npython -m venv .venv\n\n# 激活虚拟环境\n# Windows:\n.venv\\Scripts\\activate\n# macOS\u002FLinux:\nsource .venv\u002Fbin\u002Factivate\n\n# 安装项目依赖\npip install -r requirements.txt\n```\n\n### 3. 登录 Azure\n确保您已通过 Azure CLI 登录到正确的订阅：\n\n```bash\naz login\naz account set --subscription \"\u003C您的订阅 ID>\"\n```\n\n## 基本使用\n\nAI-Gateway 的核心功能通过一系列 **Jupyter Notebook 实验 (Labs)** 提供。每个实验都包含了完整的代码示例、基础设施模板 (Bicep) 和 API 管理策略。\n\n### 启动开发环境\n在项目根目录下打开 VS Code：\n\n```bash\ncode .\n```\n\n### 运行第一个实验：语义缓存 (Semantic Caching)\n这是一个展示如何利用向量相似度缓存响应以降低延迟和成本的经典示例。\n\n1.  在 VS Code 左侧文件浏览器中，导航至 `labs\u002Fsemantic-caching\u002F` 目录。\n2.  打开 `semantic-caching.ipynb` 文件。\n3.  按照 Notebook 中的步骤依次执行单元格：\n    *   **部署资源**：运行单元格以通过 Bicep 模板在您的 Azure 订阅中部署必要的 API Management 资源。\n    *   **配置策略**：自动应用语义缓存策略。\n    *   **测试效果**：发送重复或相似的请求，观察缓存命中率及令牌消耗的变化。\n\n### 探索更多场景\n您可以根据需求尝试其他核心实验：\n\n| 场景 | 实验路径 | 说明 |\n| :--- | :--- | :--- |\n| **负载均衡** | `labs\u002Fbackend-pool-load-balancing\u002F` | 在多个模型端点间分发请求 |\n| **速率限制** | `labs\u002Ftoken-rate-limiting\u002F` | 基于 Token 消耗量控制访问频率 |\n| **模型路由** | `labs\u002Fmodel-routing\u002F` | 根据模型名称或版本自动路由请求 |\n| **MCP 协议** | `labs\u002Fmodel-context-protocol\u002F` | 集成 Model Context Protocol 以安全调用工具 |\n\n### 使用 Copilot 创建自定义实验\n如果您安装了 GitHub Copilot，可以利用内置的技能快速生成新的实验模板。在 VS Code 聊天窗口中输入类似以下指令：\n\n```text\nCreate a new lab called \"multi-model-failover\" that demonstrates how to \nimplement automatic failover between different AI models when the primary \nmodel is unavailable. Include backend pool with priority-based routing and retry policy.\n```\n\nCopilot 将自动生成包含 Notebook、Bicep 模板和 APIM 策略的完整实验结构。\n\n---\n*注：本工具仅供演示和学习用途。在生产环境中部署前，请务必根据企业安全规范进行审查。*","某金融科技公司正在开发一款面向高净值客户的智能投顾助手，需同时调用多个大模型并集成实时行情查询工具。\n\n### 没有 AI-Gateway 时\n- **成本失控风险**：缺乏统一的令牌（Token）配额管理，个别异常请求或测试流量极易耗尽月度预算，导致核心服务中断。\n- **响应延迟严重**：面对突发的高并发咨询，单一模型端点容易过载，且无法缓存常见的市场解读请求，造成用户等待时间过长。\n- **安全合规隐患**：直接暴露模型 API 密钥给前端应用，难以实施细粒度的身份验证，且缺少内容安全过滤机制，存在输出违规建议的风险。\n- **运维黑盒状态**：无法清晰追踪每个业务线或具体用户的 Token 消耗明细，财务分摊（FinOps）和故障排查全靠人工估算。\n\n### 使用 AI-Gateway 后\n- **精准成本控制**：通过内置的 FinOps 框架和令牌限流策略，自动为不同部门设定预算上限，超额请求被优雅拦截，确保核心业务资金充足。\n- **性能显著提升**：利用语义缓存技术，对相似的市场分析请求直接返回向量匹配结果，结合后端负载均衡，将平均响应速度提升 40%。\n- **企业级安全防护**：基于 OAuth 2.0 统一接管身份认证，并在网关层自动过滤敏感金融数据与不当内容，无需修改业务代码即可满足合规要求。\n- **全链路可观测**：提供详细的 Token 度量日志与追踪视图，实时监控各模型调用成本与延迟，让每一分算力支出都清晰可查。\n\nAI-Gateway 将原本分散脆弱的 AI 调用架构升级为安全、可控且高效的企业级中枢，让团队能专注于业务创新而非底层运维。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAzure-Samples_AI-Gateway_3454baab.png","Azure-Samples","Azure Samples","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FAzure-Samples_101a6251.png","Microsoft Azure code samples and examples in .NET, Java, Python, JavaScript, TypeScript, PHP and Ruby",null,"https:\u002F\u002Flearn.microsoft.com\u002Fazure","https:\u002F\u002Fgithub.com\u002FAzure-Samples",[84,88,92,96,100,104,108,112,116,119],{"name":85,"color":86,"percentage":87},"Jupyter Notebook","#DA5B0B",58.2,{"name":89,"color":90,"percentage":91},"Bicep","#519aba",29.4,{"name":93,"color":94,"percentage":95},"Python","#3572A5",9,{"name":97,"color":98,"percentage":99},"PowerShell","#012456",1.1,{"name":101,"color":102,"percentage":103},"TypeScript","#3178c6",0.6,{"name":105,"color":106,"percentage":107},"Dockerfile","#384d54",0.5,{"name":109,"color":110,"percentage":111},"HCL","#844FBA",0.4,{"name":113,"color":114,"percentage":115},"Mermaid","#ff3670",0.3,{"name":117,"color":118,"percentage":115},"JavaScript","#f1e05a",{"name":120,"color":121,"percentage":122},"CSS","#663399",0.1,897,404,"2026-04-03T12:10:38","MIT",4,"未说明",{"notes":130,"python":131,"dependencies":132},"该项目是基于 Azure API Management 的企业级 AI 网关实验集合，主要运行环境为云端 Azure 服务。本地运行实验需要安装 Python 3.12+、VS Code 及 Jupyter 扩展、已认证的 Azure CLI，并拥有具备贡献者和 RBAC 管理员角色的 Azure 订阅。项目通过 GitHub Codespaces 支持云端即时启动，无需复杂的本地环境配置。","3.12+",[133],"requirements.txt 中定义的依赖库",[15,45],[136,137,138,139,140,141,142,143,144,145,146],"apimanagement","azure","openai","openai-api","genai","agents","autogen","foundry","mcp","mcp-server","a2a","2026-03-27T02:49:30.150509","2026-04-06T06:52:12.162577",[150,155,160,165,170,175,180],{"id":151,"question_zh":152,"answer_zh":153,"source_url":154},15023,"运行 Bicep 文件时遇到资源类型不可用或语法错误怎么办？","这通常是因为 Bicep 版本过旧，无法识别最新的资源类型定义。请运行命令 `az bicep upgrade` 升级到最新版本的 Bicep。升级后重新运行即可解决大部分此类警告和错误。","https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fissues\u002F65",{"id":156,"question_zh":157,"answer_zh":158,"source_url":159},15024,"在缓存实验中，为什么不同的问题总是返回相同的缓存结果？","这是因为示例代码中设置的语义相似度阈值（score threshold）过高，导致系统误判不同问题为相似内容。解决方法是降低该阈值，例如将其调整为 `0.05`，这样系统就能更准确地区分不同的查询并返回相应结果。","https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fissues\u002F63",{"id":161,"question_zh":162,"answer_zh":163,"source_url":164},15025,"AI Gateway 是否支持集成 AWS Bedrock 以实现多云架构？","是的，项目已经提供了相关支持。可以通过查看仓库中的 `aws-bedrock` 实验室（lab）来获取具体的集成方案和配置示例，该实验展示了如何通过 APIM 代理请求到 AWS Bedrock 端点。","https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fissues\u002F145",{"id":166,"question_zh":167,"answer_zh":168,"source_url":169},15026,"安装 Prompt Flow 后运行配置代码时报错或提示未正确安装，如何解决？","这通常是由于 Python 环境冲突导致的。建议创建一个新的虚拟环境，首先安装项目依赖（`pip install -r requirements.txt`），然后再单独安装 Prompt Flow 库。避免在全局环境或混杂的环境中直接安装。","https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fissues\u002F134",{"id":171,"question_zh":172,"answer_zh":173,"source_url":174},15027,"负载均衡策略 XML 中的重试条件报错或不再准确，应如何修正？","旧的策略依赖于 `StatusReason` 的具体文本匹配，但这已不再准确。应将条件简化为仅检查状态码。将条件更新为：`condition=\"@(context.Response.StatusCode == 429 || context.Response.StatusCode == 503)\"`。最新的策略示例可在 APIM Samples 仓库的 load-balancing 目录中找到。","https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fissues\u002F262",{"id":176,"question_zh":177,"answer_zh":178,"source_url":179},15028,"部署 API Manager 时因未定义的 url 和 protocol 导致失败，如何处理？","确保你使用的是最新版本的 Azure CLI（az command line）。维护者指出该问题已在后续的 PR（如 #78）中修复，因此拉取最新的代码库并使用最新的 CLI 工具通常能解决此部署失败问题。","https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fissues\u002F24",{"id":181,"question_zh":182,"answer_zh":183,"source_url":184},15029,"目前是否支持在 Prompt Flow 中使用 OAuth 2 模式进行用户或服务认证？","根据目前的反馈，直接在 Prompt Flow 中实现完整的 OAuth 2 模式（针对每个用户或服务主体）尚不可行。常见的变通方案是将 Prompt Flow 部署在网关后面，通过网关层来处理认证逻辑。","https:\u002F\u002Fgithub.com\u002FAzure-Samples\u002FAI-Gateway\u002Fissues\u002F40",[]]