目 录CONTENT

文章目录

AI × 传统架构:大模型/AI应用如何与经典架构概念结合

PySuper
2026-01-24 / 0 评论 / 0 点赞 / 0 阅读 / 0 字
温馨提示:
本文最后更新于2026-05-27,若内容或图片失效,请留言反馈。 所有牛逼的人都有一段苦逼的岁月。 但是你只要像SB一样去坚持,终将牛逼!!! ✊✊✊

很多工程师学AI和学架构是"两条线"——学架构时没AI,学AI时不谈架构。

但AI应用上了生产,该遇到的问题一个不少:高并发、服务拆分、缓存、消息队列……

这篇文档把传统架构概念和AI场景一一对应,每个配一个真实案例,说清楚怎么结合、为什么这样结合

一、微服务架构 → AI 服务拆分

传统概念

把单体应用拆成独立部署、独立演进的服务,每个服务负责一个业务域,通过API通信。

AI场景结合

AI应用不是"一个模型接口"就完事了。一个完整的AI应用至少拆成:模型推理服务、Prompt编排服务、RAG检索服务、Agent调度服务、向量库服务——每个的扩缩容策略、故障模式、资源需求完全不同。

📋 案例:智能客服系统的微服务拆分

plaintext

用户请求
  │
  ▼
API Gateway (限流/路由/鉴权)
  │
  ├─→ Intent Service(意图识别 - 轻量模型,延迟要求极高)
  │     └─ GPU: T4 即可,实例数 ×10(高频低算力)
  │
  ├─→ RAG Service(知识检索 - 向量库 + Embedding)
  │     └─ CPU密集,独立扩缩容,缓存策略完全不同
  │
  ├─→ LLM Service(大模型推理 - 重度GPU)
  │     └─ GPU: A100/H100,实例数 ×2(低频高算力)
  │
  ├─→ Tool Service(工具调用 - 外部API编排)
  │     └─ IO密集,无需GPU,按外部API限流
  │
  └─→ Session Service(对话状态管理)
        └─ Redis + DB,纯状态服务

核心思路:意图识别用小模型快速响应(T4就够,但要多个实例扛并发),大模型推理用大GPU但实例少(一个A100顶十个T4),RAG单独拆出来做缓存优化。如果全塞一个服务,GPU资源要么浪费要么不够。

二、高并发 → AI 请求的流量治理

传统概念

系统在短时间内处理大量请求的能力,核心手段:限流、降级、异步、池化。

AI场景结合

LLM推理天然(一次请求2-30秒)且(按Token计费),高并发场景下不能像传统API一样硬扛。需要:请求排队 + 优先级调度 + 流式返回 + 语义限流

📋 案例:AI写作助手的并发治理

plaintext

                    ┌─────────────────┐
  1000 req/s ────→ │  请求网关        │
                    │  ┌───────────┐  │
                    │  │ 语义限流器 │  │  ← 不是按QPS限,而是按"意图"限
                    │  └───────────┘  │
                    │  ┌───────────┐  │
                    │  │ 优先级队列 │  │  ← VIP用户优先、实时对话 > 批量生成
                    │  └───────────┘  │
                    └────────┬────────┘
                             │
              ┌──────────────┼──────────────┐
              ▼              ▼              ▼
        实时对话队列    文档生成队列    翻译队列
        (P0, ≤5s)      (P1, ≤30s)    (P2, ≤60s)
              │              │              │
              ▼              ▼              ▼
        GPU Pool A      GPU Pool B      GPU Pool C
        (A100×4)        (A100×2)        (T4×8)

关键设计

  • 语义限流:不是粗暴按QPS限,而是识别请求意图。100个"闲聊"请求可以限流,但1个"紧急工单处理"不能挡

  • 分级队列:实时对话(打字时补全)延迟要求<500ms,文档生成可以30s,翻译可以1min——混在一起会互相拖慢

  • 流式返回:SSE(Server-Sent Events)把30秒的等待变成"逐字出现",体感延迟从30s降到0.5s

  • 降级策略:A100打满时,非实时请求降级到小模型(Qwen-7B替代Qwen-72B),质量降但不断服

