OpenMOSS / OpenMOSS/MOSS-Transcribe-Diarize

[Bug] 长音频分片的句末标点生成对前置上下文和静音长度高度敏感

Open
#30 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
2k
Forks
126
Avg merge
17h 42m
Merged PRs (30d)
5

Description

[Bug] 长音频分片的句末标点生成对前置上下文和静音长度高度敏感

问题概述

同一段约 24 分钟的目标音频,在 MOSS 原始响应中几乎不生成句号。仅在音频开头增加一段约 0.72 秒的短语音和不同长度的静音,目标音频主体不变,句末标点数量却发生数量级变化。

该差异直接存在于服务端返回的原始 verbose_json 中,不是客户端解析、文本拼接或后处理造成的。

影响

  • 长音频不同分片的标点质量明显不一致。

  • 部分分片只有逗号,基本没有句号、问号或感叹号。

  • 标点表现会被与正文无关的前置音频和静音长度显著改变。

  • 下游分段、摘要、会议纪要和可读性处理会受到影响。

测试条件

  • 模型:OpenMOSS-Team/MOSS-Transcribe-Diarize

  • 输入格式:16 kHz、单声道 PCM WAV

  • 响应格式:verbose_json

  • temperature=0

  • max_new_tokens=65536

  • 标点统计直接基于原始 segments[].text

  • 目标音频在所有测试中完全相同

  • 本轮三个变体并发请求,每个变体执行一次

复现方法

  1. 准备一段约 24 分钟、原始响应中缺少句末标点的目标音频。

  2. 从另一音频分片中截取一个约 0.72 秒的独立短语音。

  3. 构造以下三个输入:

    • 短语音 + 3 秒静音 + 目标音频

    • 短语音 + 5 秒静音 + 目标音频

    • 短语音 + 10 秒静音 + 目标音频

  4. 使用完全相同的模型和请求参数分别转写。

  5. 直接检查原始 JSON 中的 segments,统计中文逗号、句号、问号、感叹号等标点。

  6. 检查前置短语音是否成为独立 segment,以及是否与目标音频首段合并。

实际结果

输入 Segment 数 全部标点 句末标点 句号 问号
原始目标音频 257 316 7 0 7
前置短语音 + 3 秒静音 317 304 6 0 6
前置短语音 + 5 秒静音 204 559 163 141 22
前置短语音 + 10 秒静音 262 595 138 111 27

观察结果:

  • 3 秒静音变体与原始目标音频相似,仍然几乎没有句末标点。

  • 5 秒和 10 秒静音变体恢复了大量句号和问号。

  • 三个变体中,前置短语音均被识别为独立的第一个 segment。

  • 目标音频首段均被识别为第二个 segment,没有与前置短语音合并。

  • 目标音频首段时间戳与理论偏移的误差不超过 40 ms。

  • 除前置内容和静音长度外,目标音频及请求参数没有变化。

预期结果

  • 同一目标音频主体的标点风格应保持基本稳定。

  • 增加独立短语音和静音可以改变时间戳,但不应导致句末标点数量出现数量级变化。

  • 静音从 3 秒增加至 5 秒,不应让句号数量从 0 突然增加到 141。

  • temperature=0 时,相同主体内容的标点输出应具有可解释的稳定性。

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file or test is named in the report. First reproduce the comparison with 16 kHz mono PCM WAV input, verbose_json output, and temperature=0, varying only the unrelated prefix audio and silence; done should mean sentence-ending punctuation no longer changes substantially while the target audio is unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.