SSE 流查看器
贴上原始的流式响应,把正文、工具调用和用量都拿回来。
原始流里装着完整的响应。它在浏览器里解析,绝不上传。
算一算产生它的那个循环的成本
关于 SSE 流查看器
当一次流式调用出问题时,你手里拿到的是一堵由 event 行和 data 行砌成的墙,而你真正想知道的三件事全散落其中:模型到底说了什么、为什么停下、用掉了多少。正文是分片到达的,工具参数是要等最后一片落地才解析得了的局部 JSON,用量则分散在第一个事件和最后一个事件里。这里把它们全部重新拼起来。两种常见的流形状都能处理,因为实际上两种都有人贴;解析不了的事件会被报告出来,而不是悄悄跳过。
功能特性
- 按顺序从增量中重新拼出正文
- 从局部 JSON 还原工具参数并格式化
- 取出停止原因、模型和用量
- 同时处理块增量形状与 choices/delta 形状
- 按规范把重复的 data 行拼接起来
- 保活注释被忽略,而不是算作事件
- 错误事件会显示出来而不是跳过
- 每个事件都可展开,并按名称统计数量
如何使用 SSE 流查看器
- 贴上原始流
- 读重新拼出的正文
- 查看停止原因和用量
- 若仍有疑问,展开具体事件
示例
输入
delta: {"type":"text_delta","text":"Order 4471 "}
输出
Order 4471 shipped on 30 August.
散在六个事件里的分片,按顺序拼了回来。
常见错误与故障排除
- 没有正文出来。 — 可能在有内容之前流就结束了——看看事件列表和停止原因。一次拒绝或一个错误事件,都会产生一个合法但空的流。
- 工具参数被截断了。 — 它们以局部 JSON 分布在多个事件里。如果流被切断,JSON 就永远闭合不了,这里会显示原始分片而不是解析结果。
- 有些事件解析不了。 — 通常是复制时从事件中间截断的流。这些会带着序号被报告出来,而不是丢弃。
- 用量数字看着不全。 — 它们分散在流里:输入 token 在开头,输出 token 在末尾。缺了尾部事件的流就少了一半。
常见问题
- server-sent events 是什么?
- 一种简单的流式格式:字段与值成行,事件之间用空行分隔。流式 API 响应用的就是它,所以一次失败的调用会给你留下这么一堵墙。
- 支持哪些流形状?
- 正文以带类型的增量出现在内容块里的块形状,以及 choices/delta 形状。两者都会自动识别,因为人们贴的是自己客户端记下的那种。
- 参数为什么是一片一片来的?
- 它们以局部 JSON 流出,好让客户端在调用完成之前就开始渲染。这意味着要等最后一片到达才解析得了,所以被截断的流会留下无效的 JSON。
- 能看到它花了多少吗?
- 用量块存在时会被取出来,包括缓存读取。它告诉你这次调用用掉了什么;再往下就交给成本类工具了。
- 流会被发送到别处吗?
- 不会。一条流里装着完整的响应,往往还有产生它的提示词,而所有解析都在浏览器里进行。
相关工具
更多AI 与智能体工具
查看全部AI 与智能体工具 · 全部工具