三、分布式系统 → AI 推理集群

传统概念

多台机器协同工作,核心挑战:一致性、分区容错、故障恢复、数据分片。

AI场景结合

大模型推理不是"一台机器跑一个模型"那么简单。大模型需要张量并行(一个模型切到多卡),小模型需要数据并行(多卡跑多份),还需要模型热切换(不停服换模型版本)。这是分布式系统的新战场。

📋 案例:多模型推理集群的部署架构

plaintext

                    ┌──────────────────┐
                    │  Model Router     │
                    │  (模型路由层)      │
                    │  按请求特征路由到   │
                    │  最优推理实例组     │
                    └────────┬─────────┘
                             │
          ┌──────────────────┼──────────────────┐
          ▼                  ▼                  ▼
   ┌──────────────┐  ┌──────────────┐  ┌──────────────┐
   │ Instance     │  │ Instance     │  │ Instance     │
   │ Group A      │  │ Group B      │  │ Group C      │
   │              │  │              │  │              │
   │ Qwen-72B     │  │ Qwen-7B×4    │  │ Embedding    │
   │ TP=4 (4卡)   │  │ DP=4 (4实例) │  │ DP=2         │
   │ A100×4       │  │ T4×4         │  │ T4×2         │
   │              │  │              │  │              │
   │ 长文本/复杂  │  │ 短对话/快速  │  │ 向量检索     │
   └──────────────┘  └──────────────┘  └──────────────┘

   TP = Tensor Parallelism (张量并行,一个模型切到多卡)
   DP = Data Parallelism (数据并行,多卡跑多份)

关键设计

  • TP(张量并行) :72B模型太大,一张卡放不下,切成4份放到4张A100上协同推理——这就是分布式系统里的"分片"思想

  • DP(数据并行) :7B模型一张卡就够,但并发高,跑4份——这就是"水平扩展"

  • 模型路由:根据请求的token长度和复杂度,路由到不同的实例组——短对话走7B快而省,长文档走72B准而慢

  • 故障恢复:Group A某卡挂了,整个Group A标记不可用(TP要求所有卡都在),请求自动路由到其他Group——和分布式系统的故障转移一个逻辑

四、缓存 → AI 的语义缓存

传统概念

用空间换时间,把计算结果存起来,下次相同请求直接返回。经典:Redis、CDN。

AI场景结合

传统缓存是精确匹配(key完全相同才命中),但LLM请求天然具有语义相似性——"Python怎么读文件"和"Python读取文件的方法"是同一个问题,精确匹配完全命中不了。需要语义缓存:用Embedding算相似度,超过阈值就返回缓存结果。

📋 案例:RAG客服系统的语义缓存

plaintext

用户A问:"退货流程是什么?"
  │
  ▼
Embedding → 向量 [0.12, 0.87, 0.34, ...]
  │
  ▼
语义缓存查找 → 相似度 0.97(超过阈值0.95)
  │
  ▼
缓存命中!直接返回,0.05秒(省了3秒推理+0.5秒检索+¥0.02 Token费)

---

用户B问:"怎么办理退款?"
  │
  ▼
Embedding → 向量 [0.11, 0.85, 0.33, ...]
  │
  ▼
语义缓存查找 → 相似度 0.94(低于阈值0.95)
  │
  ▼
缓存未命中 → 走完整RAG+LLM链路,3.2秒
  │
  ▼
结果写入缓存(TTL=24h,按业务热度衰减)

缓存分层设计

plaintext

┌────────────────────────────────────────┐
│ L1: 精确缓存 (Redis)                    │  命中率 15%,延迟 <5ms
│ key = hash(prompt + system_prompt)      │  完全相同的问法
├────────────────────────────────────────┤
│ L2: 语义缓存 (Vector DB)               │  命中率 35%,延迟 ~50ms
│ key = embedding相似度 > 0.95            │  不同问法但同一意图
├────────────────────────────────────────┤
│ L3: 组件缓存 (Redis)                    │  命中率 40%,延迟 <10ms
│ 缓存RAG检索结果、Embedding结果          │  检索结果不变则复用
└────────────────────────────────────────┘
                                        总命中率 ~70%
                                        每月Token费用降 60%+

