Skip to content

Releases: david-zdw/dsh-image-studio

v0.8.8 · 请求头/体分段耗时

Choose a tag to compare

@david-zdw david-zdw released this 26 Oct 06:06

v0.8.8

最新 80s 样本拆解:

  • 工具调用:73.5s
  • 工具结果:请求 73.5s / 回传 0.0s
  • 结果后 2.7s 模型开始输出
  • 合计约 76.2s,图片加载再占很小一部分

所以多出的 40 多秒全部在上游 HTTP 请求,不是下载、不是工具卡、也不是命令链路。

本版把请求再拆开:

  • headersMs:等到上游响应头
  • bodyMs:读取完整 JSON 响应体
  • preMs:配置/构造请求
  • downloadMs:URL 图片下载/解码

工具卡和面板会显示:

请求 73.5s(头 60.0s / 体 13.5s) · 回传 0.0s

下次就能直接看出是上游排队不回响应头,还是响应体传输慢。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏显示 IMAGE WORKBENCH · v0.8.8。

v0.8.7 · 避免 Invalid EOF 与静默重试

Choose a tag to compare

@david-zdw david-zdw released this 26 Oct 05:02

v0.8.7

最新调用记录:

  • 第一次 /image:282.0s,上游报 terminated(Response does not match the HTTP/1.1 protocol (Invalid EOF state))。
  • 模型随后自动重试:56.0s 成功,工具卡显示 请求 56.0s / 回传 0.0s。
  • 5 分钟 = 282 秒失败 + 56 秒重试 + 模型开销。

本版修复:

  • 移除 v0.8.6 显式加的 Connection: close / Accept-Encoding: identity;部分中转会因此提前断流并报 Invalid EOF。
  • 保留 readJsonBodyEarly():JSON 完整但上游不关连接时立即返回。
  • 工具路径的所有错误统一追加“不要自动重试;请先让用户确认”,包括连接中断这类网络错误。
  • 保留 请求 X / 回传 Y 分段耗时,下次可以直接判断卡在请求还是下载。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏应显示 IMAGE WORKBENCH · v0.8.7。

v0.8.6 · 上游 JSON 完整即返回,不等连接关闭

Choose a tag to compare

@david-zdw david-zdw released this 26 Oct 03:45

v0.8.6

这次查到真正卡住的位置了:不是 /image 工具链路,而是上游 one2api.top 的响应体。

直接向上游发同样的请求(绕过插件):

  • 第 1 次:24.8s 收到响应头,但 295s 时响应体仍未结束,只能 abort。
  • 第 2 次:42.7s 收到 459 字节 JSON(异常返回)。
  • 第 3 次:49.4s 完整拿到 3.67MB 图片 JSON。

也就是说,上游经常先把响应头发回来,图片 JSON 也已生成,但 chunked 连接迟迟不关闭。旧代码用 response.text(),会一直等到 EOF,所以 25 秒的图被拖到 247 秒。

本版修复:

  • 新增逐块读取的 readJsonBodyEarly():JSON 一拼完整就立即返回并取消 socket,不再等上游关连接。
  • 生成请求使用 Connection: close + Accept-Encoding: identity,避免复用异常的 keep-alive 连接。
  • 历史、工具卡、面板结果增加分段耗时 postMs / downloadMs;工具卡会显示「请求 Xs / 回传 Ys」。
  • 保留 v0.8.5 的“报错不自动重试”。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏应显示 IMAGE WORKBENCH · v0.8.6。

v0.8.5 · 禁止 524 后静默重试

Choose a tag to compare

@david-zdw david-zdw released this 26 Oct 03:19

v0.8.5

排查结论:

  • 03:03:08 的 /image 调用在上游卡住,03:05:13 返回 HTTP 524(125.5s),本次没有图片。
  • 模型随后自动重试,03:05:16 再发一次,03:08:23 才成功(186.5s)。
  • 同一时段生图工作台面板耗时约 33s。两边走的是同一个 generateImage(),差异来自上游慢请求 + 模型静默重试,不是工具路径额外等待。

本版修复:

  • 工具报错后,系统提示/工具描述明确要求模型不要自动重试,先报告错误并询问用户是否重新生成。
  • HTTP 524/504 错误文本直接说明“本次没有返回图片、不要自动重试”,并按 timeout 返回。
  • 避免一次 120 秒失败被静默重试拖成 5 分钟。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏应显示 IMAGE WORKBENCH · v0.8.5。

v0.8.4 · 移除缺 message.id 的旧 /image 命令路径

Choose a tag to compare

@david-zdw david-zdw released this 24 Oct 12:14

v0.8.4

  • 彻底移除旧的 /image slash command 注册和 ensureCommandUserMessage。
    • 旧路径会调用 session.append('user/message', …),但没有写入 message.id。
    • DSH 的 assertMessageEventShape 会把这种旧事件判为 corrupt,导致新会话创建时 session-query 整批失败。
  • /image 现在只走 image_studio_generate 工具,不写任何 session 消息,不会再产生缺少 message.id 的事件。
  • 旧版本已经产生的 corrupt 会话仍需一次性补 id/备份;本版不会擅自改 DSH 的 session 存储(截图里的修复已属于这种情况)。
  • 包含 v0.8.3 的 300 秒超时、回传分离、Grok b64。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏应显示 IMAGE WORKBENCH · v0.8.4。

