| 收益 | 首字延迟低;中断即停,不为不看的输出付费 |
|---|---|
| 计费 | 按实际生成的 token 计费,中断后停止累计 |
| 实现 | SSE 连接关闭 → 服务端中止上游请求 |
| 注意 | 中断要传递到模型调用层,否则白流 |
中断传播(伪代码)
中断传播(伪代码)
# 前端 abort → 网关捕获 → 关闭上游请求
async def proxy(req):
upstream = client.stream(...) # 指向上游模型的流
try:
async for chunk in upstream:
yield chunk
finally:
await upstream.aclose() # 客户端断开时真正停掉生成“用户已经关页面了,上游还在生成”是常见的隐性浪费:网关层要把断连传导到模型调用。