Skip to content

v4.3.2

Choose a tag to compare

@klxxya klxxya released this 17 Oct 10:47

📦 下载

平台 变体 安装版 / 绿色版
Windows x64 WebM + Chat(AI 对话) dsh-pet-standalone-webm-chat-setup.exe / dsh-pet-standalone-webm-chat-portable.zip
Windows x64 WebM 无 Chat(纯桌宠) dsh-pet-standalone-webm-setup.exe / dsh-pet-standalone-webm-portable.zip
macOS arm64 WebM + Chat dsh-pet-standalone-webm-chat-macos-arm64.zip
macOS arm64 WebM 无 Chat dsh-pet-standalone-webm-macos-arm64.zip
Linux x86_64 WebM + Chat dsh-pet-standalone-webm-chat-linux-x86_64.zip
Linux x86_64 WebM 无 Chat dsh-pet-standalone-webm-linux-x86_64.zip

均为 onedir 形态:安装版与绿色版运行期都不解压、不产生临时缓存,启动快、卸载干净。

⚠️ 升级说明

直接覆盖安装、或换掉绿色包即可。配置与会话都在用户配置目录(Windows 为 %APPDATA%\dsh-pet),不受换包影响。

  • 无新增配置键、无键搬迁、无数据迁移。
  • 从 v4.3.1 升级不需要任何额外操作;从更早版本升级请照常读对应版本的发布说明。

🐛 修复

截图翻译:整句不再被拆成逐词译文

现象:截图翻译把一行 Working on two of these 翻成「正在 / 处理 / 这些 / 中的 / 两个」——语序和语义一起丢。同一模型在白底大字(整段被识别成一个块)的截图上翻译完全正常,所以这不是模型能力问题。

根因(两处叠加):

  1. OCR 的文本视图按块拼换行。检测器给出的块是词/片段级的:reading_order() 虽然按竖向重叠把同一视觉行的块聚成一组,输出时又把分组拍平了——行结构在那一步丢掉,于是同一行的每个词各占一行。
  2. 翻译指令写着「保留原有的换行结构」。模型老实照做,把硬换行当成句子边界,逐行对译。

修复:

  • 文本视图改成行内接成一句(中文相邻不插空格、其余用单个空格),行间才换行;
  • 翻译指令改为「换行只是排版断行、不是句子边界,先按语义把被断开的句子接回完整句子再翻译,按自然段落输出」。原文仍逐字照发,不改写你在结果里看到的 OCR 原文。

不受影响的部分:整段被识别成一个块的场景(白底大字段落)行为完全不变——单块原样返回、原有换行保留。

明确不包含:OCR 检测/识别本身的分块误差(例如某个词块的边界多带了一个字母)不在本次范围,它仍会跟着进译文。

🙏 致谢

本版为维护者自查的单一修复,问题由维护者在日常使用中复现并定位(两张对照截图:深色小字推文句被逐词拆译、白底大字整段正常)。贡献者与修复记录见 README 的贡献段 与 PR #297。