1. 2025年企业AI基础设施的格局变化:从“一朵云”到“多朵云”
1.1 为什么企业对AI的需求正在撑破单云边界
2023年到2024年,多数企业做AI落地的姿势是“选一朵云,烧一批GPU,接几个大模型API”。这个模式在试点阶段没什么问题,一个小团队、几个POC项目,一朵云完全扛得住。但到了2025年,事情明显变了味。我最近在帮几家企业做AI应用架构规划时,几乎每次都会被同一个问题卡住:你的核心AI能力到底应该放在哪朵云上?
问出这个问题的根源在于,单一云厂商已经很难同时满足企业对模型能力、算力供给、数据驻留和成本控制这四个维度的要求。模型侧,各家云平台主推的模型各有优势,有的强在代码生成,有的强在多模态理解,有的在行业微调上有积累,闭源模型和开源模型生态也在快速分化,逼着企业同时对接多家模型供应商。算力侧,GPU资源在不同区域、不同云厂商的供给情况完全不一样,有些热门实例类型在旺季根本申请不到,企业只能把目光投向其他云厂商的区域节点。数据侧更敏感,跨国企业、金融、医疗、政务类客户,数据和系统必须留在特定区域,甚至明确要求不能出境,单云方案在这些合规约束面前几乎没有回旋余地。
另外一个不可忽视的力量是供应链韧性。过去大家习惯把“公有云宕机”当作小概率事件,但随着生成式AI成为核心业务链路的一部分,模型API抖动、数据中心故障、配额限制直接影响产品体验和收入。行业里已经出现不少因为单一云厂商模型接口长时间不可用,导致整个AI功能瘫痪的案例。企业开始意识到,“把所有模型请求都放在一个篮子里”跟“把所有数据库都放在一台机器上”一样危险。这不是理论推演,而是越来越多企业CIO在战略规划会上反复确认过的现实。
1.2 多云AI并非“要不要做”的选择题,而是“怎么做”的必答题
很多人听到“多云”第一反应是“我们要同时买三朵云,预算翻三倍”。这其实是把概念理解偏了。企业AI战略里的“多云”,不是简单的多供应商采购,而是指AI应用架构天然具备跨云调度、跨模型切换、跨区域容灾的能力。它既可以是正式签约多个云厂商,也可以是一朵主云、多朵辅助云,甚至可以是“公有云+本地私有化部署”的混合形态。核心在于:AI应用不再被某个特定云平台锁死。
把这个趋势放到2025年的节点上看,有几个非常具体的驱动因素在加速落地。首先是开源模型的能力追平与生态成熟,像Qwen、Llama、DeepSeek这一批开源权重模型,让企业有能力在自建环境和私有云上部署与闭源模型效果接近的推理服务,这使得模型本身的“可迁移性”大大增强。云厂商们也在主动适配这种趋势,几乎每一家都推出了模型托管平台,支持加载开源模型权重,用统一API对外提供服务。模型层与平台层的解耦,已经成了行业默契。
其次是AI应用复杂度上升带来的“多依赖”需求。一个成熟的AI应用,已经不是“调一次大模型接口,返回一段文字”那么简单。它往往包含多个模型协作:意图识别用一个模型、工具调用用一个模型、内容生成用一个模型、安全审核再挂一个模型,这些模型各自可能运行在不同的云平台或不同区域。这种情况下,应用架构天然就是“多云”的,不管你有没有多云战略,代码跑起来就已经跨了好几个云。把这种隐性的多云变成显性、可管理、可观测的架构,是AI应用架构师在2025年必须想清楚的事。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. AI应用架构师的职责迁移:你不再是“云选型专家”,而是“跨云调度者”
2.1 传统云选型时代的思维惯性
过去十年,应用架构师的核心工作之一是帮企业选云。选型逻辑相对清晰:比较计算、存储、网络能力,比对可用区、SLA、安全合规认证,再算一笔成本账,然后定下来。一旦定了,所有系统围绕这朵云构建,架构设计上也默认了“单云信任边界”。IaaS层用它的虚拟机、容器服务、负载均衡,PaaS层用它的数据库、消息队列、缓存,甚至监控、日志、权限体系也都长在同一套生态里。
这种模式在传统Spring Cloud微服务时代问题不大,因为业务负载相对可预测,云厂商的差异化服务足够满足需求。但到了AI应用时代,这套惯性开始失效。最大的变化是:AI应用的核心依赖不再是“数据库和消息队列”,而是“模型”。数据库的选择可以通过中间件屏蔽差异,但模型能力的差异很难用一层标准接口完全抹平。同样一个Prompt,在不同模型上的输出质量、延迟、成本可能差出好几倍。这就让架构师不能再像以前那样“选完一朵云就把架构固定下来”,而是必须持续面对“哪个模型最适合这个场景”的动态决策。
另外一个被忽视的惯性是运维心态。单云环境下,故障域、可观测性、备份恢复策略都是围绕一个平台设计的,出了问题可以在一个控制台里定位。多云之后,这些能力被切散到多个平台,监控指标不统一、日志格式不一致、权限体系各有各的账本,整个故障排查链路变长。很多架构师在规划多云AI时,第一个没想到的麻烦不是技术选型,而是“出了事怎么查”。
2.2 跨云编排对架构设计提出的新要求
当AI应用架构师从“选云者”变成“跨云调度者”,有一系列架构能力必须重新构建。我把它们归纳成三层:
第一层是能力抽象。所有上游业务代码不应该直接依赖某个云厂商的模型API,而是通过一个内部模型抽象层调用。这个抽象层的核心职责是统一接口、统一鉴权、统一超时和重试策略。它不是简单的“包一层SDK”,而是要解决“换模型不换业务代码”的问题。
第二层是流量治理。AI请求和普通HTTP请求不一样,单次请求可能持续几秒甚至几十秒,Token消耗和成本差异巨大,模型服务的限流逻辑也和普通API完全不同。网关层需要针对模型请求做专门的路由、熔断、降级和成本计量,而不是沿用传统的负载均衡策略。
第三层是数据与合规。哪些数据可以发给外部模型服务,哪些只能走本地推理,哪些必须在指定区域处理,这些规则要在架构层面落地为代码,而不是靠人工审核。我见过不少企业在POC阶段完全没考虑这个问题,等到数据安全部门介入时,整个链路都要重构,代价非常大。
说白了,2025年的AI应用架构师,核心职责已经变成“在多个云和多个模型之间,设计出一套让业务安心使用AI的稳定骨架”。这个骨架既要有能力灵活切换底层供应商,又要保证上层业务体验不感知、运维团队不崩溃、财务部门不失控。
3. 部署建议一:用“模型抽象层”把AI能力变成可替换资产
3.1 模型抽象层解决的核心问题
我接触的很多团队在写第一个AI功能时都有一个通病:直接在业务代码里调用某个模型提供商的SDK,把Prompt、模型名、温度参数全部硬编码在Service层里。刚开始跑得挺顺,但一旦遇到模型涨价、服务降级、或者发现另一个模型效果更好时,就不得不满代码库找“magic string”,改一处测一遍,改完还要担心线上行为变化。
这个痛苦的根源是模型供应商与业务逻辑产生了直接耦合。模型抽象层要解决的问题,就是把模型选择这件事从业务代码中剥离出去。业务代码只面向一个稳定的内部接口,至于背后用的是哪家模型、是云端API还是本地推理、是GPT还是Qwen,都由抽象层决定。
它的价值可以从三个场景看出来:
- A/B对比:同一个需求,可以配置部分流量走模型A,部分走模型B,用线上反馈数据客观判断哪个更适合业务场景。
- 供应商故障转移:模型A的API连续超时,抽象层自动把请求切到模型B,用户无感知。
- 成本调控:设定预算阈值,超过阈值后自动把高成本模型降级为低成本模型。
没有抽象层,这三个能力都需要改业务代码;有抽象层,只需要改配置。
3.2 一套典型的模型接入层长什么样
模型抽象层在实现上有几种参考方案。对于Java技术栈,Spring AI提供了相对成熟的ChatClient抽象,能够屏蔽不同模型提供商的API差异,但也需要团队理解它的扩展机制。Python技术栈里,LangChain和LlamaIndex是比较常见的选择,适合快速搭建原型。不过我个人的建议是,不要过度依赖框架自带的能力,要结合自身业务做一层自己的适配。第三方框架迭代速度快,API变动频繁,如果业务代码里到处都是框架特定类型,未来升级会非常痛苦。
一个相对理想的模型接入层结构是这样的:
java复制public interface AiChatService {
AiCompletion chat(String prompt, AiOptions options);
AiCompletion chat(String prompt, String conversationId, AiOptions options);
String modelName();
}
所有业务代码只依赖AiChatService这个接口。底层实现类负责对接具体的模型供应商,比如OpenAiChatService、QwenChatService、LocalVllmChatService。AiOptions里存的是业务方关心的参数,比如温度、最大Token数、超时时间、是否走流式等。
真正复杂的是“路由策略”这一层。抽象层不能只是“背靠背地转发请求”,还需要根据业务场景和线上状态做决策:
text复制场景:对话生成
规则:优先调用主力模型A(云端),若A超时或返回异常,降级到模型B;
若业务类型是“低成本分类任务”,直接调用本地部署的小模型C;
每日成本超过阈值后,自动降低A的调用比例。
这套规则可以放在配置中心动态调整,实现灰度放量。比如刚切换主力模型时,可以先让5%的流量走新模型,观察效果和延迟,再逐步放大到100%。这种“配置驱动”的切换模式,是单云时代很多团队没有的习惯,但在多云AI架构里几乎是标配。
3.3 模型路由、降级与灰度切换的细节
真正落地模型抽象层时,有几个容易被忽略的细节。
第一,流式响应与超时控制。大模型生成通常涉及流式输出,但在抽象层里,超时控制不能简单套用“连接超时+读取超时”的传统策略。模型生成一个长响应可能花30秒,但前几个Token可能在2秒内就到,业务层需要区分“长时间无响应”和“正在生成中”。我在实际项目中通常用“首个Token到达时间”作为核心健康指标,而不是用整体请求耗时。
第二,上下文长度与Token计费。业务方在同一套接口里可能传入不同长度的上下文,抽象层需要记录每次请求的输入输出Token数,用于成本核算和模型能力适配。有些模型上下文窗口小,有些模型对长文本的支持更好,路由策略里要把这些参数考虑进去,避免同一个Prompt在不同模型间切换时出现截断。
第三,可观测性埋点。抽象层是“多云AI架构”里最核心的可观测性采集点。每次请求至少需要记录:调用了哪个模型、来源云厂商、输入Token数、输出Token数、延迟、是否触发降级。这些数据不仅用于排障,更重要的是用来做成本分析和模型效果评估。我之前遇到过一个项目,因为抽象层没有做Token级埋点,财务和研发花了三周才搞清楚“钱到底花在了哪个模型上”。
4. 部署建议二:用“AI网关”统一多云的入口、安全与可观测性
4.1 AI网关在整个链路中的位置
模型抽象层解决的是“代码层如何多云”的问题,但一个完整的AI应用架构还需要解决“流量层如何多云”。这里就要引入AI网关。网关和模型抽象层不是一个层次的东西:抽象层在应用内部,是代码的封装;网关在应用外部,是所有模型流量的统一入口。你可以把它理解为车站的安检口和站台引导的关系——安检口负责统一检查所有进站的人,站台引导负责把不同方向的乘客带到正确的车厢。
AI网关在整个链路中的作用是收敛所有模型请求。业务服务不再直接访问某个云厂商的模型API,而是统一访问AI网关,由网关决定把请求转发到哪个云、哪个模型、哪个区域。这样做的好处是:认证鉴权、限流配额、审计日志、成本计量都集中在一点完成,而不是散落在各业务服务的代码里。
4.2 网关要管的四件事
我在实际架构规划中,会把AI网关的职责拆成四块。
第一块:统一的身份认证与租户隔离。 企业内部往往有多个业务线都在使用AI能力,每条业务线的调用量、权限、预算都是独立的。网关需要按租户管理API Key或Token,而不是让所有业务线共享一个模型供应商的Key。这不仅是安全要求,也是成本分摊的基础。
第二块:智能路由与故障转移。 网关需要维持一份“模型健康状态表”,根据实时错误率、延迟、成本权重动态调整路由。比如主模型错误率超过阈值,网关自动把流量切到备用模型,并在响应头里标记实际命中的模型,方便联调定位。这一块建议配置成“多活”模式,而不是“冷备”。很多团队只有在主模型故障时才想到切流量,结果切换演练没做过,真正故障时手忙脚乱。
第三块:访问策略与内容安全。 生成式AI请求存在Prompt注入、敏感信息泄露等风险。网关层面可以统一接入内容过滤规则,对请求和响应进行合规检查。同时网关也是实施“数据出境策略”的天然位置——判断当前请求的数据是否允许发送到特定区域的模型服务,不允许的就地拦截或改路由到本地推理服务。
第四块:可观测性与成本计量。 网关要像“应用性能监控”一样记录每次调用的完整链路:用户、业务线、模型、Token数、成本、耗时、结果状态。这些数据沉淀下来后,运维团队能快速回答“为什么AI费用涨了”“哪个业务线调用量最大”“哪个模型响应最慢”这类问题。
4.3 一个最小可用的AI网关配置示例
市面上的AI网关方案有商业产品也有开源项目。对于大多数团队,我建议先基于API网关产品做一层AI能力扩展,而不是从零自研。下面是一个基于HTTP路由思路的简化配置示意,方便理解核心概念:
yaml复制routes:
- id: chat-completions
match:
uri: /v1/chat/completions
upstreams:
- name: cloudA-qwen
uri: https://api.cloud-a.example.com/v1/chat/completions
weight: 70
timeout: 30s
- name: cloudB-gpt
uri: https://api.cloud-b.example.com/v1/chat/completions
weight: 30
timeout: 30s
filter:
rate_limit: 1000 req/min
auth:
type: internal-jwt
content_check:
prompt: enabled
response: enabled
telemetry:
metrics:
- prompt_tokens
- completion_tokens
- model_name
- latency_ms
这个配置表达了三个意思:chat/completions类型的请求,默认70%流量打到云A的Qwen服务,30%流量打到云B的模型服务,同时按租户限流、做内容检查、采集Token和延迟指标。
实际生产中,这个配置会比上面复杂不少,但核心思路是清晰的。AI网关的目标不是“再发明一套网关”,而是在已有网关能力之上叠加AI特有的治理逻辑。 如果团队里已经用了Kong、APISIX、Envoy或者云厂商的API网关,优先看它们的AI插件生态,再评估是否需要自研扩展。
从落地角度,我建议分两步走:第一步先用一套轻量网关把流量收敛起来,至少做到“所有模型调用同一个入口、同一套日志、同一个鉴权体系”;第二步再逐步叠加成本路由、内容安全、故障转移等高级能力。一上来就追求大而全,很容易陷入“做了六个月还没上线”的尴尬。
5. 部署建议三:数据主权与成本是架构的“隐性约束”,越早纳入越好
5.1 数据合规是硬边界,不是上线前的“补课项”
谈到多云AI架构,很多架构师第一反应是技术选型、网络联通、性能调优,数据合规往往被放到最后“上线前让安全部门检查一下”的位置。这是一个非常危险的顺序。数据合规问题在AI应用里比传统应用更敏感,因为AI请求的内容往往就是业务数据本身,用户输入一个问题,这个输入会离开企业网络,进入云厂商的模型处理管道。发到哪里、存不存储、用不用来训练、能不能删除,这些问题如果不在架构设计之初就确定,后面补救的代价极高。
举一个典型的例子:某跨国企业在中国区有一套业务系统,AI功能需要调用大模型做客户意图分析。如果直接把客户数据通过海外云平台处理,就涉及数据出境问题;即便使用国内云厂商,也要确认数据中心的物理位置和运维权限。架构师在设计链路时,需要能够按“数据分类”决定调用路径:普通文本走云端模型,客户敏感信息走本地部署的私有化模型,涉及跨境业务的数据在网关层就被拦截或脱敏后再发送。
这个逻辑落到代码上,就是“数据分类路由”能力。我把规则整理成了一张可以对照执行的表:
| 数据分类 | 处理方式 | 路由目标 | 是否记录日志 |
|---|---|---|---|
| 内部公开信息 | 直接调用云端模型 | 效率优先,可走任意云 | 完整记录 |
| 业务内部数据 | 数据脱敏后调用云端模型 | 指定允许区域云节点 | 记录脱敏后内容 |
| 个人敏感信息 | 禁止出境,本地推理 | 本地部署模型/私有云 | 脱敏后记录 |
| 涉密数据 | 完全本地处理 | 本地模型,禁止外发 | 最小化日志 |
这张表要在架构文档里作为硬性规范,同时通过AI网关的数据分类模块强制执行,而不是依赖开发人员的自觉。合规问题一旦出了事故,技术团队再解释“我们没想到”是没有用的。
5.2 成本治理从“后知后觉”变成“架构内建”
多云AI架构下,成本失控的风险比单云高得多。过去单云环境下,最多是某个云资源的账单膨胀,成本定位相对容易。多云之后,模型调用分散到多个供应商,每个供应商的计费粒度还不一样——有的按Token计费,有的按实例时长计费,有的按API调用次数计费,换算口径五花八门,财务和技术之间经常“鸡同鸭讲”。
从架构层面控制AI成本,我推荐三个内建机制。
第一个是模型分级路由。不是所有请求都需要用最强的模型。简单分类任务、闲聊场景、摘要提取,很多可以用小模型完成,效果足够且成本能低一个数量级。在模型抽象层和网关层配置“场景到模型”的映射规则,是成本治理的第一步。
第二个是语义缓存。大模型调用中经常出现相似甚至完全相同的Prompt,比如客服场景里的高频问题。网关层可以引入语义向量缓存,先计算请求的Embedding,与缓存的语义向量做相似度匹配,命中直接返回缓存结果,而不再调用大模型。这个机制在读取型场景下能省下大量Token成本。
第三个是预算熔断与预警。每个业务线分配每月Token预算和模型调用预算,网关实时统计,当预算使用率达到80%时预警,达到100%时自动降级到低成本模型或直接熔断。这个能力让成本从“事后算账”变成“事前拦截”,对多业务线共用AI能力的企业尤其重要。
5.3 弹性伸缩与故障域设计
最后是弹性与容灾。AI推理服务的弹性伸缩和普通Web服务不一样。普通服务可以按QPS或CPU指标快速扩容,但模型推理往往依赖GPU资源,冷启动可能要好几分钟,单纯依赖传统的HPA策略根本来不及。实践中比较有效的做法是“池化预热”:预置一个固定规模的推理实例池,平时承接基础流量,压力升高时通过消息队列把新增请求缓冲起来,同时快速扩容实例,避免直接丢弃用户请求。
故障域设计上,多云架构的最大优势就是可以做“跨云容灾”。关键AI能力至少部署在两个独立云平台或两个不同区域的节点,由AI网关或抽象层做健康检查与故障切换。这里要特别提醒的是,故障切换必须定期演练,不能只写在架构文档里。我见过不止一家企业,架构图画得很漂亮,“跨云高可用”写了三页PPT,实际上连一次切换演练都没做过,真正出事后才发现备用节点的模型权重没同步、网关配置已过期、网络策略有隐蔽的冲突。多云能力是设计出来的,更是练出来的。
6. 落地实操中的几个坎:我的经验和踩坑记录
6.1 模型一致性比预想中更容易出问题
多云AI架构落地后,第一个让人头疼的问题往往是“同样的Prompt,不同模型给出的答案风格完全不一样”。很多架构师在规划时想的是“反正都是大模型,输出格式用JSON约束一下就行”,结果实际跑起来发现不是那么回事。不同模型的系统提示词遵循程度、JSON格式稳定性、中文表达习惯差异非常大。
我建议在模型抽象层加上“输出Schema校验”能力,模型返回结果后先做结构化校验,不合格的自动重试或降级。同时,关键业务场景不要频繁切换模型,至少保证“一个场景一个主力模型”,切换前必须在标注数据集上做回归评测。不要被“模型A在某些公开榜单上效果好”影响,榜单效果和你的业务场景是两回事。
6.2 延迟差异需要真实环境压测
不同云平台的模型服务延迟差异比大多数人想象的大得多。同样一个模型,在云A的区域节点调用可能要2秒,在云B的区域节点可能要3.5秒,而且高峰期延迟会进一步恶化。这种差异在POC阶段不容易暴露,因为测试请求量小,真实流量上来后才会体现。多云架构下,如果网关层没有做延迟感知路由,用户流量可能被分配到响应最慢的节点,体验直线下降。
所以我在每个项目里都坚持做一次全天候的跨云压测,覆盖不同时段、不同并发量的延迟分布,再基于压测数据配置路由权重。延迟和成本往往存在权衡,比如更便宜的区域节点可能延迟更高,这时要根据业务场景做选择。实时交互型场景优先保延迟,离线批量任务优先保成本。
6.3 团队能力的重新配置
技术架构变多云,团队能力结构也要跟着变。过去很多团队把“云平台工程师”和“应用开发工程师”分成两个工种,AI应用架构师只是个懂一点云的“胶水人”。现在这项工作复杂得多,团队里至少需要三类人协同:懂模型调优与评测的AI工程师、精通网关和流量治理的架构师、熟悉多云网络与安全合规的云基础设施工程师。
同时,研发流程也要跟着调整。代码评审不仅要看功能逻辑,还要检查模型调用是否走了抽象层、是否绕过了网关、数据分类是否符合规范。CI/CD流水线里要加入“模型配置变更”的审批环节,避免有人私自改掉路由策略导致线上成本异常。我在项目里推动的做法是:把模型路由、成本预算、合规策略都作为代码的一部分纳入版本控制,由配置中心和代码仓库统一管理,任何变更都要经过测试和审批。
6.4 最后一公里:多云的网络连通
聊了这么多偏上层的架构设计,最后说一个最落地但经常被忽视的问题:多云之间的网络连通。企业如果选了多个云厂商,云与云之间的网络打通不能依赖公网裸连,延迟、稳定性、安全都不达标。常见的做法是云厂商之间的专线互联,或者通过叠加一个SD-WAN层做多云组网。这些网络方案在架构设计中要尽早启动,因为开通周期往往以“周”甚至“月”计,等到最后联调时才发现连接还没建好,项目进度只能干等。
另外,DNS解析、证书管理、内网DNS互通这些“小活”在多云环境下也会变成“大坑”。每个云都有自己的VPC、安全组、DNS规则,跨云调度时这些策略的配置分散在多个控制台,稍不留神就会配错。建议统一用基础设施即代码的方式管理多云网络资源,避免多人手动操作不同控制台导致的配置漂移。
从我个人的经验来看,2025年企业AI战略落到实施层面,技术选型已经不是最重要的瓶颈,关键是架构思维要从“单云默认”切换到“多云内生”。把模型抽象层、AI网关、数据合规路由、成本治理这些能力在架构设计的第一天就考虑进去,后面会省掉大量返工。这套思路不一定适合所有团队,但如果你所在的企业已经在同时对接多个大模型、多个云平台,或者已经感受到单云方案的局限性,那我的建议是:趁早动手,先把模型抽象层建起来,哪怕只跑通一个场景,也比停留在PPT上强。
