临床 ASR 飞轮 · 评测
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/digital-health-clinical-asr-eval。
技能介绍
要解决什么问题
临床 ASR 不能只看 WER:词错率很低时,药名、术式等 term 仍可能被拆成相邻 token,下游药房或术语检索会直接失败。阶段 3 面向的是:你已有带临床扩展字段的 NeMo 格式 manifest.jsonl(来自构建阶段或外部),需要用选定 ASR NIM 批量转写、算清四项指标、按维度拆 KER,并据此决定是进微调、回构建补 IPA/术语,还是评测已足够可以停。
技能如何工作
工作流可以概括为四步:
- 3a 选模型:默认
nvidia/parakeet-tdt-0.6b-v2(NVCF 离线 gRPC),可通过环境变量切托管 NIM 或自托管ASR_ENDPOINT;消耗额度前会回显模型与 function ID。 - 3b 转写:对 manifest 每行的
audio_filepath调用离线识别,产出 per-sample 假设文本(音频会发往 NVIDIA ASR 服务,需事先向用户披露)。 - 3c 打分:在统一归一化(小写、NFKD、去标点保留连字符、压空白)后计算 WER / CER / KER / SER;KER 要求 term 在假设中顺序且相邻出现,是临床门控指标。
- 3d 排行榜 + 决策树:固定五段顺序——整体四项 → 按
entity_category的 KER → 按ipa_source的 KER(merriam-webster 与 magpieg2p 的差值说明 SSML 流水线是否在起作用)→ 按noise_level→ 逐术语 KER(从最差起)。再按优先类别(如 drug)KER 路由:>0.3 且 manifest ≥100 行建议/digital-health-clinical-asr-finetune;0.1–0.3 首次评测倾向回构建扩术语;merriam-webster 好、magpieg2p 差 应回构建 2d,不要首选微调。
边界与注意
本技能不生成音频;无 manifest 应回阶段 2 构建。打分在本地 Python 完成,仅 ASR 步骤外传数据;manifest 预期为合成评测音频,勿传真实患者录音或 PHI。默认评测假设英文与严格连续 KER;一次运行只评一个模型,多模型需多次跑再对比报告。鉴权、gRPC 流式、NIM 部署等问题应路由到 riva-asr 等兄弟技能,而非在本阶段硬跑。
使用场景
- 阶段 2 已产出带 term、ipa_source 的 manifest.jsonl,需在消耗微调算力前用 Parakeet 跑基线并看 drug 类 KER
- 合成基准上 WER 约 0.07 但药名仍常错,需要五段式排行榜定位是 entity_category 还是 noise_level 在拖后腿
- cycle-N 评测要产出 leaderboard 报告,并根据优先类别 KER 决定进 finetune 还是回构建补 IPA(2d)
- 要在两个托管 ASR NIM 间对比临床表现,对同一 manifest 各跑一遍评测再对照 KER 拆分
适合人员
- 负责临床 ASR 飞轮、用 NeMo manifest 做 SFT 前门禁的语音/ML 工程师,要以 KER 而非 WER 做 go/no-go
- 数字医疗团队里维护术语列表与 Magpie 合成音频的人,需用 ipa_source 拆分判断是发音覆盖还是模型能力问题
- 已配置 NVIDIA_API_KEY 与 riva-client,手上有 manifest 却要在微调与扩术语之间做决策的 ASR 集成开发者
- 做临床英文 ASR 基准的同学,需要在 snr_5db 与 clean 行上分别看 KER 以评估部署鲁棒性