关键洞察:传统缓存追求"命中率",语义缓存还要追求"准确率"——相似度0.90的缓存结果可能是错的(用户问的是"退货"但缓存的是"换货"),阈值设高了命中率低、设低了准确率差,这是AI场景特有的权衡。

五、消息队列 → AI 异步任务编排

传统概念

生产者-消费者模式,解耦、削峰、异步。经典:Kafka、RabbitMQ、RocketMQ。

AI场景结合

AI任务天然适合异步——批量翻译、文档摘要、代码Review,用户不需要等。但AI异步任务比传统异步更复杂:每个任务可能调用多次LLM(Agent循环),需要中间状态追踪(进行到哪一步了),还有Token预算控制(一次任务花多少钱要可控)。

📋 案例:AI代码Review系统的异步编排

plaintext

开发者提交PR
  │
  ▼
┌─────────────────────────────────────┐
│  Webhook → 消息队列 (Kafka)          │
│  Topic: code-review-requests        │
│  Message: {repo, pr_id, diff_url}   │
└──────────────┬──────────────────────┘
               │
               ▼
┌─────────────────────────────────────┐
│  Review Coordinator (Consumer)       │
│  1. 拉取diff,按文件拆分子任务       │
│  2. 每个子任务发到不同Topic          │
└─────┬──────────┬──────────┬────────┘
      │          │          │
      ▼          ▼          ▼
  Topic:       Topic:       Topic:
  security     style        logic
  -check       -check       -check
      │          │          │
      ▼          ▼          ▼
  Security     Style       Logic
  Agent        Agent       Agent
  (LLM×1)     (LLM×1)     (LLM×3)
      │          │          │
      ▼          ▼          ▼
  Topic: review-results (汇总)
      │
      ▼
┌─────────────────────────────────────┐
│  Aggregator (Consumer)               │
│  1. 等所有子任务完成(CountdownLatch)│
│  2. 汇总结果,去重,排序             │
│  3. 生成最终Review报告               │
│  4. 回写PR Comment                   │
└─────────────────────────────────────┘

进度追踪:Redis Hash
  key: review:{pr_id}
  fields: {security: "done", style: "running", logic: "pending", 
           total_cost: ¥0.12, start_time: "10:00"}

关键设计

  • 任务拆分:一个大PR的Review不能一个LLM调用搞定——按关注点(安全/风格/逻辑)拆成子任务,并行执行

  • 中间状态追踪:开发者随时能看到"安全检查完成、逻辑检查进行中"——传统消息队列没有这个,需要额外用Redis记录

  • Token预算:每个子任务设置max_tokens,Aggregator检查总花费,超预算就跳过剩余子任务返回已有结果

  • 死信队列:某个Agent卡住了(LLM超时),超时后进DLQ,Aggregator用已有结果凑合交付,不卡整个流程

六、负载均衡 → AI 请求的智能路由

传统概念

把请求分发到多个后端实例,策略:轮询、加权、最少连接、一致性哈希。

AI场景结合

AI推理的负载均衡比传统场景多一个维度:不同请求的"成本"差异巨大。一个100 token的短对话和10000 token的长文档分析,占用的GPU时间和显存差100倍。传统"最少连接数"策略会严重不均。

📋 案例:多模型推理集群的智能路由

plaintext

请求进来
  │
  ▼
┌──────────────────────────────────────────┐
│  Smart Router                             │
│                                           │
│  Step 1: 请求分类                         │
│    - 短对话 (<500 token)    → 轻量队列    │
│    - 长文档 (>5000 token)   → 重量队列    │
│    - Embedding请求          → 向量队列    │
│                                           │
│  Step 2: 实例选择                         │
│    - 轻量队列 → 剩余显存 > 4GB 的实例     │
│    - 重量队列 → 剩余显存 > 16GB 的实例    │
│    - 向量队列 → 最低队列深度的实例         │
│                                           │
│  Step 3: 预测性调度                       │
│    - 当前队列预计等待时间 > 阈值?         │
│      → 降级到小模型 or 返回排队提示       │
│    - 某实例刚完成长请求?                  │
│      → 冷却期,暂不分配长请求(KV Cache   │
│        还在清理,显存未完全释放)          │
└──────────────────────────────────────────┘

