Skip to content

断点续传线路

断点续传线路用于降低长时间流式输出因客户端网络波动而完全丢失的风险。它不会让网络连接永远不断开,而是在连接中断后尽量保留原请求已经生成的内容,使相同请求能够继续接收结果。

大致原理

使用普通线路时,如果客户端中途断开,再次发送请求通常会重新生成一遍,并产生新一笔费用。断点续传线路可以保留原请求的生成进度,避免用户仅仅因为断线重连,就为相同内容重复付费。

断点续传线路会将客户端连接与当前生成过程分开处理:

  1. 客户端提交请求后,线路开始接收模型响应并暂存已生成内容。
  2. 如果客户端连接正常,内容会像普通流式响应一样持续返回。
  3. 线路与模型之间的连接,不受客户端连接状态影响。即使客户端中途断开,线路仍会尽量继续接收模型生成的剩余内容。
  4. 客户端使用完全相同的请求重新连接时,线路先发送此前已生成的内容,再继续发送后续内容。

因此,“防断流”指的是减少连接中断造成的结果丢失和重复生成,并不是阻止底层网络断开。

提供的功能

中断后继续接收

如果因为网络切换、短暂掉线等原因导致回复中断,只需原样重新发送刚才的请求。只要使用相同的 API Key、线路地址、模型、消息和参数,并且没有超过结果保留时间,线路就会把之前已经生成的内容和后续内容继续发回来。

多个连接共享同一请求结果

同一份请求还在生成时,无论是客户端自动重试,还是用户手动原样重发,线路都会接入正在生成的结果,不会再启动一次相同的生成任务,也不会因为这次重连产生一笔重复费用。

短期响应缓存

请求完成后,响应会保留 1 小时。如果断线时有部分结果没有收到,可以在这段时间内原样重新发送请求,把遗漏的结果重新取回来,而不需要再次生成和重复付费。

流式连接保活

模型暂时没有生成新内容时,线路会尽量保持当前连接,降低连接因长时间没有数据返回而被提前关闭的概率。

使用方法

断点续传不需要额外的客户端插件或专用协议。选择支持该功能的线路作为客户端 Base URL 即可:

其他配置与普通线路一致:

  1. 在客户端中填写断点续传线路的 Base URL。
  2. 填写本站 API Key。
  3. 选择模型并正常发起请求。
  4. 若流式输出中途断开,使用相同 API Key、地址、模型和请求内容重新发送该请求。

续传请求必须保持一致

修改模型、消息、参数、API Key 或请求地址后,会被视为一个新请求,无法接续原结果。

能解决哪些问题

断点续传线路主要用于以下情况:

  • 长回复生成过程中,本地网络短暂中断。
  • 移动网络与 Wi-Fi 切换导致连接关闭。
  • 客户端或浏览器意外刷新、重启连接。
  • 客户端自动重试了完全相同的请求。
  • 已完成的相同请求在 1 小时内被再次发送。

不能解决哪些问题

断点续传不是无限重试或绝对可用性保证。以下情况仍可能无法恢复:

  • 请求在产生有效响应前已经失败。
  • 上游模型本身报错或停止生成。
  • 重新发送的请求与原请求不一致。
  • 响应已经超过保留时间。
  • 客户端不支持正常处理流式响应或缓存内容的快速重放。
  • 线路或上游长时间不可访问。

是否应该默认使用

网络稳定、回复较短时,普通线路通常已经足够。经常生成长回复,或所在网络容易中断时,再优先选择断点续传线路。

使用注意事项

断点续传线路在客户端离开后仍可能继续完成原请求。因此,关闭页面或停止客户端不等于立即停止模型生成和用量计算。若需要频繁主动取消生成,应使用普通线路。