Skip to content

[history] 长语音转写失败后只能「重新润色」:需要重新识别和试听录音(59.8s 只出 language) #1046

Description

@linonetwo

环境

现象

长语音转写失败或严重跑偏后,历史里只剩那条错误/失败文本。详情页只有 重新润色,没有:

  1. 重新识别 / 重新转写(对同一段音频再跑 ASR)
  2. 试听这段录音(判断是音量太小、噪声太大,还是模型把长音频吃掉了)

我不用云端润色。失败时再点「重新润色」只会拿已经错的 8 个字符去跑 LLM,原文找不回来。

实例:2026-09-09 17:42(本地时间)

history.json

字段
id 015bcfbb-81f2-46b9-a339-ad86f5f45603
createdAt 2026-09-09T09:42:36.364640200+00:00(本地 17:42)
durationMs 59830(59.8s)
rawTranscript / finalText language
asrProvider / asrModel sherpa-onnx-local / qwen3-asr-0.6b-int8
asrMs 3339
hasAudioRecording false
errorCode polishFailed
appName ChatGPT

日志(同一 session):

09:41:32 recorder started (asr=sherpa-onnx-local)
... 录了约 60s,麦克风 peakIn 全程约 0.036–0.046,中间有多段 inRMS>0.01 的有效语音 ...
09:42:32 sherpa-onnx transcribe: audio=59.83s timeout=80s
09:42:32 [sherpa-asr] prepare finished model=qwen3-asr-0.6b-int8 elapsed_ms=0
09:42:36 [sherpa-asr] transcribe finished ... audio_ms=59830 elapsed_ms=3338 text_chars=8
09:42:36 polish failed, falling back to raw: API Key 为空
09:42:53 [style-pack] command repolish requested ... raw_chars=8

同一时段、同一模型:前一条 15.2s 中文正常(那用户携带凭证的…),后一条 10.7s 也正常。只有这条 59.8 秒 整段被收成一个英文词 language(8 字符,很像 Qwen-ASR 的语言标签而不是正文)。

因为没存音频,现在无法回放确认是音太小、噪声,还是长音频/0.6B 模型把内容丢掉。设置里虽有 recordAudioForDebug,默认关,历史 UI 也没有试听入口。

请求

  • 历史详情提供 重新识别:用该条保存的音频再跑当前 ASR(可换模型)。
  • 默认或可选项 保存录音,详情页可试听、看音量/波形,便于区分「我没说清楚」和「模型把长句吞了」。
  • 长音频(如 >30s)应对 Qwen3-ASR 做分块/滑动窗,避免整段只吐 language tag。
  • 「重新润色」不要当转写失败的唯一补救;未配置 LLM 时更不该只有这一按钮。

期望

  • 59.8s 这类长口述失败后,能重跑 ASR 而不是对错误原文润色
  • 能听见当时的录音,判断音量/噪声
  • 长音频不应只输出 language 这类标签词

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