与传统负载均衡的对比

表格

维度

传统负载均衡

AI智能路由

请求成本

基本一致(ms级)

差异100倍(0.1s~30s)

资源指标

CPU/连接数

GPU显存/KV Cache占用

路由依据

请求元信息

请求内容(token数、模型需求)

预测性

很少需要

必须(长请求会阻塞队列)

降级

返回503

切换小模型/流式降级

七、API网关 → AI 网关

传统概念

统一入口,负责鉴权、限流、路由、日志、协议转换。经典:Nginx、Kong、Spring Cloud Gateway。

AI场景结合

AI网关在传统网关基础上,多了:Token计费、模型路由、Prompt注入、内容安全审核、多模型Fallback。它不只是"请求转发器",更是"AI流量控制器"。

📋 案例:企业AI中台的统一网关

plaintext

所有AI请求统一入口
  │
  ▼
┌──────────────────────────────────────────────┐
│  AI Gateway                                   │
│                                               │
│  ① 鉴权 & 配额                                │
│     - API Key / OAuth2 校验                   │
│     - 按团队/项目设置Token配额                 │
│     - 用量实时扣减(Redis原子操作)            │
│                                               │
│  ② Prompt 管理                                │
│     - 注入系统Prompt(角色设定、安全约束)      │
│     - Prompt模板变量替换                       │
│     - 敏感词过滤(输入 & 输出双向)            │
│                                               │
│  ③ 模型路由 & Fallback                        │
│     - 主模型: GPT-4o                          │
│     - 降级链: GPT-4o → Claude → Qwen → 429   │
│     - 按成本/延迟/质量三维路由                  │
│                                               │
│  ④ 可观测性                                   │
│     - 每次请求: 输入token数、输出token数、      │
│       模型名、延迟、成本、是否缓存命中          │
│     - 实时Dashboard: QPS/成本/错误率           │
│                                               │
│  ⑤ 流式协议转换                               │
│     - OpenAI格式 ↔ Anthropic格式 ↔ 自研格式   │
│     - 统一输出SSE流                           │
└──────────────────────────────────────────────┘

关键设计

  • Token计费:传统网关按请求次数计费,AI网关必须按Token计费——一个请求可能花¥0.001也可能花¥1,不按Token收费团队间根本算不清

  • Prompt注入:网关层统一注入安全Prompt("你不能泄露公司内部信息"),应用层不需要各自写——防的的就是某个应用忘了加

  • 多模型Fallback:GPT-4o挂了自动切Claude,Claude也挂了切本地Qwen——和传统网关的"上游故障转移"逻辑一样,但多了一个"降级不降断"的选择

八、可观测性 → AI 链路追踪

传统概念

Metrics(指标)、Logs(日志)、Traces(链路追踪)三位一体。经典:Prometheus + Grafana + ELK + Jaeger。

AI场景结合

AI应用的可观测性多了两个核心维度:Token消耗LLM决策质量。传统链路追踪只关心"哪一步慢",AI链路追踪还要关心"哪一步LLM产生了幻觉"、"哪一步工具调用选错了"。

📋 案例:Agent系统的全链路追踪

plaintext

用户问:"帮我查一下订单12345的物流状态"
  │
  ▼ Span: root (总耗时 4.2s, 总Token 856, 总成本 ¥0.08)
  │
  ├─ Span: intent-recognition (0.3s, 120 tokens)
  │    result: {intent: "logistics_query", entities: {order_id: "12345"}}
  │    ✓ 意图识别正确
  │
  ├─ Span: tool-selection (0.2s, 85 tokens)
  │    result: selected_tool = "query_logistics"
  │    ✓ 工具选择正确
  │
  ├─ Span: tool-execution (0.8s, 0 tokens)
  │    ├─ Span: api-call → 物流系统 (0.6s)
  │    │    result: {status: "运送中", location: "北京分拨中心"}
  │    │    ✓ API调用成功
  │    │
  │    └─ Span: api-call → 订单系统 (0.2s)
  │         result: {order_id: "12345", product: "手机壳"}
  │         ✓ API调用成功
  │
  ├─ Span: response-generation (2.5s, 651 tokens)
  │    result: "您的订单12345(手机壳)目前正在运送中..."
  │    ✓ 回答准确,无幻觉
  │
  └─ Span: quality-check (0.4s, 0 tokens - 规则引擎)
       result: PASS (事实与API返回一致)

