"为什么我的 AI 应用感觉卡?"延迟大往往不是模型本身慢,而是链路里某个环节拖了后腿。本文帮你系统性地排查并优化。
一、先定位延迟来源
一次请求的耗时可以拆成四段:网络往返、服务端排队、模型首 Token 生成、Token 逐字输出。分别计时后,就能知道瓶颈在哪。常见结论是:网络与首 Token 占大头,逐字输出占比取决于回复长度。
二、8 个实测有效的优化技巧
- 开启流式输出:让用户先看到首 Token,感知延迟大幅下降;
- 选择就近/优化线路:优先选国内直连或多节点调度的中转;
- 缩短输入:精简 Prompt 和历史消息,输入越短首 Token 越快;
- 并发请求:多个独立任务并行发送,而不是串行等待;
- 复用连接:使用 HTTP 长连接/连接池,省去重复握手;
- 缓存重复结果:对相同 Prompt 做本地或语义缓存;
- 选对模型:简单任务用小模型,复杂任务再上大模型;
- 限制输出长度:设置
max_tokens,避免无意义的超长回复。
三、首 Token 与流式的正确用法
很多应用把"总耗时"当成体验指标,其实用户更在意"多久看到第一个字"。开启 SSE 流式输出后,即使总耗时不变,体感也会明显提升。这是投入产出比最高的一项优化。
四、常见误区
- 盲目追求"最快的模型",忽略了网络与输入长度的影响;
- 把所有请求都串行化,白白浪费并发能力;
- 不做缓存,重复调用相同内容。
如果延迟问题伴随报错,可参考常见报错排查。