实时识别预览(FunASR 2-pass)

VoCoType 可选启用 FunASR 官方在线 Paraformer,在按住录音键说话时实时更新 IBus/Fcitx 5 的 preedit。该功能默认关闭。

准确率边界

实时文本只用于预览,不会直接提交,也不会替代或裁剪原始录音。松开录音键后, VoCoType 仍把完整 PCM 交给原来的 Contextual Paraformer,并继续使用原有热词、 标点、ITN 和标准化流程。最终提交结果因此仍由离线模型唯一决定。

麦克风 PCM ─┬─> 在线 Paraformer ─> 可反复覆盖的 preedit
            └─> 完整录音缓冲 ─> Contextual Paraformer ─> 最终提交

在线通道初始化失败、处理过慢或 IPC 中断时,本次录音会自动退化为原来的 “录完后识别”模式,最终离线识别不受影响。

Release 安装方式

V4 的 DEB、RPM 与 Arch Release 包已经包含预编译的 vocotype-streaming-worker、FunASR runtime、ONNX Runtime 私有动态库和第三方许可证。用户不需要克隆源码或运行 CMake;在线 Paraformer 模型仍在首次启用该功能时按需下载。

Release CI 在 Ubuntu 22.04 上独立构建并审计 portable bundle,检查相对 RUNPATH、未打包动态依赖和许可证。三个发行版软件包消费同一份 CI artifact,并以 --require-streaming-bundle 构建;缺少 runtime 时整次 Release 失败。

源码开发者仍可运行 ./native/streaming_worker/build.sh 生成本地 bundle,但这不是发行包用户的安装步骤。

开启方式

安装 V4 Release 包后,在设置中心的“通用设置”页面开启“实时识别预览(2-pass)”,保存后:

对应运行配置为:

{
  "asr_streaming": {
    "enabled": true,
    "model": "iic/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx",
    "chunk_size": [5, 10, 5],
    "intra_op_num_threads": 1,
    "idle_timeout_s": 30,
    "session_idle_timeout_s": 15
  }
}

该开关属于统一的 VoCoType 配置,与当前采用 IBus 还是 Fcitx 5 integration 无关。

资源策略

在线预览不运行完整标点和 ITN,因此录音期间的文字可能较粗糙;松键后的离线 结果会覆盖它并成为唯一提交文本。