Skip to content

[windows][polish][ime] 未配置润色仍每次报「润色失败已插入原文」;插入后方向键卡顿;希望短输入跳过润色 #1032

Description

@linonetwo

环境

  • OS: Windows 11 (10.0.26200)
  • OpenLess: 1.3.18 stable
  • 插入:windowsInsertionMode=tsfstreamingInsert=truewindowsShowOpenlessInKeyboardList=true
  • 默认风格:defaultMode=light / activeStylePackId=builtin.light
  • LLM:activeLlmProvider=custom未配置 API Key(故意不填:云端润色对短句太慢)
  • ASR:现为 foundry-local-whisper;该问题在火山引擎时期就已经出现
  • 热键:RightAlt toggle

相关 issue:#954(插入后系统/宿主卡顿)、#1027(Windows 输入法空壳 / Rime)、#1000(润色卡住)、#1014(插入重复)

1. 没填润色凭据时,每次都报「润色失败已插入原文」

我不用云端润色(短句时润色耗时占比过高,见第 3 点),所以 LLM API Key 为空。但默认模式仍是 Light,管线每次都会走润色再失败回退:

[style-pack] ... mode=Light raw_chars=8 prompt_chars=3156 raw_uses_llm=false
[coord] polish dispatch: translation=false mode=Light streaming_eligible=false
[ERROR] [coord] polish failed, falling back to raw: API Key 为空

openless.logpolish failed 出现 697 次history.json 几乎每条都是 errorCode: "polishFailed"insertStatus: "inserted"llmProvider: nullpolishMs: null

失败后仍会插入原文,但会弹出「润色失败已插入原文」。这是预期回退,却被当成错误打扰,而且和下面的卡顿叠在一起。

请求:

  • 未配置 LLM / 用户明确不想润色时,不要走 polish,也不要弹失败 toast。
  • 区分「未配置」和「调用失败」:前者静默走 raw。
  • 设置里提供「始终不润色 / 只用 ASR 原文」且真正跳过 LLM 调度(现在 enabledModesraw,但默认 Light 仍每次 dispatch)。

2. 插入之后一段时间非常卡,方向键改错字都卡;失败 toast 出现时更明显

工作流:口述 → 插入到 Cursor / ChatGPT 等输入框 → ASR 常有错字 → 立刻用左右方向键把光标移到错字上改。

插入完成后 几秒到十几秒内,宿主输入框里方向键移动光标会明显掉帧/延迟。toast 显示「润色失败已插入原文」时更严重。

本机同时满足:

  • TSF 插入(OpenLess IME 激活再 restore)
  • streamingInsert=true
  • 每次 polish 失败后立刻 insert + IME restore

日志里大量:

[windows-ime] restore decision=RestoreSavedProfile ... openless_was_activated=true
[windows-ime] restore succeeded
[windows-ime] restore verification: OpenLess is no longer the active profile

以及:

[WARN] [windows-ime] session began while OpenLess IME was already the active profile — previous session likely failed to restore

方向键卡顿发生在文本已经插入之后,像是 TSF/IME 还没把键盘焦点干净交还给系统输入法,OpenLess 仍在吃键或同步 composition。#954 是更极端的 Explorer AppHang;我这边更常见的是 插入后短暂输入卡死,不一定整机无响应。

请求:

  • 插入完成后立刻把 TSF/IME 状态恢复干净,方向键不应再被 OpenLess 拖住。
  • polish 失败 toast 不要阻塞输入路径;失败回退应和成功插入一样轻。
  • 调查 streamingInsert + polish 失败回退 raw 是否留下未结束的 composition / 钩子。

3. 希望「短输入」模式:两三个字到一个词组时关闭润色

大量日常口述是补一个词、改一个标识符、说「确定」「重试」这种短内容。日志里 Light 模式仍会 dispatch,哪怕 raw_chars=4/5/6/7/8/10,prompt 仍是 3156 字符

短句时润色时间远大于 ASR(本地 ASR 热路径约 300–400ms,云端润色则是数秒)。所以我才把 API Key 留空,结果变成第 1 点的失败风暴。

请求:短输入通道

  • 热键或模式:「短输入 / 词组」,固定 raw、不调用 LLM。
  • 或自动:转写低于 N 字(例如 2–8 字或一个词组)跳过润色。
  • 长段落仍可用 Light/Structured。

期望

  • 未配置 LLM 时不再每次 toast「润色失败已插入原文」
  • 插入后方向键改错字不再卡顿
  • 有短输入模式或自动跳过短句润色

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions