AI应用高级工程师 · 第 11 / 12 章

性能、成本、并发与模型路由

AI应用的慢和贵通常不是一个参数造成的。本章拆开端到端延迟,解释缓存、批处理、并发、限流、队列、上下文压缩和模型路由。

上一章
系统已有明确安全边界,优化不能绕过权限和校验。
→
本章解决
在质量安全达标的前提下控制响应时间、吞吐量、Token和费用。
→
下一章
通过测试、灰度、监控和回滚真正上线。
学完后的结果:你能定位性能瓶颈、设计缓存与并发、处理429和高峰,并用模型路由平衡质量成本。

本章目录

阅读过程中可按 Ctrl + Z 快速返回当前页面的本章目录;也可以点击右下角按钮。

本章思维导图

知识流向:先完成左侧基础,再进入中间机制,最后用右侧工程控制把它变成可上线能力。节点可直接点击跳转。

MODULE 01

测量时间与成本

按照本模块顺序完成以下知识点,再进入下一模块。

P01先拆端到端延迟

总延迟 = 鉴权 + 改写 + Embedding + 检索 + Rerank
       + 模型首Token + 生成 + 工具 + 网络排队

每段用Span计时。只知道“总共8秒”就换模型,可能真正瓶颈是数据库。

指标含义
P50一半请求比它快,代表典型体验
P95/P99暴露少数严重慢请求
TTFTTime To First Token,第一段文字出现前的等待
生活中的例子:总行程慢不一定是汽车慢,也可能是收费站排队;必须拆开测每一段时间。

P02Token和总成本

成本由输入Token、输出Token、Embedding、Rerank、工具和基础设施共同组成。长上下文也增加处理时间和噪声。

模型成本≈输入Token×输入单价+输出Token×输出单价
月成本≈各请求类型平均成本×数量+存储/计算/日志成本

按请求类型记录实际用量,不能用平均值掩盖超长异常请求。

生活中的例子:Token像出租车里程,输入和输出越长费用越高,但便宜路线也不能牺牲安全。

P03四类缓存

缓存Key依据风险
精确缓存规范请求+租户+版本漏权限会串数据
Prompt缓存相同长前缀厂商能力和保留策略不同
语义缓存问题向量相似度相似问句可能有关键差别
数据缓存业务对象ID失效不及时产生旧数据
生活中的例子:缓存像把常用文件放桌面抽屉;快,但原件更新后抽屉里的旧副本也要换。

P04Cache-aside和失效

缓存读取模式 程序先读缓存,未命中再读权威数据库并写缓存;更新时先写权威库,再删除对应缓存。

未命中→
读主库
→
写缓存+TTL
→
返回

知识版本切换要主动失效旧答案。TTL只是过期上限,不能代替版本号。

生活中的例子:先看冰箱有没有牛奶,没有才去仓库拿;仓库更新后要把冰箱旧牛奶清掉。
MODULE 02

控制并发与流量

按照本模块顺序完成以下知识点,再进入下一模块。

P05批处理、并发、异步和并行

Batching批处理

一次提交多条Embedding,减少网络往返。

Concurrency并发

多个请求交错等待,提高吞吐,但可能触发限流。

Async异步

等待网络时释放执行资源,不让模型计算凭空变快。

Parallel并行

多个计算真正同时运行;有依赖的步骤不能强行并行。

生活中的例子:批处理像一车运多箱货;并发像多个窗口同时服务;异步像等叫号时先办别的事。

P06429、退避与Jitter

429一般表示超过速率或配额。指数退避让等待逐次增加,Jitter加入随机抖动,防止所有实例同时重试。

约0.5秒 → 1秒 → 2秒 + 随机抖动
达到上限后排队、降级或明确失败

无限重试会放大故障和费用;写工具重试前先查幂等结果。

生活中的例子:多人同时挤门口时,让大家逐渐延长等待并随机错开,避免下一秒再次一起冲门。