AI场景特有的监控指标

表格

传统指标

AI场景新增指标

QPS / 延迟 / 错误率

Token吞吐量 / 首Token延迟(TTFT)

CPU / 内存 / 网络IO

GPU利用率 / KV Cache命中率

请求成功率

意图识别准确率 / 幻觉率

P50/P95/P99延迟

缓存命中率 / 降级率

业务转化率

工具调用成功率 / Agent循环次数

关键洞察:传统可观测性回答"系统健不健康",AI可观测性还要回答"AI靠不靠谱"。一个系统可能99.9%可用,但如果LLM 30%的时候在胡说,用户体验一样是灾难。

九、服务网格 → AI 服务治理

传统概念

以Sidecar模式治理服务间通信:流量控制、熔断、灰度发布、mTLS。经典:Istio、Linkerd。

AI场景结合

AI服务间的通信治理更复杂:模型版本灰度(新模型只放5%流量)、基于质量的熔断(错误率飙升时自动切回旧模型)、A/B测试(对比两个模型的效果)。

📋 案例:模型灰度发布 + 质量熔断

plaintext

┌──────────────────────────────────────────────┐
│  AI Service Mesh (Sidecar Proxy)              │
│                                               │
│  灰度策略:                                    │
│    - Qwen-72B-v1 (旧版): 95% 流量            │
│    - Qwen-72B-v2 (新版): 5% 流量             │
│                                               │
│  质量监控 (Sidecar实时统计):                   │
│    - v1: 幻觉率 2.1%, 平均延迟 3.2s           │
│    - v2: 幻觉率 8.7%, 平均延迟 2.8s ← 注意!  │
│                                               │
│  熔断触发:                                    │
│    - v2幻觉率 > 5% 持续 5分钟 → 熔断          │
│    - 自动将v2流量切回v1                       │
│    - 告警通知模型团队                         │
│                                               │
│  逐步放量 (质量达标后):                        │
│    - Day 1: 5% → 10% → 25%                   │
│    - Day 2: 25% → 50% → 100%                 │
│    - 每个阶段观察30分钟,质量不达标自动回滚    │
└──────────────────────────────────────────────┘

与传统灰度的核心区别:传统灰度看"错误率"(HTTP 5xx),AI灰度看"质量"(幻觉率、工具调用成功率)。一个模型可能从不返回5xx,但回答完全不对——传统熔断发现不了这个问题。

十、数据库分库分表 → 向量数据库的水平扩展

传统概念

数据量大了单库扛不住,按业务或规则拆分。经典:按用户ID哈希分库、按时间分表。

AI场景结合

向量数据库的扩展比传统数据库更难:向量检索需要全局TopK,不能只查一个分片就返回。传统分库分表每个查询只走一个分片,向量检索每个查询要走所有分片再合并——这就是"散播-聚合"(Scatter-Gather)模式。

📋 案例:亿级文档的向量检索架构

plaintext

查询: "AI工程化最佳实践"
  │
  ▼
┌────────────────────────────────────────┐
│  Query Router (查询路由)                │
│  1. Embedding查询向量                   │
│  2. 预过滤: 只查相关分片(按业务标签)  │
└───────┬──────────┬──────────┬─────────┘
        │          │          │
        ▼          ▼          ▼
   Shard A     Shard B     Shard C
   (技术文档)  (产品文档)  (运营文档)
   TopK=20     TopK=20     TopK=20
        │          │          │
        └──────────┴──────────┘
                   │
                   ▼
         Global Re-Rank (全局重排)
         60个候选 → Cross-Encoder精排 → TopK=5
                   │
                   ▼
              最终结果返回

分片策略对比

表格

策略

适用场景

优点

缺点

随机哈希分片

