在本系列的开篇内容中,我们已经和大家一起理清了一些基本概念, 比如 AI 应用的定义,AI 应用的核心是什么,以及 AI Agent 的定义和推理模式等。
从本篇文章开始,我们将具体讲讲 AI 应用实践过程中每一个环节的核心挑战,以及我们对应的解法和思路。如果您对这些内容感兴趣,推荐您关注阿里云云原生公众号,后台回复 “企业AI实践” 获得我们整理的完整的企业级 AI 应用构建的最佳实践 PPT,配合系列文章一起食用,效果更佳。
今天我们聊聊 AI Agent 运行时。
如上文所述,我们正步入一个由 AI Agent 驱动的全新 AI 时代。AI Agent 运行时已不再是简单的代码执行环境,它演变成了一个动态、有状态且可能是事件驱动的复杂系统。这个运行时负责管理 AI Agent 的完整生命周期,包括其状态维护、与外部工具的交互以及多智能体间的协作行为。OpenAI 将 Agent 重新定义为“模型 + 指令 + 工具 + 运行时”的组合,这标志着 AI Agent 运行时本身已从“附属组件”,跃升为不可或缺的“核心基石”。
ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-weight: bold;visibility: visible;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;">AI Agent 运行时的挑战点
AI Agent 的计算负载特征与传统应用截然不同。传统的 Web 服务通常具有可预测的请求-响应模式,而 AI Agent 的运行推理模式如上文所述,是多种多样的,并非一次简单的模型推理,而是一个复杂的、多轮次的循环工作流,涵盖了持续的规划、工具调用、自省和迭代式推理。它不是一次性的问答,而是一个为达成目标而不断“思考”和“行动”的动态过程。比如 ReAct 模式在每一步都需要 LLM 进行推理以决定下一步是思考还是行动;而 CoT/ToT 为了做出更优决策,会模拟多条未来的推理路径,这都极大地增加了并行的推理调用需求。
正因为这些特性,AI Agent 的一次运行可能是一种“脉冲式”或“突发性”的资源消耗模式——即在极短时间内进行高强度计算,随后进入长时间的闲置状态。这种动态推理过程虽然功能强大,但也带来了显著的延迟波动和高昂的基础设施成本挑战。
另外 AI Agent 正从理论走向实践,这预示着人机交互和任务自动化的根本性变革。然而,赋予这些 Agent 强大能力的自主性、学习能力和工具使用特性的同时,也引入了前所未有的安全风险。比如提示注入(Prompt Injection),工具滥用与不受控的系统命令、权限泄露、上下文泄露与级联故障等。所以运行 AI Agent 的环境需要是一个隔离的、访问控制与系统调用拦截的、可严格管理资源的、具备可观测与审计的环境,也就是沙箱环境(Sandbox)。
所以我们尝试通过阿里云函数计算 FC这种 FaaS 形态的 Serverless 计算产品,帮助企业解决 AI Agent 运行的构建效率、资源成本、Sandbox 三大挑战。
ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-weight: bold;visibility: visible;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;">函数计算 FC
ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-weight: bold;visibility: visible;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;">作为 AI Agent 运行时的优势
AI Agent 的独特运行模式和对计算资源的需求在函数计算 FC 这种 FaaS 计算资源上找到相对完美的解决方案。这种对应关系可以通过下表清晰地展示出来:
AI Agent 运行时需求 | 函数计算 FC 的优势 |
事件驱动与异步执行 | 多种原生的事件触发器和异步任务执行模式 |
不可预测的突发性工作负载 | 自动、快速的弹性伸缩(从零到N) |
高昂的计算资源闲置成本 | 按实际使用量计费 |
需要安全、隔离的执行环境 | 天然沙箱化的运行时 |
复杂、多步骤的工作流 | 与工作流引擎有深度集成 |
数据持久化 | 与OSS,NAS,PolarFS做好了深度集成 |
快速迭代与开发的需求 | 聚焦业务逻辑,而非基础设施 |
这里先来整体看一下函数计算 FC 作为 AI Agent 运行时的方案拓扑图:

函数计算 FC 作为 AI Agent 自身的运行时(Runtime)

函数计算 FC 作为 AI Agent 的运行时有两种模式:
编码式 - 函数计算 FC 作为计算资源运行 AI Agent

