前端知库

点击“停止生成”后,服务端一定停止调用模型吗?

参考答案

不一定。前端停止显示、取消 HTTP 请求、服务端中止上游模型请求,是不同层次的动作。AI SDK 的 stop 会中止客户端请求;要让取消继续传到模型,还依赖服务端运行环境传播断连信号,并把信号传给模型调用。

因此不能仅凭按钮恢复可点击就承诺已经停止服务商计费。页面应区分用户主动取消与网络错误,说明已显示内容是否保留;后端还需要处理清理和部分结果保存。已经发生的工具副作用也不会因为取消生成自动回滚。

如果产品希望关闭页面后仍生成完毕并稍后恢复,就需要另一个明确的后台执行与持久化策略。当前 AI SDK 文档指出其 useChat 的流中止与 resume 模式存在不兼容限制,选型时应核对版本,而不是默认同时打开就能获得两种效果。