数据分布均匀

简单,负载均衡

每次查询要走所有分片

业务标签分片

有明确业务边界

可预过滤,减少分片扫描

边界模糊的数据难处理

向量聚类分片

数据有天然聚类

同类查询只走部分分片

数据分布变化时需重分片

层级索引

超大规模(10亿+)

两阶段检索,效率高

索引维护成本高

关键洞察:传统分库分表的目标是"每个查询只走一个分片",向量分片做不到这点。所以AI场景的分片策略重点不是"怎么让查询只走一个分片",而是"怎么让查询尽量少走分片"——业务标签预过滤是最实用的手段。

十一、DevOps/CI-CD → AI 工程的 MLOps

传统概念

持续集成/持续交付,代码提交→自动测试→自动部署。经典:Jenkins、GitHub Actions、GitLab CI。

AI场景结合

AI应用的"代码"不只是程序代码,还有Prompt、模型、向量数据、评测集。CI/CD需要扩展为:Prompt变更自动评测 → 模型切换自动灰度 → 向量数据变更自动验证

📋 案例:AI应用的CI/CD流水线

plaintext

开发者提交代码 (含Prompt变更)
  │
  ▼
┌─────────────────────────────────────────┐
│  Stage 1: 单元测试 (2min)                │
│  - 工具调用逻辑测试                      │
│  - Prompt模板渲染测试                    │
│  - 向后兼容性测试(新Prompt能处理旧格式) │
└──────────────┬──────────────────────────┘
               │ pass
               ▼
┌─────────────────────────────────────────┐
│  Stage 2: 评测集回归 (15min)             │
│  - 跑500条标准评测集                     │
│  - 对比新旧Prompt/模型的结果             │
│  - 关键指标: 准确率≥95%, 幻觉率≤3%       │
│  - 任何指标下降 >2% → 流水线失败         │
└──────────────┬──────────────────────────┘
               │ pass
               ▼
┌─────────────────────────────────────────┐
│  Stage 3: 灰度部署 (30min观察)           │
│  - 5%流量到新版本                        │
│  - 实时监控质量指标                      │
│  - 质量不达标 → 自动回滚                │
└──────────────┬──────────────────────────┘
               │ pass
               ▼
┌─────────────────────────────────────────┐
│  Stage 4: 全量发布                       │
│  - 逐步放量到100%                        │
│  - 保留旧版本24h可快速回退               │
└─────────────────────────────────────────┘

与传统CI/CD的区别

表格

维度

传统CI/CD

AI CI/CD

测试对象

代码逻辑

Prompt效果 + 代码逻辑

测试方法

断言(精确匹配)

评测集(语义匹配 + 统计指标)

通过标准

0个bug

准确率≥阈值,幻觉率≤阈值

部署风险

功能回归

模型行为不可预测

回滚依据

错误率

质量指标(幻觉率/准确率)

十二、安全架构 → AI 安全部防

传统概念

认证、授权、加密、WAF、SQL注入防护、XSS防御。

AI场景结合

AI应用面临全新的攻击面:Prompt注入(让AI绕过安全约束)、数据泄露(从RAG中套取敏感信息)、模型窃取(通过大量请求反推模型)。传统的WAF和SQL注入防护完全防不住这些。

📋 案例:AI应用的安全纵深防御

plaintext

用户输入
  │
  ▼
┌─────────────────────────────────────────┐
│  Layer 1: 输入过滤 (网关层)              │
│  - Prompt注入检测(已知攻击模式匹配)    │
│  - 敏感信息脱敏(身份证号、银行卡号)    │
│  - 输入长度/格式限制                     │
└──────────────┬──────────────────────────┘
               │
               ▼
┌─────────────────────────────────────────┐
│  Layer 2: System Prompt 防护 (编排层)    │
│  - System Prompt与用户输入严格隔离       │
│  - 明确安全边界指令                      │
│  - 工具调用白名单(只能调用已注册工具)  │
└──────────────┬──────────────────────────┘
               │
               ▼