v0.8.3 · 300s 生成超时与回传分离

Choose a tag to compare

@david-zdw david-zdw released this 21 Oct 00:58

v0.8.3

  • 生图默认超时从 180 秒 提高到 300 秒,复杂提示词/高分辨率不再卡在 3 分钟。
  • 生成响应和图片回传下载拆成两个预算:
    • 生成请求 300 秒;
    • URL 下载单独 120 秒。
      不会再出现“生成已经成功,最后下载时被总超时打断”。
  • Grok 改为优先请求 response_format: "b64_json",直接解码落盘,省掉第二次下载 URL 的等待,同时避开 URL 过期/鉴权失败。
  • 面板生成中每秒显示已等待秒数,并提示通常 10–60 秒、最长约 5 分钟。
  • 包含 v0.8.2 的 GPT Image 2.5 官方尺寸/质量校正。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏应显示 IMAGE WORKBENCH · v0.8.3。

v0.8.2 · GPT Image 2.5 尺寸/质量按官方校正

Choose a tag to compare

@david-zdw david-zdw released this 21 Oct 00:30

v0.8.2

  • GPT Image 2.5 官方参数校正:
    • 自定义尺寸宽高必须是 16 的倍数、比例 1:3–3:1。
    • 1K/2K/3K/4K + 比例重新映射:1K + 16:9 → 1024x576、2K + 16:9 → 2048x1152、4K + 16:9 → 3840x2160。
    • 移除 682、1365、1080 等非 16 倍数的旧尺寸。
    • 质量补上 xhigh / max。
  • 修复旧的 OpenAI 档位预映射抢先覆盖自定义尺寸的问题;现在请求体会直接带官方合法像素。
  • Grok 下载与预览继续沿用 v0.8.1 的修复。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏应显示 IMAGE WORKBENCH · v0.8.2。

v0.8.1 · 多端口预览、Grok 取图、比例修复

Choose a tag to compare

@david-zdw david-zdw released this 20 Oct 17:41

v0.8.1

  • 预览修复:图片 URL 改为 webServer.getOrigin() 拼出的绝对地址,历史接口同样返回绝对 URL。这样同一进程的 6354/6355/6356 页面都指向 6354 的 /image-studio/files,不会再因为相对路径落到 6355/6356 而 401。
  • Grok 排错:
    • resolution 改为小写 1k/2k(xAI 字段大小写敏感)。
    • 下载 xAI 同根域子域(如 imgen.x.ai)图片时带 Key;401/403 自动去掉 Key 重试。
    • 下载失败信息带 HTTP 状态和响应片段。
  • 比例修复:自定义 GPT 的 1K/2K/3K/4K 不再被旧的官方尺寸映射提前覆盖;1K + 16:9 → 1024x576,4K + 16:9 → 3840x2160。
  • 包含 v0.8.0 的对话内联图、打开本地文件/原图、GPT 档位。

升级

cd <clone 目录>/dsh-image-studio
git fetch --tags
git pull --ff-only

重启 DSH,顶栏应显示 IMAGE WORKBENCH · v0.8.1。

v0.8.0 · GPT 1K–4K 档位与对话内联图

Choose a tag to compare

@david-zdw david-zdw released this 20 Oct 16:31

v0.8.0

  • GPT Image 自定义模型尺寸收敛为 1K/2K/3K/4K 四档;比例选择后自动计算像素(4K + 16:9 → 3840x2160),面板显示实际输出尺寸。
  • 官方 gpt-image-1.x 保持官方像素尺寸;DALL·E 3 保持独立尺寸。
  • /image 工具提示模型把图片 Markdown 放回最终回复,图片在对话里内联显示,不再只有本地路径。
  • 工具结果卡增加「打开本地文件」和「打开原图」快捷操作。
  • 包含 v0.7.x 的参考图修复、删除、复制路径、模型多选、1:1 画布适配。

升级

  • 本地 link:cd <clone> && git fetch --tags && git pull --ff-only(或 git checkout v0.8.0),重启 DSH。
  • 插件管理器:更新/重装到同一目录。
  • Key、配置、历史仍在 $DSH_HOME/image-studio,不会丢。

v0.7.1 · 复制路径兜底

Choose a tag to compare

@david-zdw david-zdw released this 20 Oct 15:47

v0.7.1

  • 复制路径在 Clipboard API 和 textarea 回退都失败时,弹出可手动 Ctrl+C 的路径,避免只有“复制失败”。
  • 包含 v0.7.0:参考图添加修复、GPT 4K/比例、删除、复制路径、模型多选、1:1 画布适配。

升级

  • 本地 link:cd <clone> && git fetch --tags && git pull --ff-only(或 git checkout v0.7.1),重启 DSH。