主题
FDS-11 · B2 录音转文字(后置专项)
1. 业务说明
把会议录音转成带时间点、分说话人的文字稿,作为精修(B3)的输入。后置专项:做好前用户人工上传文字稿即可,不阻塞主线。
2. 用户操作与界面
- 组织者上传录音 → 卡片显示"转写中" → 完成后得到带时间点、分说话人的文字稿,可在线小幅订正(纠正明显错字/说话人)。
- 不想等/无录音时:直接上传已有文字稿,跳过本步。
3. 数据与接口
- 表
asr_jobs:id、meeting_id、audio_file_id、provider(qwen3asr/funasr)、status(排队/进行/成功/失败)、transcript_file_id、error、created_at。 - 接口:
POST /meetings/{id}/asr(发起)、回调或轮询更新状态;成功后产出meeting_files(kind=transcript),与人工上传的文字稿同构,后续步骤无差别对待。
4. 技术实现(分步)
- 方式:直接接 API(不自训不自部署模型),二选一:Qwen-3ASR 或 fun-ASR。
- 取一段录音 → 调所选 API → 拿回带时间戳、说话人分离的文本 → 存成 transcript 文件 → 触发 B3。
- 长录音分片调用并按时间拼接;失败有限重试,仍失败则置失败状态并提示"可人工上传文字稿兜底"。
- 时间戳保留(后续出处定位 B6/B15 用到"第几分钟"更精准)。
选型取舍(Qwen-3ASR vs fun-ASR)
| 维度 | Qwen-3ASR | fun-ASR |
|---|---|---|
| 接入 | 直接 API | 直接 API |
| 中文/中英混 | 强 | 强 |
| 说话人分离/时间戳 | 支持 | 支持 |
| 取舍建议 | 二者择一即可;先各跑同一批真实会议录音做小样对比(准确率、说话人分离、时延、价格),按结果定;接口做成可切换(provider 字段),换一个不改主干。 | 同左 |
决策点:小样实测后定主用哪个;另一个保留为可切换备选。
5. 技能 or 代码
代码(acdm-backend:发起、轮询、拼接、落库)。无业务规则判断,不做成技能。
6. 二开归类
🔴 从头接(直接调外部 ASR API)。后置、独立,人工上传文字稿兜底;不阻塞 B3 起的主线。
7. 与人机协同模型关系
属"任务流"最前的一个可选前置节点;不改变模型结构。无录音/未接通时此节点跳过。
8. 验收(可证伪)
- 可用:一段真实会议录音转出可读文字稿,带时间点;失败能回退到"人工上传文字稿"。
- 好用:2–4 人清晰录音说话人分离基本正确;长会(>1h)分片拼接无明显丢段;provider 可一键切换。
9. 现状
没有。当前完全靠人工上传文字稿。本章按"直接接 API(Qwen-3ASR / fun-ASR)"补,后置推进。
10. 风险与取舍
- 风险:嘈杂/多人重叠录音转写差。取舍:本期只承诺"清晰录音可用",差录音明确提示人工校订;不为极端场景过度投入。
- 风险:API 时延/价格。取舍:异步处理不阻塞;小样实测定 provider;接口可切换防锁定。
- 合规:录音是否可走外部 API 由公司策略决定;本期按"直接接 API"设计,如策略收紧则只换 provider 实现,主干不变。