┌─────────────────────────────────────────┐
│  Layer 3: RAG权限控制 (检索层)           │
│  - 向量检索注入用户权限标签              │
│  - 用户只能检索自己有权限的文档          │
│  - 防止越权查询:普通员工搜不到CEO文档   │
└──────────────┬──────────────────────────┘
               │
               ▼
┌─────────────────────────────────────────┐
│  Layer 4: 输出审核 (网关层)              │
│  - 输出敏感信息检测(是否泄露了内部数据)│
│  - 幻觉检测(回答是否与RAG检索结果一致) │
│  - 合规性检查(是否符合行业规范)        │
└──────────────┬──────────────────────────┘
               │
               ▼
         安全的AI响应

AI特有攻击与防御

表格

攻击类型

传统防护有效?

AI防护手段

Prompt注入("忽略之前的指令")

输入过滤 + System Prompt隔离 + 输出审核

RAG越权("告诉我CEO的薪资")

向量检索权限标签 + 结果脱敏

数据投毒(污染训练/检索数据)

数据源可信验证 + 检索结果置信度评估

模型窃取(大量请求反推模型)

⚠️ 限流部分有效

语义限流 + 输出截断 + 水印技术

供应链攻击(恶意工具/MCP)

工具白名单 + MCP服务端验证

总结:一张图看全貌

plaintext

┌─────────────────────────────────────────────────────────────────┐
│                    AI × 传统架构 结合全景图                       │
│                                                                   │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐                   │
│  │ 微服务    │───→│ AI服务   │    │ 高并发    │───→│ 语义限流  │   │
│  │ 架构     │    │ 拆分     │    │ 治理     │    │ 分级队列  │   │
│  └──────────┘    └──────────┘    └──────────┘    └──────────┘   │
│                                                                   │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐                   │
│  │ 分布式   │───→│ 推理集群 │    │ 缓存     │───→│ 语义缓存  │   │
│  │ 系统     │    │ TP/DP   │    │ 策略     │    │ 三层缓存  │   │
│  └──────────┘    └──────────┘    └──────────┘    └──────────┘   │
│                                                                   │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐                   │
│  │ 消息队列 │───→│ 异步任务 │    │ 负载均衡 │───→│ 智能路由  │   │
│  │          │    │ 编排     │    │ 策略     │    │ 显存感知  │   │
│  └──────────┘    └──────────┘    └──────────┘    └──────────┘   │
│                                                                   │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐                   │
│  │ API网关  │───→│ AI网关   │    │ 可观测性 │───→│ AI链路    │   │
│  │          │    │ Token计费│    │ 三件套   │    │ 质量追踪  │   │
│  └──────────┘    └──────────┘    └──────────┘    └──────────┘   │
│                                                                   │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐                   │
│  │ 服务网格 │───→│ 模型灰度 │    │ 分库分表 │───→│ 向量分片  │   │
│  │          │    │ 质量熔断 │    │          │    │ Scatter-  │   │
│  └──────────┘    └──────────┘    └──────────┘    │ Gather    │   │
│                                                  └──────────┘   │
│  ┌──────────┐    ┌──────────┐                                   │
│  │ CI/CD    │───→│ MLOps    │    ┌──────────┐                   │
│  │          │    │ 评测集   │    │ 安全架构 │───→│ AI安全    │   │
│  └──────────┘    │ 回归     │    │          │    │ 纵深防御  │   │
│                  └──────────┘    └──────────┘    └──────────┘   │
└─────────────────────────────────────────────────────────────────┘

核心原则

  1. AI应用是分布式应用——所有传统架构原则都适用,但每个都需要"AI化适配"

  2. 请求成本差异是最大变量——传统请求ms级且成本均匀,AI请求0.1s~30s且成本差100倍,这改变了几乎所有架构决策

  3. 质量是新的可用性——传统架构追求"不挂",AI架构还要追求"不胡说";99.9%可用但30%幻觉的系统,比95%可用但1%幻觉的系统更危险

  4. 缓存是AI省钱的命脉——语义缓存+组件缓存能把Token费用降60%+,这是AI场景ROI最高的优化

  5. 可观测性要覆盖"AI层" ——传统Metrics只看系统健康,AI场景还要看模型决策质量、Token消耗、缓存效果

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区