P07队列、背压和高峰保护

流量控制 Backpressure背压表示下游处理不过来时,上游必须减速、排队或拒绝,不能无限堆进内存。

限制队列长度和任务有效期。
在线问答、批量入库、写工具分优先级。
超容量返回繁忙或安全降级。
监控等待时间、积压和消费速度。
生活中的例子:餐厅厨房满单后前台要限流或排队,不能无限接单导致所有顾客都吃不到。

P08Model Routing模型路由

后端选型策略 后端按风险、复杂度、语言、延迟和成本选模型。

简单分类 → 快模型+严格Schema
复杂政策解释 → 强模型+RAG引用
高风险审批 → 规则/人工主导
主模型故障 → 已评测备用模型或安全降级

每条路由都独立评测;不同模型的Schema支持和分数阈值可能不同。

生活中的例子:简单快递走经济线路,重要精密仪器走更可靠线路;路线要由业务风险决定。

P09上下文压缩的边界

可删除重复、限制候选、Rerank后只放关键证据、摘要早期低风险对话、缓存稳定前缀。不能删权限规则、否定条件、版本和引用。

优化顺序:Trace找最大问题→一次改一个变量→同一评测集确认质量→小流量上线。

生活中的例子:整理行李可去掉重复衣物,但不能丢掉护照、药品和登机牌。
MODULE 03

扩展模型能力

按照本模块顺序完成以下知识点,再进入下一模块。

P10Fine-tuning 的适用条件

模型训练方式 Fine-tuning微调是用一批高质量输入输出示例继续训练基础模型,使其更稳定地学习某类行为、风格或专门任务。它不是把公司数据库直接“塞进模型”。

需求默认方案原因
经常变化的政策和价格RAG或工具可更新、可引用、可按权限过滤
稳定输出风格和专门分类先Prompt+评测,不够再微调微调可能降低Prompt长度并提高一致性
实时订单状态工具查询训练数据不代表当前事实

微调流程包含数据清洗、训练集/验证集隔离、基线比较、安全评测、模型版本和回滚。训练样本质量差会把错误系统性学进去。

生活中的例子:微调像长期培训员工形成稳定风格;实时库存仍要查仓库,不能靠培训记忆。

P11多模态能力的架构接入

多种输入输出形式 Multimodal多模态指文字之外还处理图片、音频或视频。图片可由视觉模型理解,扫描件可先OCR;语音可先ASR语音识别成文字,输出可用TTS文字转语音。

图片/语音/视频
→
上传与权限检查
→
视觉/OCR/ASR模型
→
结构化结果+原始引用
→
RAG/工具/LLM

要额外处理文件大小、格式、恶意文件、隐私、识别置信度、时间轴、成本和人工复核。OCR或语音识别得到的文字仍是不可信模型输出,不能直接触发退款。

生活中的例子:多模态像客服既能读文字,也能看商品照片、听语音;每种输入都要先安检和识别。

P12容量规划与负载测试

用真实请求长度、并发、缓存命中和工具延迟压测。观察每秒请求、连接、队列、P95/P99、错误率、Token速率、数据库连接和内存。

性能工程不是“都并发、都缓存、都用小模型”,而是在质量安全约束下用数据控制瓶颈和过载。

生活中的例子:开店前用真实客流做压力演练,观察队伍、收银台、仓库在哪个环节先拥堵。

本章总结:从哪里来,解决什么,为什么继续

上一章留下的问题怎样让系统更快、更稳、更省
本章形成的能力先测量瓶颈,再逐项优化缓存、并发、路由和模型能力,并用评测保证质量不下降。
下一章必须继续解决怎样测试、发布、监控和回滚

本章参考的权威资料

课程讲的是跨厂商通用工程方法;具体参数会更新,真正开发时再以所选厂商最新官方文档为准。

← 上一章AI应用安全与权限防线下一章 →部署、测试、监控与LLMOps
↑ 返回本章目录Ctrl+Z