Microsoft Foundry Skill 帮助开发者使用 Microsoft Foundry 资源,涵盖模型发现与部署、AI 智能体的完整开发生命周期、评估工作流以及故障排查。
一、用途 该技能面向需要构建、部署、评估、优化、微调和管理 Microsoft Foundry 智能体、模型与资源的开发者,提供从资源创建到智能体上线、评估、优化和运维的端到端工作流指导。
二、主要能力 技能包含多个子技能,分别对应不同工作流:
- deploy:将托管智能体部署到 Foundry、对部署进行冒烟测试、创建或更新提示词智能体、管理智能体版本与多环境部署。
- cicd:为 Foundry 智能体搭建 CI/CD 部署流水线。
- invoke:向智能体发送消息,支持单轮或多轮对话。
- routine:通过例程按计划或事件触发 Foundry 智能体,使用 azd 进行增删改查、启用/禁用、手动调度和查看历史运行,或在 azure.yaml 中定义例程。
- invocations-ws:构建、部署并连接使用 invocations_ws 双工 WebSocket 协议的托管智能体,适用于语音智能体、实时流和带外媒体传输信令。
- observe:评估智能体质量、运行批量评估、分析失败、优化提示词、改进智能体指令、比较版本、设置 CI/CD 监控并启用持续生产评估。
- trace:查询追踪、分析延迟/失败、通过 App Insights customEvents 将评估结果关联到具体响应。
- troubleshoot:查看托管智能体日志、查询遥测、诊断失败。
- validate:仅在用户明确要求使用该验证子技能或要求依据最佳实践验证 Microsoft Foundry 托管智能体代码时使用,不得主动调用。
- create(快速开始):从零端到端创建新的托管 Foundry 智能体——脚手架、预配或使用现有 Foundry 项目、部署并冒烟测试。不适用于现有代码。
- create:当标准端到端快速路径不适用时使用,包括创建新智能体、更新现有智能体代码、继续开发现有智能体、在脚手架阶段连接、使用高级设置或 A2A(Agent2Agent),或从失败的快速开始运行中恢复。
- agent-optimizer:使现有 Python 托管智能体代码具备优化条件,配置 eval.yaml,运行 Agent Optimizer 作业,本地应用候选方案,并在审查后通过 azd 部署。
- eval-datasets:将生产追踪采集为评估数据集,管理数据集版本与拆分,跟踪评估指标随时间变化,检测回归,并维护从追踪到部署的完整血缘。
- project/create:创建新的 Microsoft Foundry 项目以托管智能体和模型。
- resource/create:使用 Azure CLI 创建 Azure AI Services 多服务资源(Foundry 资源)。
- private-network:解答 Foundry 网络隔离问题,并部署带 VNet 隔离的 Foundry(BYO VNet、Managed VNet、混合)。
- models/deploy-model:统一模型部署与智能路由,处理快速预设部署、完全自定义部署(版本/SKU/容量/RAI)以及跨区域容量发现。
- quota:管理 Microsoft Foundry 资源的配额与容量。
- rbac:管理 RBAC 权限、角色分配、托管标识和服务主体。
- finetuning:在 Microsoft Foundry 上微调模型——SFT 蒸馏、DPO 偏好优化、带评分器和工具调用的 RFT,包括数据集准备、评分器校准、训练、检查点选择、部署和评估。
- azd-guidance:提供管理 Foundry 智能体的共享 azd 知识与指导,任何与 azd 相关的工作流都应先阅读。
三、使用方式
- 预执行要求:技能加载后,第一步必须从技能根目录运行依赖检查与安装脚本,并等待其完成。脚本会先检查,仅安装缺失的依赖,不会重装已有依赖。macOS/Linux 使用 ./scripts/check-and-setup-dependencies.sh,Windows(pwsh)使用 ./scripts/check-and-setup-dependencies.ps1。必须严格遵循脚本输出执行后续操作。
- 工作流指导:在执行任何工作流特定步骤前,必须先阅读对应的子技能文档。即使已知 MCP 工具参数,也不得在未阅读技能文档的情况下调用工作流特定的 MCP 工具。该规则在每条触发不同工作流的新用户消息上均适用。
- Foundry MCP:使用 Foundry MCP 操作前,必须调用 Azure MCP foundry 工具,检查可用的 Foundry MCP 工具及相关参数,作为基于 MCP 工作流的发现/帮助步骤。
- azd:执行任何 azd 命令前,必须先阅读 azd-guidance,并严格遵循其中定义的共享规则,尤其是 AZURE_DEV_USER_AGENT 设置规则。
- 基础设施生命周期:根据用户意图匹配正确的工作流。若用户意图不明确(如“创建 Foundry”/“设置 Foundry”),使用 AskUserQuestion 询问是仅创建 AI Services 资源、创建公共访问的项目,还是创建带网络隔离的项目,然后分别路由到 resource/create、project/create 或 private-network。
- 智能体开发生命周期:根据用户意图匹配正确的智能体工作流,并按顺序阅读每个子技能。例如创建新的托管智能体端到端流程为:依赖检查与设置 → azd-guidance → quick-start-hosted;超出标准快速开始的情况为:依赖检查与设置 → azd-guidance → create → deploy → invoke;优化现有 Python 托管智能体为:依赖检查与设置 → azd-guidance → agent-optimizer → scaffold/review → eval.yaml → optimize → apply candidate → deploy → invoke;部署已有代码的智能体为:依赖检查与设置 → azd-guidance → deploy → invoke → observe;设置 CI/CD 流水线为:依赖检查与设置 → azd-guidance → cicd;调用/测试/聊天为:依赖检查与设置 → azd-guidance → invoke;调度/事件触发或例程增删改查为:依赖检查与设置 → azd-guidance → routine;优化提示词或指令为:observe(第 4 步:优化);评估与优化完整循环为:observe;启用持续评估监控为:observe(第 6 步:CI/CD 与监控);排查智能体问题为:依赖检查与设置 → azd-guidance → invoke → troubleshoot;修复损坏的智能体为:依赖检查与设置 → azd-guidance → invoke → troubleshoot → 应用修复 → deploy → invoke。
- .foundry 工作区标准:每个智能体源文件夹可在 .foundry/ 下保留 Foundry 特定的缓存与覆盖状态,包括 agent-metadata.yaml、agent-metadata.prod.yaml、suites/、datasets/、evaluators/、results/。在 azd 项目中,部署上下文(项目终结点、智能体名称/版本、ACR、App Insights)应从 azure.yaml 加 azd env get-values 推导,不要在元数据中重复 azd 已提供的值。agent-metadata.yaml 是非 azd 值、远程 Foundry 套件引用、本地缓存路径、结果摘要和显式覆盖的首选本地/开发覆盖文件。suites/、datasets/ 和 evaluators/ 是本地缓存文件夹,当前有效时可复用,刷新或覆盖前应先询问。
- 智能体设置参考:标准智能体设置适用于需要数据驻留控制的生产工作负载(通过 Foundry 能力主机自带 Cosmos DB / Storage / AI Search)。默认 azd ai agent 流程使用基本智能体设置,不预配 capabilityHosts/agents,不应将其缺失标记为缺陷。
- 常见项目上下文解析:智能体技能仅在需要尚未拥有的配置值时才运行此步骤。若值已从用户消息或同一会话中先前的技能得知,则跳过该值的解析。步骤包括:发现智能体根目录与 azd 上下文;解析环境与部署上下文;选择元数据覆盖并解析环境;解析 eval.yaml 本地评估意图。
四、适用场景 适用于使用 azd 管理 Foundry 智能体、部署托管智能体、搭建 CI/CD 流水线、调用与测试智能体、调度例程、评估与优化提示词、追踪与故障排查、创建 Foundry 项目与资源、配置私有网络隔离、部署模型、管理配额与 RBAC、微调模型等场景。
五、限制 资料未提供关于收费、价格、平台支持范围、效果保证等方面的信息。部分子技能的具体操作细节需阅读对应子技能文档。validate 子技能不得主动调用。