FC 作为 AI Agent 的运行时有两种类型:
FC 作为 AI Agent 运行时的优势:
函数计算 FC 触发器机制,实现 AI Agent 可灵活被调度。
函数计算 FC 按请求扩缩,提升 AI Agent 资源利用率,降低资源成本。
函数计算 FC 支持多种存储机制,提升 AI Agent 数据存储的灵活性和安全性。
函数计算 FC 函数实例动态安装依赖包,提升 AI Agent 业务形态多样性。
函数计算 FC 支持 Seesion 会话亲和,进一步提升 AI Agent 执行任务的一致性和隔离性。
Chat AI Agent 解析
我们拜访中的很多客户做的 Agent 服务于 Chat 场景,本质上就是负责和用户对话交互的 Agent,用户和企业产品的一次对话就会产生一个任务,由 Agent 负责执行这个任务。
这种 Chat Agent 最大的特点是执行任务的 2 个不确定性,和 1 个一致性:
以上两个不确定的特性就是 AI Agent 运行时自身以及配合存储产品需要解决的问题。
执行环境里的各依赖包的不确定性
这是因为这类 AI Agent 处理的任务是千奇百怪的,用户的问题是无法穷举的,所以无论是 AI Agent 的实现代码逻辑也好,还是运行 AI Agent 的运行时也好,都不可能事先预置所有的依赖。而是只实现 AI Agent 的主干核心逻辑,以及一个隔离并灵活的运行环境,在执行用户的任务时,当遇到需要使用三方依赖时,可以暂停执行任务,先安装所需依赖,然后再继续执行任务,所谓兵来将挡,水来土掩。
函数计算 FC 方案:函数计算 FC 天然具备这个能力,每个实例底层都是隔离的容器环境,通过 subProcess 可以直接执行像 pip 或者 npm 的包管理命令来动态安装依赖,因为每个实例都是完全资源隔离的,所以同一个 AI Agent 函数的不同实例都可以是独一无二的运行环境,有不同的依赖,既相当于每一次执行用户任务运行环境都是完全隔离和完全不相同的,完美匹配这类 AI Agent 的不确定特性。
拿用户相关文件信息路径的不确定性
这个不确定性特性的本质是用户数据隔离的问题。通常情况下,这类 Chat AI Agent 的文件路径是以用户(User ID)/会话(Session ID)/任务(Task ID)命名的,目的有两个:
这里就会涉及到如何选择存储产品,目前我们遇到的,或者说阿里云上适合的存储产品无非就是云盘,OSS,NAS 以及 PolarDB 新出的 PolarFS。
NAS:NAS 有单集群 10 亿个文件的 SLA 上限,但是 AI Agent 场景,尤其 Chat 类的 AI Agent 很容易就会超过 10 亿个文件,所以 To C 端的大型或者通用 Chat AI Agent 如果要使用 NAS 需要通过多集群来规避 10 亿文件的 SLA 上限问题。
云盘+OSS:这两个存储介质通常是配合使用,整体的逻辑是使用云盘实时存储 AI Agent 执行过程中产生的各种类型的文件数据,在任务执行完之后,打包上传到 OSS 作为持久化。OSS 的文件对象命名也基本遵循用户(User ID)/会话(Session ID)/任务(Task ID)这个规范。
PolarFS:PolarFS 本质上和 NAS 的用法一致。
会话(Session)请求亲和性
会话(Session)请求亲和性除了上述的保证执行任务在上下文环境、上下文数据方面的一致性以外,同一个会话或任务复用同一个实例,也减少了动态安装依赖的时间耗费,从而提高了执行任务的效率。
在这个特性上,有几个细节点:
实例在支持会话(Session)请求亲和性的同时,还要具备排他性,也就是不能再接新的会话。
如果该 Session 持续某个时间段(比如1个小时)没有请求输入,这个实例主动销毁,从而保证资源成本最优。
当实例要销毁时,需要有机制保证数据都被处理完毕,比如打包上传到 OSS。
如果 Session 请求来的时候发现需要恢复 Session(Session 不是新的,且实例不存在),如何具备这个判断机制。
函数计算 FC 方案:
函数计算 FC 可以设置单实例可以接的会话(Session)数,也就是说当该配置设置为 1 时,就具备了排他性,不能再接新的会话了。当然你还可以设置为多单实例可以接多个会话(Session),这样可以满足更加灵活的业务需求。
函数计算 FC 具备 Session Idle Time 的配置项,如果设置为 1 小时,那么在 1 小时内没有请求进来,实例就会自动销毁,这个值可以根据业务需求灵活设置。
函数计算 FC 有完善的实例生命周期管理能力,当实例要销毁前会调用prestop这钩子方法,用户可以在这个方法中做数据善后处理。
如果 Session 请求来的时候发现需要恢复 Session 的最佳实践为:
整体架构图如下:

