【AI Agent实战】Deploying Scalable Agents 深度解析:从“在我机器上能跑“到生产级部署——Microsoft Foundry 全栈规模化 Agent 部署指南 文章目录一、"在我机器上能跑" ≠ 生产就绪1.1 一个残酷的现实二、三种部署模式2.1 模式总览2.2 Client-Hosted(客户端托管)2.3 Service-Hosted / Hosted Agents(服务端托管)2.4 Workflow-Orchestrated(工作流编排)三、Agent 生命周期管理3.1 完整生命周期3.2 版本管理最佳实践四、扩展策略4.1 模型路由(Model Router)4.2 响应缓存4.3 并发控制4.4 无状态设计五、可观测性与监控5.1 OpenTelemetry 集成5.2 关键监控指标六、成本优化策略6.1 成本构成分析6.2 优化策略详解策略一:使用小语言模型(SLM)策略二:Prompt 优化减少输入 Token策略三:响应缓存策略四:评估门控七、完整生产案例:客户支持 Agent7.1 架构总览7.2 核心实现八、常见问题解答(FAQ)Q1:什么时候该从原型转向生产?Q2:如何估算生产成本?Q3:如何选择部署模式?一、“在我机器上能跑” ≠ 生产就绪1.1 一个残酷的现实┌─────────────────────────────────────────────────────────────┐ │ 原型 vs 生产的鸿沟 │ │ │ │ 🔬 原型阶段(Notebook): │ │ ├── az login 认证 │ │ ├── 几个环境变量 │ │ ├── 单用户交互 │ │ ├── 笔记本中运行 │ │ └── "能跑就行!" │ │ │ │ ═══════════════════════════════════════ │ │ │ │ 🏭 生产阶段需求: │ │ ├── 数千用户并发? │ │ ├── 凌晨 3 点也要稳定? │ │ ├── 成本可控吗? │ │ ├── 如何监控和调试? │ │ ├── 安全合规? │ │ └── 出了问题怎么恢复? │ │ │ │ 💡 核心洞察: │ │ "从原型到生产的转变,主要关乎模型周围的一切" │ └─────────────────────────────────────────────────────────────┘二、三种部署模式2.1 模式总览┌─────────────────────────────────────────────────────────────┐ │ 三种 Agent 部署模式 │ │ │ │ ┌─────────────────┐ ┌─────────────────┐ │ │ │ Client-Hosted │ │ Service-Hosted │ │ │ │ (客户端托管) │ │ (服务端托管) │ │ │ ├─────────────────┤ ├─────────────────┤ │ │ │ Agent 在用户设备 │ │ Agent 在云端 │ │ │ │ 运行 │ │ Foundry 托管 │ │ │ │ 数据不出本地 │ │ 自动扩缩容 │ │ │ │ 适合隐私敏感场景 │ │ 适合多租户场景 │ │ │ └─────────────────┘ └─────────────────┘ │ │ │ │ ┌─────────────────┐ │ │ │Workflow-Orchestrated│ │ │ │ (工作流编排) │ │ │ ├─────────────────┤ │ │ │ 多步骤流程编排 │ │ │ │ 复杂业务逻辑 │ │ │ │ 适合长时任务 │ │ │ └─────────────────┘ │ └─────────────────────────────────────────────────────────────┘2.2 Client-Hosted(客户端托管)适用场景:数据隐私要求高、离线可用、低延迟""" Client-Hosted 模式示例 Agent 在用户的设备上运行,数据不离开本地 """fromagent_frameworkimportChatAgent,OpenAIChatClientclassCustomerSupportAgent:"""客户端托管的客服 Agent"""def__init__(self,config):self.agent=ChatAgent(chat_client=OpenAIChatClient(api_key=config["api_key"],base_url=config["endpoint"],),instructions=self._build_instructions(),tools=[self.search_knowledge_base,self.check_order_status,self.create_ticket,],# 本地存储对话历史chat_message_store_factory=self._local_store,)asyncdefhandle_query(self,user_message,session_id):"""处理用户查询(完全在客户端执行)"""result=awaitself.agent.run(user_message,thread=self._get_or_create_thread(session_id))returnresult.textdef_local_store(self):"""本地消息存储(SQLite / 文件)"""fromagent_frameworkimportChatMessageStorereturnChatMessageStore(storage_path="./chat_history.db")优缺点:优点缺点✅ 数据完全本地❌ 无法集中更新✅ 无网络依赖❌ 设备资源受限✅ 低延迟❌ 难以统一监控✅ 离线可用❌ 更新需推送2.3 Service-Hosted / Hosted Agents(服务端托管)适用场景:多用户、需要自动扩缩容、集中管理""" Service-Hosted 模式示例 使用 Microsoft Foundry Agent Service 托管 """# ============================================================# 方式一:通过 Azure Developer CLI (azd) 部署# ============================================================# 1. 安装 azd AI agents 扩展# azd ext install azure.ai.agents# 2. 初始化项目# azd ai agent init -m manifest.json# 3. 本地测试(Docker 环境)# azd ai agent run# 4. 部署到 Azure# azd provision# azd deploy# ============================================================# 方式二:代码定义 Hosted Agent# ============================================================importosfromazure.ai.projectsimportAIProjectClientfromazure.identityimportDefaultAzureCredentialfromagent_frameworkimportAzureAIAgentClientasyncdefcreate_hosted_agent():"""创建 Foundry 托管的 Agent"""credential=DefaultAzureCredential()project_client=AIProjectClient(endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"],credential=credential,)# 定义 Agentagent_definition={"name":"CustomerSupportBot","description":"智能客服助手","instructions":""" 你是一个专业的客服代表。 ## 能力 - 回答产品相关问题 - 查询订单状态 - 创建工单 ## 行为准则 - 礼貌专业 - 不确定时主动转人工 - 保护用户隐私 ""","model":"gpt-4o","tools":[{"type":"function","name":"search_kb"},{"type":"function","name":"check_order"},{"type":"function","name":"create_ticket"},],"parameters":{"temperature":0.7,"max_tokens":2000,},"metadata":{"version":"1.0.0","author":"platform-team",}}# 注册到 Foundryagent=awaitproject_client.agents.create_agent(agent_definition)print(f"✅ Agent 创建成功:{agent.id}")print(f"📋 Endpoint:{agent.endpoint}")returnagent# ============================================================# 方式三:使用 MAF 直接定义# ============================================================fromagent_framework.foundryimportFoundryHostedAgent hosted_agent=FoundryHostedAgent(name="CustomerSupportBot",instructions="你是专业的客服代表...",model="gpt-4o",tools=[search_kb,check_order,create_ticket],# Foundry 特有配置scaling={"min_instances":2,"max_instances":10,"target_utilization":0.7,},security={"auth_required":True,"allowed_roles":["customer","support_agent"],"content_safety":True,},monitoring={"enable_tracing":True,"log_level":"INFO","alert_on_error":True,},)2.4 Workflow-Orchestrated(工作流编排)适用场景:复杂多步骤业务流程、需要人工审批节点""" Workflow-Orchestrated 模式示例 使用 MAF Workflows 编排复杂业务流程 """fromagent_frameworkimport(WorkflowBuilder,AgentExecutor,CodeExecutor,HumanApprovalStep,)defbuild_customer_onboarding_workflow():"""构建客户入职工作流"""builder=WorkflowBuilder(name="CustomerOnboarding")# 定义各步骤的 Executorgreet_executor=AgentExecutor(agent=greeting_agent,name="Greeting")verify_identity=CodeExecutor(func=identity_verification,name="IdentityCheck")collect_info=AgentExecutor(agent=data_collection_agent,name="DataCollection")human_approval=HumanApprovalStep(approval_prompt="请审核以下客户信息",required_role="manager",timeout_hours=24,name="ManagerApproval")setup_account=CodeExecutor(func=provision_account,name="AccountSetup")send_welcome=AgentExecutor(agent=welcome_email_agent,name="Welcome")# 构建流程图builder.set_start_executor(greet_executor)builder.add_edge(greet_executor,verify_identity)# 条件分支:验证通过 vs 不通过builder.add_conditional_edge(source=verify_identity,target=collect_info,condition=lambdadata:data["identity_verified"])builder.add_conditional_edge(source=/

相关新闻

最新新闻

免费电子课本下载工具 tchMaterial-parser:解析智慧教育平台 PDF

免费电子课本下载工具 tchMaterial-parser:解析智慧教育平台 PDF

免费电子课本下载工具 tchMaterial-parser:解析智慧教育平台 PDF 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具,帮助您从智慧教育平台中获取电子课本的 PDF 文件网址并进行下载,让您更方便地获取课本内容。 …

2026/8/22 4:19:01
三步搞定:让 DirectDraw 老游戏在 Win10/11 上流畅运行

三步搞定:让 DirectDraw 老游戏在 Win10/11 上流畅运行

三步搞定:让 DirectDraw 老游戏在 Win10/11 上流畅运行 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.com/gh_mirrors/dd/DDraw…

2026/8/22 4:19:01
24V3A欧规电源适配器选型与安全使用全指南:匹配LED灯带、3D打印机等设备

24V3A欧规电源适配器选型与安全使用全指南:匹配LED灯带、3D打印机等设备

1. 先搞清楚这个电源适配器到底能用在哪些设备上 看到“24V3A欧规电源适配器”这个标题,很多人第一反应是:这不就是个普通的电源吗?但如果你仔细看后面跟着的“适配LED灯带、3D打印机、美容仪器、无线AP”,就会发现它的价值不在于…

2026/8/22 4:19:01
全球时区速查与UTC换算指南:从核心概念到工程实践

全球时区速查与UTC换算指南:从核心概念到工程实践

1. 项目概述:为什么你需要一张真正好用的时区速查表? 做跨境业务、远程协作,或者只是有个朋友在国外,你肯定遇到过这样的场景:约个线上会议,对方甩过来一个“GMT8”或者“UTC-5”,你心里得默默算…

2026/8/22 4:19:01
C++模板元编程:不定参数模板、折叠表达式与类型推导实战指南

C++模板元编程:不定参数模板、折叠表达式与类型推导实战指南

1. 项目概述:从“硬编码”到“万能胶水”的进化 在C的世界里,我们总在追求代码的通用性和表达力。回想一下,当你需要写一个打印函数,最开始可能只处理 int ,后来要加 double 、 string ,于是你写了三…

2026/8/22 4:19:01
工业配色优化:基于Lab色差与遗传算法的多目标建模求解

工业配色优化:基于Lab色差与遗传算法的多目标建模求解

1. 赛题核心与破题思路解析2023年华数杯B题,聚焦于“不透明制品最优配色方案设计”,本质上是一个典型的工业工程优化问题,融合了色彩科学、数据分析与数学建模。题目要求我们根据给定的标准色卡(孟塞尔色系)和一批目标…

2026/8/22 4:14:01