AI LifeOS
AI 工程与转型白皮书
WP-01 · 第 8

LLM 应用的成本与延迟优化

生产 LLM 应用省钱又提速的系统方法:模型分级、缓存、上下文压缩、流式与并行、批处理、蒸馏与量化,附优化清单。

LLM 应用的成本与延迟优化

结论先行:LLM 的两大生产成本是token 费用用户等待。优化顺序应是先"别调用"(缓存/路由),再"调小/调短"(分级/压缩),最后才"调快基建"(流式/并行/批处理)。

相关阅读:LLM 应用架构微调 vs RAG vs PromptAgent 架构模式LLM 应用评估

1. 先量化:你在为什么付费

  • 成本 ≈ 输入 token × 单价 + 输出 token × 单价(输出通常更贵)。
  • 延迟 ≈ 首字延迟(TTFT) + 输出 token 数 × 每 token 时间。
  • 先埋点:按功能记录 token、延迟、缓存命中率、失败率,没有数据谈优化是空谈。

2. 优化杠杆(按性价比排序)

2.1 别调用:缓存

  • 精确缓存:相同输入直接返回。
  • 语义缓存:用 embedding 判"意思相同"命中历史答案(注意时效与正确性)。
  • provider 侧 prompt 缓存:把稳定的长前缀(system+few-shot)缓存,省重复输入费用。
  • 工具结果缓存:Agent 的检索/API 结果可缓存复用。

2.2 用对模型:分级路由

  • 简单任务用小/便宜模型,难任务才升级到强模型。
  • 用一个轻量分类器/规则做路由;或先小模型试,不确定再升级(级联)。
  • 规划用强模型、执行用弱模型(Agent 场景,见 Agent 架构模式)。

2.3 调短上下文

  • 只喂相关片段(好的检索 = 更少 token),别把整库塞进 prompt。
  • 压缩历史:对话摘要、滑动窗口、丢弃低价值轮次。
  • 精简 system/few-shot:够用即可,示例不是越多越好。
  • 限制输出:明确 max_tokens、要 JSON 别要长篇解释。

2.4 调快体感与吞吐

  • 流式输出:TTFT 优化体感,用户先看到字。
  • 并行/异步:可独立的子调用并发;非阻塞路径异步化。
  • 批处理:离线/可容忍延迟的任务走批量接口,单价更低。
  • 投机/预取:预测下一步提前算(谨慎,可能浪费)。

2.5 改基座经济性

  • 蒸馏:用强模型造数据训小模型,长期降本降延迟。
  • 量化 / 自托管:高并发稳定负载下,自托管量化模型可能更省——但要算上运维成本。

3. Agent / RAG 的专项省法

  • Agent:设 max_steps / max_cost 停止条件,避免烧钱空转;减少无谓工具往返。
  • RAG:提升检索精度以减少喂入 token;对重复问题做答案缓存。

4. 别为省钱牺牲质量:用评估把关

每次优化(换小模型、压上下文、开缓存)都可能掉质量。用黄金集回归(见 LLM 应用评估)确认"省了成本但通过率没跌超阈值",否则就是劣化。

5. 优化清单

  • 埋点:token / 延迟 / 缓存命中 / 失败率。
  • 上精确缓存 + provider prompt 缓存。
  • 做模型分级路由(小→大级联)。
  • 检索只喂相关片段;压缩对话历史。
  • 限制输出长度与格式。
  • 流式 + 并行 + (离线)批处理。
  • 每项优化跑评估回归,守住质量底线。

小结

成本与延迟优化是工程活,不是玄学:先测量,再按"别调用 → 用对模型 → 调短 → 调快 → 改基座"的顺序动手,每步用评估兜住质量。多数应用做完缓存+分级+上下文瘦身,就能砍掉一大半开销。