流程式 - AIStudio + 函数计算 FC 可视化构建 AI Agent
在这几个月时间里,我们遇到了大量使用开源 dify 构建 AI Agent 或者 AI 应用的客户,这类客户需要快速构建出可以辅助存量业务的 AI Agent,他们的关注点在业务上,并不会投入过多精力研究编码式的构建方案,像 SaaS 类、泛企业类居多。
AIStudio 是什么
AIStudio 是阿里云自研的可视化构建 AI Agent 的产品。底层的工作流引擎基于阿里云 2018 年就商业化的产品云工作流(CloudFlow),底层算力基于函数计算。而前端的可视化部分我们基本沿用的Dify的设计语言。目的很简单,就是让用户在不改变使用习惯的前提下享受到更灵活、更稳定、性能更好地可视化构建 AI Agent 的产品。

易用的同时性能更强:
AIStudio 的优势和特点:
支持函数计算节点,使构建流程的灵活性得到大幅度提升。
默认支持最大 1000QPS,且可以按需继续提升。
多节点复杂流程依然具备稳定高可靠的执行性能。
除了 HTTP 以外,还支持多种调度方案,比如 OSS,SLS,Kafka,RocketMQ等。
具备完善的可观测能力,包括整体流程和具体的每个节点的可观测。
虽然目前 AIStudio 还有一些能力正在不断完善中,但是针对上述开源 Dify 的硬伤问题已经具备了彻底解决的能力:

典型场景探讨
我们在与客户的交流中,遇到使用可视化方式构建 AI Agent 最多的场景有以下几类:
LLM 节点和 Agent 节点支持多模态,客服场景也有涉及。
需要有一个预览 LLM 生成的 HTML+CSS 代码的节点,本质上属于一个 Code Sandbox,Run 代码,可以通过 AIStudio 中的函数计算节点实现。
需要有一个人工处理的节点,需要打断流程,因为生成的图片还是需要人工审核。
函数计算 FC 作为辅助 AI Agent 的 Sandbox
如上文所述,为了确保 AI Agent 能够安全、可控地运行,一个强大的沙箱环境(Sandbox)至关重要。这就像是为 AI Agent 提供一个安全的"游乐场",让它在其中探索和执行任务,同时又不会对外部真实世界造成意外影响。

但除了运行 AI Agent 自身以外,还有一大类是编外的,用于辅助、提升 AI Agent 或基模能力的沙箱环境(Sandbox)场景,同样也是函数计算 FC 擅长的。
目前我们交流与落地实践的有四大类编外沙箱场景:

Code Sandbox

这一类场景的本质就是在一个隔离的环境中运行由用户生成的或者 LLM 生成的代码,分为两种业务场景:
Code Sandbox 场景的一些挑战点:
Browser Use Sandbox

Browser Use 其实并不是一个很新的东西。
在 AI 场景下,当前 Browser Use 主要有两类主要的应用场景:
当 AI Agent 的任务从封闭的模拟环境扩展到开放、动态且充满潜在诱惑的互联网时,其面临的安全挑战也随之升级。对于一个在 Web 上操作的 AI Agent 来说,互联网不再仅仅是信息的来源,它本身就是一个动态的、可能包含恶意内容的输入源。网页的内容直接影响 Agent 的感知和决策,所以这就是为什么 Browser Use 也需要沙箱环境的原因。
Browser Use Sandbox 场景的一些挑战点:
RL Sandbox

有一些基模企业或做通用 AI Agent 的企定,会专注在垂直类场景,这类企业会针对特定场景对 LLM 或 AI Agent 算法做定向强化学习。
这类强化学习场景对于客户来说,希望有一个独立的、隔离的运行环境,即沙箱环境,会有以下共同的诉求点:
安全性:Agent 在训练初期的行为往往是随机且不可预测的。在沙箱中,错误的决策不会造成任何实际损失。
高效率与可复现性:沙箱环境可快速拉起,快速复制相同的环境,让 Agent 在短时间内经历海量的训练。同时,研发可以精确控制每个环境的每一个变量,从而能够复现实验结果,进行可靠的对比分析。
降低成本:不希望过多维护 IaaS 资源,随用随拉起,并且强化学习也不是实时业务,如何最大限度提升资源利用率也是降低成本的优化手段。
运行环境完整性:沙箱环境不要有太多限制和约束,期望和一台 Linux 机器一样去使用。甚至可以设置一些系统级参数。
函数计算 FC 作为 FaaS 形态的 Serverless 计算产品,天然匹配以上这些需求,所以企业选择使用函数计算 FC 作为 RL Sandbox 的底座。
RL Sandbox 场景的一些挑战点:
仿真训练 Sandbox

仿真训练 Sandbox 场景目前主要聚焦在具身智能场景。
具身智能仿真训练基本流程:
函数计算 FC 具身智能仿真训练方案:方案分为两种类型。
无论是编码方式构建 AI Agent,还是可视化流程式构建 AI Agent,一旦脱离了 LLM,就不存在 AI 一说了。