0:05.208–0:06.824
zh开会更讨厌什么?
0:06.824–0:08.238
zh除了开会本身,
0:08.238–0:10.258
zh大概是会后整理录音。
0:10.258–0:12.682
zh一段一个小时的多人讨论,
0:12.682–0:14.096
zh导出录音之后,
0:14.096–0:16.318
zh你要把它变成会议纪要。
0:17.098–0:20.715
zh传统的语音转写工具确实能帮你把话变成字,
0:20.715–0:23.789
zh但马上你就会撞上一个更头疼的问题,
0:23.789–0:25.778
zh谁在什么时候说了什么?
0:25.778–0:28.598
zh张三里四四个人轮流发言
0:28.598–0:29.998
zh还有插话强话
0:29.998–0:32.358
zh转写出来的文本是一锅粥
0:32.358–0:35.338
zh根本分不清哪句是谁说的
0:35.338–0:38.358
zh这就是所谓说话人分离难题
0:38.358–0:42.058
zh最近复旦的团队放出了一个开源模型
0:42.058–0:44.298
zh叫Mouse Transcribe Diaries
0:44.298–0:48.538
zh他把转写和分离这两件事捏成了一个模型
0:48.538–0:50.338
zh一次推理全部搞定
0:50.338–0:52.138
zh而且准确率把豆包
0:52.138–0:53.038
enGPT
0:53.038–0:53.658
en4O
0:53.658–0:54.398
enGemini
0:54.398–0:55.618
zh都甩在后面
0:55.778–0:57.778
zh这期就来拆一拆它
0:57.778–0:59.878
zh先把问题说清楚
0:59.878–1:01.918
zh语音转写这件事
1:01.918–1:03.838
zh技术上叫ASR
1:03.838–1:05.218
zh自动语音识别
1:05.218–1:07.638
zh单独看其实已经很成熟了
1:07.638–1:10.538
zh你手机输入法的语音转文字就是
1:10.538–1:14.778
zh但真实场景远比一个人对着话筒念要复杂
1:14.778–1:18.938
zh会议、播客、访谈、电话、讲座
1:18.938–1:21.298
zh这些录音有三个共同特征
1:21.298–1:22.858
zh第一、长
1:22.858–1:25.238
zh动不动几十分钟到一个小时
1:25.238–1:29.938
zh第二,人多,两个到十几个人不等,还互相打断
1:29.938–1:36.358
zh第三,杂,有背景噪音,有关门声笑声,还有大段沉默的停顿
1:36.358–1:39.998
zh对这种录音,光把话转成字远远不够
1:39.998–1:44.198
zh你还想知道每句话是谁说的,发生在哪一秒
1:44.198–1:49.438
zh后者,有个专门的名字,叫Dialization,说话人分离
1:49.938–1:52.618
zh传统做法怎么解决这个问题的?
1:53.238–1:54.138
zh拼流水线
1:54.138–1:55.358
zh第一步
1:55.358–1:56.338
zh用VAD
1:56.338–1:58.318
zh也就是语音活动检测
1:58.318–2:01.718
zh把录音切成一小段一小段有人声的片段
2:01.718–2:02.898
zh第二步
2:02.898–2:04.518
zh用ASR模型
2:04.518–2:06.078
zh把每段转成文字
2:06.078–2:07.518
zh第三步
2:07.518–2:10.158
zh再上独立的说话人分离模型
2:10.158–2:12.298
zh给每段贴上说话人标签
2:12.298–2:13.598
zh第四步
2:13.598–2:15.038
zh做时间戳对齐
2:15.038–2:15.998
zh把文字
2:15.998–2:16.918
zh说话人
2:16.918–2:18.878
zh时间这三样东西拼回去
2:18.878–2:20.738
zh听起来挺合理
2:20.738–2:21.818
zh问题在于
2:21.818–2:23.838
zh每一步都是独立的模型
2:23.838–2:25.358
zh每一步都会犯错
2:25.358–2:27.458
zh而且错误会一路累积
2:27.458–2:29.318
zhVAD切错了
2:29.318–2:30.738
zh后面全跟着错
2:30.738–2:33.098
zhASR听差了一个词
2:33.098–2:34.938
zh分离模型也跟着乱
2:34.938–2:36.498
zh更要命的是
2:36.498–2:38.418
zh这些模型各自为正
2:38.418–2:39.998
zh谁也看不到全局
2:39.998–2:44.218
zh比如同一个人的两段画被切到了不同片段
2:44.218–2:47.498
zh分离模型很可能把它们当成两个人
2:47.498–2:50.158
zh这就是模块化方案的死学
2:50.158–2:51.898
zh局部每一步都最优
2:51.898–2:53.618
zh拼起来全局崩盘
2:53.618–2:57.378
zh这次放模型的团队叫OpenMOSS
2:57.378–2:59.418
zh中文名模斯智能
2:59.418–3:03.358
zh是从复旦大学邱熙鹏教授团队孵化出来的
3:03.358–3:06.338
zh邱熙鹏这个名字你可能不熟
3:06.338–3:09.718
zh但他写的那本神经网络与深度学习
3:09.718–3:11.878
zh是国内很多高校的教材
3:11.878–3:15.938
zh他带的团队之前做过一个很有名的对话大模型
3:15.938–3:16.938
zh也叫MOS
3:16.938–3:21.298
zh号称中国第一个LayChatGPT的开源模型
3:21.298–3:25.158
zh所以这支队伍在开源圈是有传统的
3:25.158–3:28.478
zh这次他们做的Mouse Transcribe Diaries
3:28.478–3:30.258
zh参数量0.9B
3:30.258–3:32.878
zh大约9亿完全开源
3:32.878–3:35.078
zh权重放在Hugging Face上
3:35.078–3:37.298
zh协议是Apache 2.0
3:37.298–3:39.538
zh意思是你可以拿去商用
3:39.538–3:40.898
zh不用交一分钱
3:40.898–3:44.058
zh这个体量加上这个开放程度
3:44.058–3:47.478
zh对个人开发者和中小团队特别友好
3:47.478–3:51.498
zh那它凭什么能把转写和分离捏在一起呢
3:51.498–3:52.758
zh看架构
3:52.758–3:56.798
zh它其实是把两个现成的墙模型做了架接
3:56.798–3:58.298
zh音频那一侧
3:58.298–4:00.978
zh用的是Whisper Medium的编码器
4:00.978–4:04.918
zh就是OpenAI那个Whisper的中等版本
4:04.918–4:07.318
zh负责把声音变成声学特征
4:07.318–4:08.778
zh文本那一侧
4:08.778–4:11.978
zh用的是QAM3 0.6B的解码器
4:11.978–4:13.718
zh通一千问的小模型
4:13.718–4:15.758
zh负责生成文字
4:15.758–4:19.198
zh中间用一个适配器把两者连起来
4:19.198–4:21.938
zh把音频特征做四倍的时间压缩
4:21.938–4:24.038
zh再塞进文本模型里去
4:24.038–4:26.738
zh这样做有两个直接的好处
4:26.738–4:27.778
zh第一
4:27.778–4:30.438
zh它能一口气吃下超长音频
4:30.438–4:32.858
zh上下文窗口12万8千
4:32.858–4:33.998
zh换算下来
4:33.998–4:36.518
zh大约能一次处理90分钟的录音
4:36.518–4:37.958
zh完全不用切片
4:37.958–4:39.018
zh第二
4:39.018–4:43.018
zh转写和分离是在同一个模型里联合训练的
4:43.018–4:45.838
zh模型天生就知道这段话是谁的
4:45.838–4:48.238
zh根本不存在事后拼接的问题
4:48.238–4:51.758
zh输入是16000赫兹的单声道音频
4:51.758–4:55.938
zh输出直接就是带说话人标签和时间戳的文本
4:55.938–4:58.398
zh输出的格式非常紧凑
4:58.398–4:59.798
zh一眼就能看懂
4:59.798–5:03.098
zh它把整段录音编码成一个时间流
5:03.098–5:05.418
zh每句话前面标两样东西
5:05.418–5:07.598
zh一个是方括号里的时间戳
5:07.598–5:10.278
zh一个是方括号里的说话人编号
5:10.278–5:11.698
zh举个例子
5:11.698–5:12.718
zh开头几秒
5:12.718–5:14.298
zh方括号0.48
5:14.298–5:15.918
zh方括号S01
5:15.918–5:18.558
zh意思是0.48秒开始
5:18.558–5:20.278
zh说话人1号发言
5:20.278–5:21.918
zh内容是欢迎各位
5:21.918–5:23.818
zh到1.66秒结束
5:23.818–5:26.878
zh紧接着跳到12.26秒
5:26.878–5:28.338
zh方括号S02
5:28.338–5:30.438
zh说话人2号接过话茬
5:30.438–5:34.038
zh这个格式可以直接为给后处理脚本
5:34.038–5:36.018
zh解析成结构化的段落
5:36.018–5:38.218
zh每段都带起始时间
5:38.218–5:39.358
zh结束时间
5:39.358–5:40.798
zh说话人
5:40.798–5:42.258
zh文本这四个字段
5:42.258–5:46.258
zh想导出城JSON还是字幕格式都行
5:46.258–5:48.218
zh对开发者很友好
5:48.218–5:51.558
zh你不用再自己写证则去硬抠时间戳了
5:51.558–5:53.658
zh到了最关键的环节
5:53.658–5:55.058
zh它到底有多准
5:55.058–5:57.958
zh团队在四个基准上做了评测
5:57.958–6:04.858
zh全是真实的长音频多人场景
6:04.858–6:08.338
zh横跨中文会议和英文播客电影
6:08.338–6:11.098
zh核心指标是字符错误率
6:11.098–6:12.198
zh越低越好
6:12.198–6:15.158
zh我挑几个最能说明问题的数字
6:15.158–6:18.838
zh在Azhel 4这个中文会议基准上
6:18.838–6:22.158
zh它的错误率是14.84%
6:22.158–6:22.938
zh作为对比
6:22.938–6:24.818
zh豆包是18.18%
6:24.818–6:28.238
zhGemini 3 Pro是22.75%
6:28.238–6:29.018
zh也就是说
6:29.018–6:31.558
zh它一个0.9B的开源模型
6:31.558–6:35.298
zh把字节和谷歌的商业模型都压在了身下
6:35.298–6:39.038
zh在Movies这个英文电影基准上更夸张
6:39.038–6:42.098
zh它的错误率只有6.36%
6:42.198–6:45.598
zh而GPT4O是14.37
6:45.598–6:47.338
zh豆包是9.94
6:47.338–6:49.998
zh电影对白里有背景音
6:49.998–6:50.898
zh有口音
6:50.898–6:51.778
zh有重叠
6:51.778–6:53.358
zh是最难啃的骨头
6:53.358–6:54.558
zh它照样通吃
6:54.558–6:57.318
zh这里还要特别说一个指标
6:57.318–6:58.678
zh叫德尔塔CP
6:58.678–7:02.098
zh它衡量的是说话人分离的额外代价
7:02.098–7:03.318
zh通俗讲就是
7:03.318–7:05.158
zh为了分清是谁说的
7:05.158–7:06.778
zh你额外多错了多少
7:06.778–7:09.518
zh它的这个值只有0.99
7:09.518–7:10.718
zh几乎为0
7:10.718–7:15.138
zh意味着分清说话人这件事几乎不拖累转写准确率
7:15.138–7:18.778
zh这在传统流水线里是想都不敢想的
7:18.778–7:23.198
zh那它跟现在最流行的开源方案比到底差在哪
7:23.198–7:27.978
zh先说Whisper,OpenAI的老牌选手,能力很强
7:27.978–7:29.438
zh但他只管转写
7:29.438–7:34.498
zh不管分离,你想分清谁说的,得自己再外挂一个模型
7:34.858–7:39.618
zh再说Whisper X,这个是社区里用的最多的组合方案
7:39.618–7:44.858
zh他在Whisper基础上接了VAD和PiNote的分离模型
7:44.858–7:46.998
zh确实能做对齐和分离
7:46.998–7:49.498
zh但本质上还是拼接流水线
7:49.498–7:51.558
zh前面说的错误累积问题
7:51.558–7:53.038
zh他一个都没躲掉
7:53.426–7:55.306
zh最后说PiNote
7:55.306–7:57.186
zh他是专门的分离工具
7:57.186–7:58.486
zh做得相当好
7:58.486–7:59.906
zh但他只管分离
7:59.906–8:01.446
zh转写的另找别人
8:01.446–8:03.186
zh你看出规律了吗
8:03.186–8:06.066
zh传统的整个生态是被切碎的
8:06.066–8:07.306
zh转写归转写
8:07.306–8:08.606
zh分离归分离
8:08.606–8:10.726
zh你像个搬砖工一样
8:10.726–8:11.946
zh把它们拼起来
8:11.946–8:13.846
zh每块砖之间都有缝隙
8:13.846–8:16.686
zhMoth这套做法的价值就在于
8:16.686–8:19.966
zh他把这些砖直接烧成了一整块瓷砖
8:19.966–8:21.826
zh从根上消除了缝隙
8:21.826–8:23.246
zh这么能打
8:23.246–8:24.406
zh部署难不难
8:24.406–8:26.126
zh他给了三条路
8:26.126–8:27.286
zh第一条
8:27.286–8:28.326
zh研究用的
8:28.326–8:31.186
zh直接拿原生Transformers库加载
8:31.186–8:32.526
zh几行Pytho
8:32.526–8:34.406
zhN代码就能跑
8:34.406–8:36.506
zh适合你想看内部细节
8:36.506–8:38.326
zh做二次开发的场景
8:38.326–8:39.526
zh第二条
8:39.526–8:41.406
zh生产环境要高吞吐
8:41.406–8:43.606
zh用SGLine Omni部署
8:43.606–8:46.206
zh这是一个专门的服务框架
8:46.206–8:49.286
zh单张H100显卡就能跑起来
8:49.286–8:50.626
zh并发16路的时候
8:50.626–8:53.066
zh每秒能处理82秒的音频
8:53.066–8:55.986
zh换算成时时率是0.092
8:55.986–9:00.246
zh意味着处理速度是音频播放速度的10倍以上
9:00.246–9:02.366
zh如果走长音频单路
9:02.366–9:05.486
zh时时率最低能压到0.0197
9:05.486–9:08.926
zh也就是处理速度是音频时长的50倍
9:08.926–9:12.206
zh一个小时的录音一分多钟就处理完了
9:12.206–9:13.706
zh第三条
9:13.706–9:15.086
zh用VLLM
9:15.086–9:17.346
zh适合你的环境是Cuda12
9:17.346–9:21.166
zh因为SGLANG OMNI目前要求Cuda13
9:21.166–9:23.806
zhVLLM的兼容性更好
9:23.806–9:25.246
zh三条路
9:25.246–9:26.606
zh从研究到生产
9:26.606–9:29.026
zh基本把各种需求都覆盖了
9:29.026–9:32.406
zh但不是所有人都愿意敲命令型
9:32.406–9:36.006
zh所以团队还做了一个字幕网页应用
9:36.006–9:38.066
zh叫MPD Subtitle Web
9:38.066–9:40.246
zh它就是个浏览器界面
9:40.246–9:42.606
zh你上传一段音频或视频
9:42.606–9:44.126
zh它自动跑模型
9:44.126–9:47.926
zh跑完你能在网页上直接审阅转写结果
9:47.926–9:50.106
zh谁说了什么一目了然
9:50.106–9:52.086
zh审完点一下导出
9:52.086–9:53.386
zh格式随你挑
9:53.386–9:55.406
zhJSON给程序用
9:55.406–9:58.466
zhSRT和S是标准字幕格式
9:58.466–10:00.546
zh直接位给播放器就行
10:00.546–10:04.946
zh甚至还能用Fpack把字幕稍录进视频
10:04.946–10:07.526
zh一键导出一个带字幕的MP4
10:07.526–10:09.966
zh界面支持中文和英文
10:09.966–10:12.626
zh会自动跟着你浏览器的语言走
10:12.626–10:15.526
zh还有个很实用的小功能叫热词
10:15.526–10:17.926
zh如果你录音里有专有名词
10:17.926–10:18.706
zh人名
10:18.706–10:19.846
zh行业术语
10:19.846–10:21.386
zh模型老式识别错
10:21.386–10:24.246
zh你可以在提示词里加几个热词
10:24.246–10:26.566
zh引导它往正确的方向认
10:26.566–10:29.846
zh这对行业内部的录音特别管用
10:29.846–10:32.626
zh这种能力到底能用在哪
10:32.626–10:35.246
zh我自己最看好的几个场景
10:35.246–10:37.326
zh第一会议纪要
10:37.326–10:39.146
zh一个小时的多人会议
10:39.146–10:40.086
zh扔进去
10:40.086–10:43.826
zh几分钟出来一份带说话人和时间戳的全文
10:43.826–10:46.706
zh秘书或者你自己再做摘要就行
10:46.706–10:49.726
zh省下来的时间是实打实的
10:49.726–10:52.446
zh第二播客和视频字幕
10:52.446–10:56.226
zh做内容的人最痛苦的就是给节目上字幕
10:56.226–10:58.706
zh这个工具能直接出SRT
10:58.706–11:00.866
zh连谁说的都给你雕好了
11:00.866–11:02.006
zh第三
11:02.006–11:03.206
zh访谈整理
11:03.206–11:03.986
zh记者
11:03.986–11:05.906
zh研究员做智性访谈
11:05.906–11:08.386
zh几十段录音要转写要编码
11:08.386–11:10.986
zh这是真正能解放生产力的工具
11:10.986–11:12.086
zh第四
11:12.086–11:13.526
zh更专业的领域
11:13.526–11:14.606
zh法庭记录
11:14.606–11:15.686
zh医疗口述
11:15.686–11:16.786
zh客服质检
11:16.786–11:21.546
zh这些对准确率和说话人识别要求都很高的场景
11:21.546–11:25.366
zh他的杀手检就是那90分钟的长上下文
11:25.366–11:27.746
zh意味着绝大部分真实录音
11:27.746–11:29.226
zh它能一口气吃完
11:29.226–11:30.846
zh不用你手动切块
11:30.846–11:32.326
zh想试的话
11:32.326–11:33.706
zh装起来不复杂
11:33.706–11:36.366
zh前提是Python 3.12
11:36.366–11:38.346
zh用UV这个包管理器
11:38.346–11:39.706
zh建一个虚拟环境
11:39.706–11:42.626
zh然后从GitHub客龙仓库
11:42.626–11:45.306
zh一行UVPIP Install装好依赖
11:45.306–11:49.006
zh它会自动帮你处理PyTorch的GPU后端
11:49.006–11:50.946
zh装完有两条路
11:50.946–11:52.986
zh想看代码细节的
11:52.986–11:56.386
zh直接用Transformers加在模型跑推里
11:56.386–11:58.186
zh想跑成服务的
11:58.186–12:03.826
zh用SGLang Omni或者VLLM启动一个API服务
12:03.826–12:07.406
zh调用方式兼容OpenAI那套音频接口
12:07.406–12:10.366
zh你原来用Whisper API的代码
12:10.366–12:12.986
zh改个地址就能直接迁移过来
12:12.986–12:15.646
zh模型权重从Hugging Face拉
12:15.646–12:17.166
zh第一次跑会下载
12:17.166–12:18.466
zh大约两个G
12:18.466–12:22.366
zh最后说一个让这个项目分量很重的头衔
12:22.366–12:25.186
zh这个模型7月9号才开源
12:25.186–12:27.046
zh到现在不到20天
12:27.046–12:29.946
zhGitHub已经冲到1300多star
12:29.946–12:34.646
zh还登上了Trendshift当日Python仓库的第11名
12:34.646–12:36.326
zh更硬的成绩是
12:36.326–12:39.806
zh2026年语音领域的鼎会Interspeech
12:39.806–12:43.626
zh办了第二届多语言低资源语音挑战赛
12:43.626–12:46.526
zh他拿了第一名覆盖14种语言
12:46.526–12:49.166
zh一个久易参数的开源模型
12:49.166–12:53.206
zh在长音频多说话人这个最难的真实场景上
12:53.206–12:56.806
zh同时打赢了准确率和效率两场仗
12:56.806–12:59.126
zh还把代码和权重都敞开了
12:59.126–13:00.726
zh代码在GitHub
13:00.726–13:02.406
zh搜OpenMOSS
13:02.406–13:03.486
zh斜杠
13:03.486–13:06.586
zhMouseTranscribedDiaries就能找到
13:06.586–13:08.146
zh权重在HuggingFace
13:08.146–13:11.226
zh如果你平时要跟长录音打交道
13:11.226–13:12.206
zh做字幕
13:12.206–13:13.126
zh做记要
13:13.126–13:14.446
zh做访谈整理
13:14.446–13:17.606
zh这个工具真的值得装一个试试
13:17.606–13:19.126
zh这期到这里
13:19.126–13:20.326
zh我们下期见
0:05.208–0:06.824
开会更讨厌什么?
0:06.824–0:08.238
除了开会本身,
0:08.238–0:10.258
大概是会后整理录音。
0:10.258–0:12.682
一段一个小时的多人讨论,
0:12.682–0:14.096
导出录音之后,
0:14.096–0:16.318
你要把它变成会议纪要。
0:17.098–0:20.715
传统的语音转写工具确实能帮你把话变成字,
0:20.715–0:23.789
但马上你就会撞上一个更头疼的问题,
0:23.789–0:25.778
谁在什么时候说了什么?
0:25.778–0:28.598
张三里四四个人轮流发言
0:28.598–0:29.998
还有插话强话
0:29.998–0:32.358
转写出来的文本是一锅粥
0:32.358–0:35.338
根本分不清哪句是谁说的
0:35.338–0:38.358
这就是所谓说话人分离难题
0:38.358–0:42.058
最近复旦的团队放出了一个开源模型
0:42.058–0:44.298
叫Mouse Transcribe Diaries
0:44.298–0:48.538
他把转写和分离这两件事捏成了一个模型
0:48.538–0:50.338
一次推理全部搞定
0:50.338–0:52.138
而且准确率把豆包
0:52.138–0:53.038
GPT
0:53.038–0:53.658
4O
0:53.658–0:54.398
Gemini
0:54.398–0:55.618
都甩在后面
0:55.778–0:57.778
这期就来拆一拆它
0:57.778–0:59.878
先把问题说清楚
0:59.878–1:01.918
语音转写这件事
1:01.918–1:03.838
技术上叫ASR
1:03.838–1:05.218
自动语音识别
1:05.218–1:07.638
单独看其实已经很成熟了
1:07.638–1:10.538
你手机输入法的语音转文字就是
1:10.538–1:14.778
但真实场景远比一个人对着话筒念要复杂
1:14.778–1:18.938
会议、播客、访谈、电话、讲座
1:18.938–1:21.298
这些录音有三个共同特征
1:21.298–1:22.858
第一、长
1:22.858–1:25.238
动不动几十分钟到一个小时
1:25.238–1:29.938
第二,人多,两个到十几个人不等,还互相打断
1:29.938–1:36.358
第三,杂,有背景噪音,有关门声笑声,还有大段沉默的停顿
1:36.358–1:39.998
对这种录音,光把话转成字远远不够
1:39.998–1:44.198
你还想知道每句话是谁说的,发生在哪一秒
1:44.198–1:49.438
后者,有个专门的名字,叫Dialization,说话人分离
1:49.938–1:52.618
传统做法怎么解决这个问题的?
1:53.238–1:54.138
拼流水线
1:54.138–1:55.358
第一步
1:55.358–1:56.338
用VAD
1:56.338–1:58.318
也就是语音活动检测
1:58.318–2:01.718
把录音切成一小段一小段有人声的片段
2:01.718–2:02.898
第二步
2:02.898–2:04.518
用ASR模型
2:04.518–2:06.078
把每段转成文字
2:06.078–2:07.518
第三步
2:07.518–2:10.158
再上独立的说话人分离模型
2:10.158–2:12.298
给每段贴上说话人标签
2:12.298–2:13.598
第四步
2:13.598–2:15.038
做时间戳对齐
2:15.038–2:15.998
把文字
2:15.998–2:16.918
说话人
2:16.918–2:18.878
时间这三样东西拼回去
2:18.878–2:20.738
听起来挺合理
2:20.738–2:21.818
问题在于
2:21.818–2:23.838
每一步都是独立的模型
2:23.838–2:25.358
每一步都会犯错
2:25.358–2:27.458
而且错误会一路累积
2:27.458–2:29.318
VAD切错了
2:29.318–2:30.738
后面全跟着错
2:30.738–2:33.098
ASR听差了一个词
2:33.098–2:34.938
分离模型也跟着乱
2:34.938–2:36.498
更要命的是
2:36.498–2:38.418
这些模型各自为正
2:38.418–2:39.998
谁也看不到全局
2:39.998–2:44.218
比如同一个人的两段画被切到了不同片段
2:44.218–2:47.498
分离模型很可能把它们当成两个人
2:47.498–2:50.158
这就是模块化方案的死学
2:50.158–2:51.898
局部每一步都最优
2:51.898–2:53.618
拼起来全局崩盘
2:53.618–2:57.378
这次放模型的团队叫OpenMOSS
2:57.378–2:59.418
中文名模斯智能
2:59.418–3:03.358
是从复旦大学邱熙鹏教授团队孵化出来的
3:03.358–3:06.338
邱熙鹏这个名字你可能不熟
3:06.338–3:09.718
但他写的那本神经网络与深度学习
3:09.718–3:11.878
是国内很多高校的教材
3:11.878–3:15.938
他带的团队之前做过一个很有名的对话大模型
3:15.938–3:16.938
也叫MOS
3:16.938–3:21.298
号称中国第一个LayChatGPT的开源模型
3:21.298–3:25.158
所以这支队伍在开源圈是有传统的
3:25.158–3:28.478
这次他们做的Mouse Transcribe Diaries
3:28.478–3:30.258
参数量0.9B
3:30.258–3:32.878
大约9亿完全开源
3:32.878–3:35.078
权重放在Hugging Face上
3:35.078–3:37.298
协议是Apache 2.0
3:37.298–3:39.538
意思是你可以拿去商用
3:39.538–3:40.898
不用交一分钱
3:40.898–3:44.058
这个体量加上这个开放程度
3:44.058–3:47.478
对个人开发者和中小团队特别友好
3:47.478–3:51.498
那它凭什么能把转写和分离捏在一起呢
3:51.498–3:52.758
看架构
3:52.758–3:56.798
它其实是把两个现成的墙模型做了架接
3:56.798–3:58.298
音频那一侧
3:58.298–4:00.978
用的是Whisper Medium的编码器
4:00.978–4:04.918
就是OpenAI那个Whisper的中等版本
4:04.918–4:07.318
负责把声音变成声学特征
4:07.318–4:08.778
文本那一侧
4:08.778–4:11.978
用的是QAM3 0.6B的解码器
4:11.978–4:13.718
通一千问的小模型
4:13.718–4:15.758
负责生成文字
4:15.758–4:19.198
中间用一个适配器把两者连起来
4:19.198–4:21.938
把音频特征做四倍的时间压缩
4:21.938–4:24.038
再塞进文本模型里去
4:24.038–4:26.738
这样做有两个直接的好处
4:26.738–4:27.778
第一
4:27.778–4:30.438
它能一口气吃下超长音频
4:30.438–4:32.858
上下文窗口12万8千
4:32.858–4:33.998
换算下来
4:33.998–4:36.518
大约能一次处理90分钟的录音
4:36.518–4:37.958
完全不用切片
4:37.958–4:39.018
第二
4:39.018–4:43.018
转写和分离是在同一个模型里联合训练的
4:43.018–4:45.838
模型天生就知道这段话是谁的
4:45.838–4:48.238
根本不存在事后拼接的问题
4:48.238–4:51.758
输入是16000赫兹的单声道音频
4:51.758–4:55.938
输出直接就是带说话人标签和时间戳的文本
4:55.938–4:58.398
输出的格式非常紧凑
4:58.398–4:59.798
一眼就能看懂
4:59.798–5:03.098
它把整段录音编码成一个时间流
5:03.098–5:05.418
每句话前面标两样东西
5:05.418–5:07.598
一个是方括号里的时间戳
5:07.598–5:10.278
一个是方括号里的说话人编号
5:10.278–5:11.698
举个例子
5:11.698–5:12.718
开头几秒
5:12.718–5:14.298
方括号0.48
5:14.298–5:15.918
方括号S01
5:15.918–5:18.558
意思是0.48秒开始
5:18.558–5:20.278
说话人1号发言
5:20.278–5:21.918
内容是欢迎各位
5:21.918–5:23.818
到1.66秒结束
5:23.818–5:26.878
紧接着跳到12.26秒
5:26.878–5:28.338
方括号S02
5:28.338–5:30.438
说话人2号接过话茬
5:30.438–5:34.038
这个格式可以直接为给后处理脚本
5:34.038–5:36.018
解析成结构化的段落
5:36.018–5:38.218
每段都带起始时间
5:38.218–5:39.358
结束时间
5:39.358–5:40.798
说话人
5:40.798–5:42.258
文本这四个字段
5:42.258–5:46.258
想导出城JSON还是字幕格式都行
5:46.258–5:48.218
对开发者很友好
5:48.218–5:51.558
你不用再自己写证则去硬抠时间戳了
5:51.558–5:53.658
到了最关键的环节
5:53.658–5:55.058
它到底有多准
5:55.058–5:57.958
团队在四个基准上做了评测
5:57.958–6:04.858
全是真实的长音频多人场景
6:04.858–6:08.338
横跨中文会议和英文播客电影
6:08.338–6:11.098
核心指标是字符错误率
6:11.098–6:12.198
越低越好
6:12.198–6:15.158
我挑几个最能说明问题的数字
6:15.158–6:18.838
在Azhel 4这个中文会议基准上
6:18.838–6:22.158
它的错误率是14.84%
6:22.158–6:22.938
作为对比
6:22.938–6:24.818
豆包是18.18%
6:24.818–6:28.238
Gemini 3 Pro是22.75%
6:28.238–6:29.018
也就是说
6:29.018–6:31.558
它一个0.9B的开源模型
6:31.558–6:35.298
把字节和谷歌的商业模型都压在了身下
6:35.298–6:39.038
在Movies这个英文电影基准上更夸张
6:39.038–6:42.098
它的错误率只有6.36%
6:42.198–6:45.598
而GPT4O是14.37
6:45.598–6:47.338
豆包是9.94
6:47.338–6:49.998
电影对白里有背景音
6:49.998–6:50.898
有口音
6:50.898–6:51.778
有重叠
6:51.778–6:53.358
是最难啃的骨头
6:53.358–6:54.558
它照样通吃
6:54.558–6:57.318
这里还要特别说一个指标
6:57.318–6:58.678
叫德尔塔CP
6:58.678–7:02.098
它衡量的是说话人分离的额外代价
7:02.098–7:03.318
通俗讲就是
7:03.318–7:05.158
为了分清是谁说的
7:05.158–7:06.778
你额外多错了多少
7:06.778–7:09.518
它的这个值只有0.99
7:09.518–7:10.718
几乎为0
7:10.718–7:15.138
意味着分清说话人这件事几乎不拖累转写准确率
7:15.138–7:18.778
这在传统流水线里是想都不敢想的
7:18.778–7:23.198
那它跟现在最流行的开源方案比到底差在哪
7:23.198–7:27.978
先说Whisper,OpenAI的老牌选手,能力很强
7:27.978–7:29.438
但他只管转写
7:29.438–7:34.498
不管分离,你想分清谁说的,得自己再外挂一个模型
7:34.858–7:39.618
再说Whisper X,这个是社区里用的最多的组合方案
7:39.618–7:44.858
他在Whisper基础上接了VAD和PiNote的分离模型
7:44.858–7:46.998
确实能做对齐和分离
7:46.998–7:49.498
但本质上还是拼接流水线
7:49.498–7:51.558
前面说的错误累积问题
7:51.558–7:53.038
他一个都没躲掉
7:53.426–7:55.306
最后说PiNote
7:55.306–7:57.186
他是专门的分离工具
7:57.186–7:58.486
做得相当好
7:58.486–7:59.906
但他只管分离
7:59.906–8:01.446
转写的另找别人
8:01.446–8:03.186
你看出规律了吗
8:03.186–8:06.066
传统的整个生态是被切碎的
8:06.066–8:07.306
转写归转写
8:07.306–8:08.606
分离归分离
8:08.606–8:10.726
你像个搬砖工一样
8:10.726–8:11.946
把它们拼起来
8:11.946–8:13.846
每块砖之间都有缝隙
8:13.846–8:16.686
Moth这套做法的价值就在于
8:16.686–8:19.966
他把这些砖直接烧成了一整块瓷砖
8:19.966–8:21.826
从根上消除了缝隙
8:21.826–8:23.246
这么能打
8:23.246–8:24.406
部署难不难
8:24.406–8:26.126
他给了三条路
8:26.126–8:27.286
第一条
8:27.286–8:28.326
研究用的
8:28.326–8:31.186
直接拿原生Transformers库加载
8:31.186–8:32.526
几行Pytho
8:32.526–8:34.406
N代码就能跑
8:34.406–8:36.506
适合你想看内部细节
8:36.506–8:38.326
做二次开发的场景
8:38.326–8:39.526
第二条
8:39.526–8:41.406
生产环境要高吞吐
8:41.406–8:43.606
用SGLine Omni部署
8:43.606–8:46.206
这是一个专门的服务框架
8:46.206–8:49.286
单张H100显卡就能跑起来
8:49.286–8:50.626
并发16路的时候
8:50.626–8:53.066
每秒能处理82秒的音频
8:53.066–8:55.986
换算成时时率是0.092
8:55.986–9:00.246
意味着处理速度是音频播放速度的10倍以上
9:00.246–9:02.366
如果走长音频单路
9:02.366–9:05.486
时时率最低能压到0.0197
9:05.486–9:08.926
也就是处理速度是音频时长的50倍
9:08.926–9:12.206
一个小时的录音一分多钟就处理完了
9:12.206–9:13.706
第三条
9:13.706–9:15.086
用VLLM
9:15.086–9:17.346
适合你的环境是Cuda12
9:17.346–9:21.166
因为SGLANG OMNI目前要求Cuda13
9:21.166–9:23.806
VLLM的兼容性更好
9:23.806–9:25.246
三条路
9:25.246–9:26.606
从研究到生产
9:26.606–9:29.026
基本把各种需求都覆盖了
9:29.026–9:32.406
但不是所有人都愿意敲命令型
9:32.406–9:36.006
所以团队还做了一个字幕网页应用
9:36.006–9:38.066
叫MPD Subtitle Web
9:38.066–9:40.246
它就是个浏览器界面
9:40.246–9:42.606
你上传一段音频或视频
9:42.606–9:44.126
它自动跑模型
9:44.126–9:47.926
跑完你能在网页上直接审阅转写结果
9:47.926–9:50.106
谁说了什么一目了然
9:50.106–9:52.086
审完点一下导出
9:52.086–9:53.386
格式随你挑
9:53.386–9:55.406
JSON给程序用
9:55.406–9:58.466
SRT和S是标准字幕格式
9:58.466–10:00.546
直接位给播放器就行
10:00.546–10:04.946
甚至还能用Fpack把字幕稍录进视频
10:04.946–10:07.526
一键导出一个带字幕的MP4
10:07.526–10:09.966
界面支持中文和英文
10:09.966–10:12.626
会自动跟着你浏览器的语言走
10:12.626–10:15.526
还有个很实用的小功能叫热词
10:15.526–10:17.926
如果你录音里有专有名词
10:17.926–10:18.706
人名
10:18.706–10:19.846
行业术语
10:19.846–10:21.386
模型老式识别错
10:21.386–10:24.246
你可以在提示词里加几个热词
10:24.246–10:26.566
引导它往正确的方向认
10:26.566–10:29.846
这对行业内部的录音特别管用
10:29.846–10:32.626
这种能力到底能用在哪
10:32.626–10:35.246
我自己最看好的几个场景
10:35.246–10:37.326
第一会议纪要
10:37.326–10:39.146
一个小时的多人会议
10:39.146–10:40.086
扔进去
10:40.086–10:43.826
几分钟出来一份带说话人和时间戳的全文
10:43.826–10:46.706
秘书或者你自己再做摘要就行
10:46.706–10:49.726
省下来的时间是实打实的
10:49.726–10:52.446
第二播客和视频字幕
10:52.446–10:56.226
做内容的人最痛苦的就是给节目上字幕
10:56.226–10:58.706
这个工具能直接出SRT
10:58.706–11:00.866
连谁说的都给你雕好了
11:00.866–11:02.006
第三
11:02.006–11:03.206
访谈整理
11:03.206–11:03.986
记者
11:03.986–11:05.906
研究员做智性访谈
11:05.906–11:08.386
几十段录音要转写要编码
11:08.386–11:10.986
这是真正能解放生产力的工具
11:10.986–11:12.086
第四
11:12.086–11:13.526
更专业的领域
11:13.526–11:14.606
法庭记录
11:14.606–11:15.686
医疗口述
11:15.686–11:16.786
客服质检
11:16.786–11:21.546
这些对准确率和说话人识别要求都很高的场景
11:21.546–11:25.366
他的杀手检就是那90分钟的长上下文
11:25.366–11:27.746
意味着绝大部分真实录音
11:27.746–11:29.226
它能一口气吃完
11:29.226–11:30.846
不用你手动切块
11:30.846–11:32.326
想试的话
11:32.326–11:33.706
装起来不复杂
11:33.706–11:36.366
前提是Python 3.12
11:36.366–11:38.346
用UV这个包管理器
11:38.346–11:39.706
建一个虚拟环境
11:39.706–11:42.626
然后从GitHub客龙仓库
11:42.626–11:45.306
一行UVPIP Install装好依赖
11:45.306–11:49.006
它会自动帮你处理PyTorch的GPU后端
11:49.006–11:50.946
装完有两条路
11:50.946–11:52.986
想看代码细节的
11:52.986–11:56.386
直接用Transformers加在模型跑推里
11:56.386–11:58.186
想跑成服务的
11:58.186–12:03.826
用SGLang Omni或者VLLM启动一个API服务
12:03.826–12:07.406
调用方式兼容OpenAI那套音频接口
12:07.406–12:10.366
你原来用Whisper API的代码
12:10.366–12:12.986
改个地址就能直接迁移过来
12:12.986–12:15.646
模型权重从Hugging Face拉
12:15.646–12:17.166
第一次跑会下载
12:17.166–12:18.466
大约两个G
12:18.466–12:22.366
最后说一个让这个项目分量很重的头衔
12:22.366–12:25.186
这个模型7月9号才开源
12:25.186–12:27.046
到现在不到20天
12:27.046–12:29.946
GitHub已经冲到1300多star
12:29.946–12:34.646
还登上了Trendshift当日Python仓库的第11名
12:34.646–12:36.326
更硬的成绩是
12:36.326–12:39.806
2026年语音领域的鼎会Interspeech
12:39.806–12:43.626
办了第二届多语言低资源语音挑战赛
12:43.626–12:46.526
他拿了第一名覆盖14种语言
12:46.526–12:49.166
一个久易参数的开源模型
12:49.166–12:53.206
在长音频多说话人这个最难的真实场景上
12:53.206–12:56.806
同时打赢了准确率和效率两场仗
12:56.806–12:59.126
还把代码和权重都敞开了
12:59.126–13:00.726
代码在GitHub
13:00.726–13:02.406
搜OpenMOSS
13:02.406–13:03.486
斜杠
13:03.486–13:06.586
MouseTranscribedDiaries就能找到
13:06.586–13:08.146
权重在HuggingFace
13:08.146–13:11.226
如果你平时要跟长录音打交道
13:11.226–13:12.206
做字幕
13:12.206–13:13.126
做记要
13:13.126–13:14.446
做访谈整理
13:14.446–13:17.606
这个工具真的值得装一个试试
13:17.606–13:19.126
这期到这里
13:19.126–13:20.326
我们下期见
0:05.208–0:06.824
zh开会更讨厌什么?
开会更讨厌什么?
0:06.824–0:08.238
zh除了开会本身,
除了开会本身,
0:08.238–0:10.258
zh大概是会后整理录音。
大概是会后整理录音。
0:10.258–0:12.682
zh一段一个小时的多人讨论,
一段一个小时的多人讨论,
0:12.682–0:14.096
zh导出录音之后,
导出录音之后,
0:14.096–0:16.318
zh你要把它变成会议纪要。
你要把它变成会议纪要。
0:17.098–0:20.715
zh传统的语音转写工具确实能帮你把话变成字,
传统的语音转写工具确实能帮你把话变成字,
0:20.715–0:23.789
zh但马上你就会撞上一个更头疼的问题,
但马上你就会撞上一个更头疼的问题,
0:23.789–0:25.778
zh谁在什么时候说了什么?
谁在什么时候说了什么?
0:25.778–0:28.598
zh张三里四四个人轮流发言
张三里四四个人轮流发言
0:28.598–0:29.998
zh还有插话强话
还有插话强话
0:29.998–0:32.358
zh转写出来的文本是一锅粥
转写出来的文本是一锅粥
0:32.358–0:35.338
zh根本分不清哪句是谁说的
根本分不清哪句是谁说的
0:35.338–0:38.358
zh这就是所谓说话人分离难题
这就是所谓说话人分离难题
0:38.358–0:42.058
zh最近复旦的团队放出了一个开源模型
最近复旦的团队放出了一个开源模型
0:42.058–0:44.298
zh叫Mouse Transcribe Diaries
叫Mouse Transcribe Diaries
0:44.298–0:48.538
zh他把转写和分离这两件事捏成了一个模型
他把转写和分离这两件事捏成了一个模型
0:48.538–0:50.338
zh一次推理全部搞定
一次推理全部搞定
0:50.338–0:52.138
zh而且准确率把豆包
而且准确率把豆包
0:52.138–0:53.038
enGPT
GPT
0:53.038–0:53.658
en4O
4O
0:53.658–0:54.398
enGemini
Gemini
0:54.398–0:55.618
zh都甩在后面
都甩在后面
0:55.778–0:57.778
zh这期就来拆一拆它
这期就来拆一拆它
0:57.778–0:59.878
zh先把问题说清楚
先把问题说清楚
0:59.878–1:01.918
zh语音转写这件事
语音转写这件事
1:01.918–1:03.838
zh技术上叫ASR
技术上叫ASR
1:03.838–1:05.218
zh自动语音识别
自动语音识别
1:05.218–1:07.638
zh单独看其实已经很成熟了
单独看其实已经很成熟了
1:07.638–1:10.538
zh你手机输入法的语音转文字就是
你手机输入法的语音转文字就是
1:10.538–1:14.778
zh但真实场景远比一个人对着话筒念要复杂
但真实场景远比一个人对着话筒念要复杂
1:14.778–1:18.938
zh会议、播客、访谈、电话、讲座
会议、播客、访谈、电话、讲座
1:18.938–1:21.298
zh这些录音有三个共同特征
这些录音有三个共同特征
1:21.298–1:22.858
zh第一、长
第一、长
1:22.858–1:25.238
zh动不动几十分钟到一个小时
动不动几十分钟到一个小时
1:25.238–1:29.938
zh第二,人多,两个到十几个人不等,还互相打断
第二,人多,两个到十几个人不等,还互相打断
1:29.938–1:36.358
zh第三,杂,有背景噪音,有关门声笑声,还有大段沉默的停顿
第三,杂,有背景噪音,有关门声笑声,还有大段沉默的停顿
1:36.358–1:39.998
zh对这种录音,光把话转成字远远不够
对这种录音,光把话转成字远远不够
1:39.998–1:44.198
zh你还想知道每句话是谁说的,发生在哪一秒
你还想知道每句话是谁说的,发生在哪一秒
1:44.198–1:49.438
zh后者,有个专门的名字,叫Dialization,说话人分离
后者,有个专门的名字,叫Dialization,说话人分离
1:49.938–1:52.618
zh传统做法怎么解决这个问题的?
传统做法怎么解决这个问题的?
1:53.238–1:54.138
zh拼流水线
拼流水线
1:54.138–1:55.358
zh第一步
第一步
1:55.358–1:56.338
zh用VAD
用VAD
1:56.338–1:58.318
zh也就是语音活动检测
也就是语音活动检测
1:58.318–2:01.718
zh把录音切成一小段一小段有人声的片段
把录音切成一小段一小段有人声的片段
2:01.718–2:02.898
zh第二步
第二步
2:02.898–2:04.518
zh用ASR模型
用ASR模型
2:04.518–2:06.078
zh把每段转成文字
把每段转成文字
2:06.078–2:07.518
zh第三步
第三步
2:07.518–2:10.158
zh再上独立的说话人分离模型
再上独立的说话人分离模型
2:10.158–2:12.298
zh给每段贴上说话人标签
给每段贴上说话人标签
2:12.298–2:13.598
zh第四步
第四步
2:13.598–2:15.038
zh做时间戳对齐
做时间戳对齐
2:15.038–2:15.998
zh把文字
把文字
2:15.998–2:16.918
zh说话人
说话人
2:16.918–2:18.878
zh时间这三样东西拼回去
时间这三样东西拼回去
2:18.878–2:20.738
zh听起来挺合理
听起来挺合理
2:20.738–2:21.818
zh问题在于
问题在于
2:21.818–2:23.838
zh每一步都是独立的模型
每一步都是独立的模型
2:23.838–2:25.358
zh每一步都会犯错
每一步都会犯错
2:25.358–2:27.458
zh而且错误会一路累积
而且错误会一路累积
2:27.458–2:29.318
zhVAD切错了
VAD切错了
2:29.318–2:30.738
zh后面全跟着错
后面全跟着错
2:30.738–2:33.098
zhASR听差了一个词
ASR听差了一个词
2:33.098–2:34.938
zh分离模型也跟着乱
分离模型也跟着乱
2:34.938–2:36.498
zh更要命的是
更要命的是
2:36.498–2:38.418
zh这些模型各自为正
这些模型各自为正
2:38.418–2:39.998
zh谁也看不到全局
谁也看不到全局
2:39.998–2:44.218
zh比如同一个人的两段画被切到了不同片段
比如同一个人的两段画被切到了不同片段
2:44.218–2:47.498
zh分离模型很可能把它们当成两个人
分离模型很可能把它们当成两个人
2:47.498–2:50.158
zh这就是模块化方案的死学
这就是模块化方案的死学
2:50.158–2:51.898
zh局部每一步都最优
局部每一步都最优
2:51.898–2:53.618
zh拼起来全局崩盘
拼起来全局崩盘
2:53.618–2:57.378
zh这次放模型的团队叫OpenMOSS
这次放模型的团队叫OpenMOSS
2:57.378–2:59.418
zh中文名模斯智能
中文名模斯智能
2:59.418–3:03.358
zh是从复旦大学邱熙鹏教授团队孵化出来的
是从复旦大学邱熙鹏教授团队孵化出来的
3:03.358–3:06.338
zh邱熙鹏这个名字你可能不熟
邱熙鹏这个名字你可能不熟
3:06.338–3:09.718
zh但他写的那本神经网络与深度学习
但他写的那本神经网络与深度学习
3:09.718–3:11.878
zh是国内很多高校的教材
是国内很多高校的教材
3:11.878–3:15.938
zh他带的团队之前做过一个很有名的对话大模型
他带的团队之前做过一个很有名的对话大模型
3:15.938–3:16.938
zh也叫MOS
也叫MOS
3:16.938–3:21.298
zh号称中国第一个LayChatGPT的开源模型
号称中国第一个LayChatGPT的开源模型
3:21.298–3:25.158
zh所以这支队伍在开源圈是有传统的
所以这支队伍在开源圈是有传统的
3:25.158–3:28.478
zh这次他们做的Mouse Transcribe Diaries
这次他们做的Mouse Transcribe Diaries
3:28.478–3:30.258
zh参数量0.9B
参数量0.9B
3:30.258–3:32.878
zh大约9亿完全开源
大约9亿完全开源
3:32.878–3:35.078
zh权重放在Hugging Face上
权重放在Hugging Face上
3:35.078–3:37.298
zh协议是Apache 2.0
协议是Apache 2.0
3:37.298–3:39.538
zh意思是你可以拿去商用
意思是你可以拿去商用
3:39.538–3:40.898
zh不用交一分钱
不用交一分钱
3:40.898–3:44.058
zh这个体量加上这个开放程度
这个体量加上这个开放程度
3:44.058–3:47.478
zh对个人开发者和中小团队特别友好
对个人开发者和中小团队特别友好
3:47.478–3:51.498
zh那它凭什么能把转写和分离捏在一起呢
那它凭什么能把转写和分离捏在一起呢
3:51.498–3:52.758
zh看架构
看架构
3:52.758–3:56.798
zh它其实是把两个现成的墙模型做了架接
它其实是把两个现成的墙模型做了架接
3:56.798–3:58.298
zh音频那一侧
音频那一侧
3:58.298–4:00.978
zh用的是Whisper Medium的编码器
用的是Whisper Medium的编码器
4:00.978–4:04.918
zh就是OpenAI那个Whisper的中等版本
就是OpenAI那个Whisper的中等版本
4:04.918–4:07.318
zh负责把声音变成声学特征
负责把声音变成声学特征
4:07.318–4:08.778
zh文本那一侧
文本那一侧
4:08.778–4:11.978
zh用的是QAM3 0.6B的解码器
用的是QAM3 0.6B的解码器
4:11.978–4:13.718
zh通一千问的小模型
通一千问的小模型
4:13.718–4:15.758
zh负责生成文字
负责生成文字
4:15.758–4:19.198
zh中间用一个适配器把两者连起来
中间用一个适配器把两者连起来
4:19.198–4:21.938
zh把音频特征做四倍的时间压缩
把音频特征做四倍的时间压缩
4:21.938–4:24.038
zh再塞进文本模型里去
再塞进文本模型里去
4:24.038–4:26.738
zh这样做有两个直接的好处
这样做有两个直接的好处
4:26.738–4:27.778
zh第一
第一
4:27.778–4:30.438
zh它能一口气吃下超长音频
它能一口气吃下超长音频
4:30.438–4:32.858
zh上下文窗口12万8千
上下文窗口12万8千
4:32.858–4:33.998
zh换算下来
换算下来
4:33.998–4:36.518
zh大约能一次处理90分钟的录音
大约能一次处理90分钟的录音
4:36.518–4:37.958
zh完全不用切片
完全不用切片
4:37.958–4:39.018
zh第二
第二
4:39.018–4:43.018
zh转写和分离是在同一个模型里联合训练的
转写和分离是在同一个模型里联合训练的
4:43.018–4:45.838
zh模型天生就知道这段话是谁的
模型天生就知道这段话是谁的
4:45.838–4:48.238
zh根本不存在事后拼接的问题
根本不存在事后拼接的问题
4:48.238–4:51.758
zh输入是16000赫兹的单声道音频
输入是16000赫兹的单声道音频
4:51.758–4:55.938
zh输出直接就是带说话人标签和时间戳的文本
输出直接就是带说话人标签和时间戳的文本
4:55.938–4:58.398
zh输出的格式非常紧凑
输出的格式非常紧凑
4:58.398–4:59.798
zh一眼就能看懂
一眼就能看懂
4:59.798–5:03.098
zh它把整段录音编码成一个时间流
它把整段录音编码成一个时间流
5:03.098–5:05.418
zh每句话前面标两样东西
每句话前面标两样东西
5:05.418–5:07.598
zh一个是方括号里的时间戳
一个是方括号里的时间戳
5:07.598–5:10.278
zh一个是方括号里的说话人编号
一个是方括号里的说话人编号
5:10.278–5:11.698
zh举个例子
举个例子
5:11.698–5:12.718
zh开头几秒
开头几秒
5:12.718–5:14.298
zh方括号0.48
方括号0.48
5:14.298–5:15.918
zh方括号S01
方括号S01
5:15.918–5:18.558
zh意思是0.48秒开始
意思是0.48秒开始
5:18.558–5:20.278
zh说话人1号发言
说话人1号发言
5:20.278–5:21.918
zh内容是欢迎各位
内容是欢迎各位
5:21.918–5:23.818
zh到1.66秒结束
到1.66秒结束
5:23.818–5:26.878
zh紧接着跳到12.26秒
紧接着跳到12.26秒
5:26.878–5:28.338
zh方括号S02
方括号S02
5:28.338–5:30.438
zh说话人2号接过话茬
说话人2号接过话茬
5:30.438–5:34.038
zh这个格式可以直接为给后处理脚本
这个格式可以直接为给后处理脚本
5:34.038–5:36.018
zh解析成结构化的段落
解析成结构化的段落
5:36.018–5:38.218
zh每段都带起始时间
每段都带起始时间
5:38.218–5:39.358
zh结束时间
结束时间
5:39.358–5:40.798
zh说话人
说话人
5:40.798–5:42.258
zh文本这四个字段
文本这四个字段
5:42.258–5:46.258
zh想导出城JSON还是字幕格式都行
想导出城JSON还是字幕格式都行
5:46.258–5:48.218
zh对开发者很友好
对开发者很友好
5:48.218–5:51.558
zh你不用再自己写证则去硬抠时间戳了
你不用再自己写证则去硬抠时间戳了
5:51.558–5:53.658
zh到了最关键的环节
到了最关键的环节
5:53.658–5:55.058
zh它到底有多准
它到底有多准
5:55.058–5:57.958
zh团队在四个基准上做了评测
团队在四个基准上做了评测
5:57.958–6:04.858
zh全是真实的长音频多人场景
全是真实的长音频多人场景
6:04.858–6:08.338
zh横跨中文会议和英文播客电影
横跨中文会议和英文播客电影
6:08.338–6:11.098
zh核心指标是字符错误率
核心指标是字符错误率
6:11.098–6:12.198
zh越低越好
越低越好
6:12.198–6:15.158
zh我挑几个最能说明问题的数字
我挑几个最能说明问题的数字
6:15.158–6:18.838
zh在Azhel 4这个中文会议基准上
在Azhel 4这个中文会议基准上
6:18.838–6:22.158
zh它的错误率是14.84%
它的错误率是14.84%
6:22.158–6:22.938
zh作为对比
作为对比
6:22.938–6:24.818
zh豆包是18.18%
豆包是18.18%
6:24.818–6:28.238
zhGemini 3 Pro是22.75%
Gemini 3 Pro是22.75%
6:28.238–6:29.018
zh也就是说
也就是说
6:29.018–6:31.558
zh它一个0.9B的开源模型
它一个0.9B的开源模型
6:31.558–6:35.298
zh把字节和谷歌的商业模型都压在了身下
把字节和谷歌的商业模型都压在了身下
6:35.298–6:39.038
zh在Movies这个英文电影基准上更夸张
在Movies这个英文电影基准上更夸张
6:39.038–6:42.098
zh它的错误率只有6.36%
它的错误率只有6.36%
6:42.198–6:45.598
zh而GPT4O是14.37
而GPT4O是14.37
6:45.598–6:47.338
zh豆包是9.94
豆包是9.94
6:47.338–6:49.998
zh电影对白里有背景音
电影对白里有背景音
6:49.998–6:50.898
zh有口音
有口音
6:50.898–6:51.778
zh有重叠
有重叠
6:51.778–6:53.358
zh是最难啃的骨头
是最难啃的骨头
6:53.358–6:54.558
zh它照样通吃
它照样通吃
6:54.558–6:57.318
zh这里还要特别说一个指标
这里还要特别说一个指标
6:57.318–6:58.678
zh叫德尔塔CP
叫德尔塔CP
6:58.678–7:02.098
zh它衡量的是说话人分离的额外代价
它衡量的是说话人分离的额外代价
7:02.098–7:03.318
zh通俗讲就是
通俗讲就是
7:03.318–7:05.158
zh为了分清是谁说的
为了分清是谁说的
7:05.158–7:06.778
zh你额外多错了多少
你额外多错了多少
7:06.778–7:09.518
zh它的这个值只有0.99
它的这个值只有0.99
7:09.518–7:10.718
zh几乎为0
几乎为0
7:10.718–7:15.138
zh意味着分清说话人这件事几乎不拖累转写准确率
意味着分清说话人这件事几乎不拖累转写准确率
7:15.138–7:18.778
zh这在传统流水线里是想都不敢想的
这在传统流水线里是想都不敢想的
7:18.778–7:23.198
zh那它跟现在最流行的开源方案比到底差在哪
那它跟现在最流行的开源方案比到底差在哪
7:23.198–7:27.978
zh先说Whisper,OpenAI的老牌选手,能力很强
先说Whisper,OpenAI的老牌选手,能力很强
7:27.978–7:29.438
zh但他只管转写
但他只管转写
7:29.438–7:34.498
zh不管分离,你想分清谁说的,得自己再外挂一个模型
不管分离,你想分清谁说的,得自己再外挂一个模型
7:34.858–7:39.618
zh再说Whisper X,这个是社区里用的最多的组合方案
再说Whisper X,这个是社区里用的最多的组合方案
7:39.618–7:44.858
zh他在Whisper基础上接了VAD和PiNote的分离模型
他在Whisper基础上接了VAD和PiNote的分离模型
7:44.858–7:46.998
zh确实能做对齐和分离
确实能做对齐和分离
7:46.998–7:49.498
zh但本质上还是拼接流水线
但本质上还是拼接流水线
7:49.498–7:51.558
zh前面说的错误累积问题
前面说的错误累积问题
7:51.558–7:53.038
zh他一个都没躲掉
他一个都没躲掉
7:53.426–7:55.306
zh最后说PiNote
最后说PiNote
7:55.306–7:57.186
zh他是专门的分离工具
他是专门的分离工具
7:57.186–7:58.486
zh做得相当好
做得相当好
7:58.486–7:59.906
zh但他只管分离
但他只管分离
7:59.906–8:01.446
zh转写的另找别人
转写的另找别人
8:01.446–8:03.186
zh你看出规律了吗
你看出规律了吗
8:03.186–8:06.066
zh传统的整个生态是被切碎的
传统的整个生态是被切碎的
8:06.066–8:07.306
zh转写归转写
转写归转写
8:07.306–8:08.606
zh分离归分离
分离归分离
8:08.606–8:10.726
zh你像个搬砖工一样
你像个搬砖工一样
8:10.726–8:11.946
zh把它们拼起来
把它们拼起来
8:11.946–8:13.846
zh每块砖之间都有缝隙
每块砖之间都有缝隙
8:13.846–8:16.686
zhMoth这套做法的价值就在于
Moth这套做法的价值就在于
8:16.686–8:19.966
zh他把这些砖直接烧成了一整块瓷砖
他把这些砖直接烧成了一整块瓷砖
8:19.966–8:21.826
zh从根上消除了缝隙
从根上消除了缝隙
8:21.826–8:23.246
zh这么能打
这么能打
8:23.246–8:24.406
zh部署难不难
部署难不难
8:24.406–8:26.126
zh他给了三条路
他给了三条路
8:26.126–8:27.286
zh第一条
第一条
8:27.286–8:28.326
zh研究用的
研究用的
8:28.326–8:31.186
zh直接拿原生Transformers库加载
直接拿原生Transformers库加载
8:31.186–8:32.526
zh几行Pytho
几行Pytho
8:32.526–8:34.406
zhN代码就能跑
N代码就能跑
8:34.406–8:36.506
zh适合你想看内部细节
适合你想看内部细节
8:36.506–8:38.326
zh做二次开发的场景
做二次开发的场景
8:38.326–8:39.526
zh第二条
第二条
8:39.526–8:41.406
zh生产环境要高吞吐
生产环境要高吞吐
8:41.406–8:43.606
zh用SGLine Omni部署
用SGLine Omni部署
8:43.606–8:46.206
zh这是一个专门的服务框架
这是一个专门的服务框架
8:46.206–8:49.286
zh单张H100显卡就能跑起来
单张H100显卡就能跑起来
8:49.286–8:50.626
zh并发16路的时候
并发16路的时候
8:50.626–8:53.066
zh每秒能处理82秒的音频
每秒能处理82秒的音频
8:53.066–8:55.986
zh换算成时时率是0.092
换算成时时率是0.092
8:55.986–9:00.246
zh意味着处理速度是音频播放速度的10倍以上
意味着处理速度是音频播放速度的10倍以上
9:00.246–9:02.366
zh如果走长音频单路
如果走长音频单路
9:02.366–9:05.486
zh时时率最低能压到0.0197
时时率最低能压到0.0197
9:05.486–9:08.926
zh也就是处理速度是音频时长的50倍
也就是处理速度是音频时长的50倍
9:08.926–9:12.206
zh一个小时的录音一分多钟就处理完了
一个小时的录音一分多钟就处理完了
9:12.206–9:13.706
zh第三条
第三条
9:13.706–9:15.086
zh用VLLM
用VLLM
9:15.086–9:17.346
zh适合你的环境是Cuda12
适合你的环境是Cuda12
9:17.346–9:21.166
zh因为SGLANG OMNI目前要求Cuda13
因为SGLANG OMNI目前要求Cuda13
9:21.166–9:23.806
zhVLLM的兼容性更好
VLLM的兼容性更好
9:23.806–9:25.246
zh三条路
三条路
9:25.246–9:26.606
zh从研究到生产
从研究到生产
9:26.606–9:29.026
zh基本把各种需求都覆盖了
基本把各种需求都覆盖了
9:29.026–9:32.406
zh但不是所有人都愿意敲命令型
但不是所有人都愿意敲命令型
9:32.406–9:36.006
zh所以团队还做了一个字幕网页应用
所以团队还做了一个字幕网页应用
9:36.006–9:38.066
zh叫MPD Subtitle Web
叫MPD Subtitle Web
9:38.066–9:40.246
zh它就是个浏览器界面
它就是个浏览器界面
9:40.246–9:42.606
zh你上传一段音频或视频
你上传一段音频或视频
9:42.606–9:44.126
zh它自动跑模型
它自动跑模型
9:44.126–9:47.926
zh跑完你能在网页上直接审阅转写结果
跑完你能在网页上直接审阅转写结果
9:47.926–9:50.106
zh谁说了什么一目了然
谁说了什么一目了然
9:50.106–9:52.086
zh审完点一下导出
审完点一下导出
9:52.086–9:53.386
zh格式随你挑
格式随你挑
9:53.386–9:55.406
zhJSON给程序用
JSON给程序用
9:55.406–9:58.466
zhSRT和S是标准字幕格式
SRT和S是标准字幕格式
9:58.466–10:00.546
zh直接位给播放器就行
直接位给播放器就行
10:00.546–10:04.946
zh甚至还能用Fpack把字幕稍录进视频
甚至还能用Fpack把字幕稍录进视频
10:04.946–10:07.526
zh一键导出一个带字幕的MP4
一键导出一个带字幕的MP4
10:07.526–10:09.966
zh界面支持中文和英文
界面支持中文和英文
10:09.966–10:12.626
zh会自动跟着你浏览器的语言走
会自动跟着你浏览器的语言走
10:12.626–10:15.526
zh还有个很实用的小功能叫热词
还有个很实用的小功能叫热词
10:15.526–10:17.926
zh如果你录音里有专有名词
如果你录音里有专有名词
10:17.926–10:18.706
zh人名
人名
10:18.706–10:19.846
zh行业术语
行业术语
10:19.846–10:21.386
zh模型老式识别错
模型老式识别错
10:21.386–10:24.246
zh你可以在提示词里加几个热词
你可以在提示词里加几个热词
10:24.246–10:26.566
zh引导它往正确的方向认
引导它往正确的方向认
10:26.566–10:29.846
zh这对行业内部的录音特别管用
这对行业内部的录音特别管用
10:29.846–10:32.626
zh这种能力到底能用在哪
这种能力到底能用在哪
10:32.626–10:35.246
zh我自己最看好的几个场景
我自己最看好的几个场景
10:35.246–10:37.326
zh第一会议纪要
第一会议纪要
10:37.326–10:39.146
zh一个小时的多人会议
一个小时的多人会议
10:39.146–10:40.086
zh扔进去
扔进去
10:40.086–10:43.826
zh几分钟出来一份带说话人和时间戳的全文
几分钟出来一份带说话人和时间戳的全文
10:43.826–10:46.706
zh秘书或者你自己再做摘要就行
秘书或者你自己再做摘要就行
10:46.706–10:49.726
zh省下来的时间是实打实的
省下来的时间是实打实的
10:49.726–10:52.446
zh第二播客和视频字幕
第二播客和视频字幕
10:52.446–10:56.226
zh做内容的人最痛苦的就是给节目上字幕
做内容的人最痛苦的就是给节目上字幕
10:56.226–10:58.706
zh这个工具能直接出SRT
这个工具能直接出SRT
10:58.706–11:00.866
zh连谁说的都给你雕好了
连谁说的都给你雕好了
11:00.866–11:02.006
zh第三
第三
11:02.006–11:03.206
zh访谈整理
访谈整理
11:03.206–11:03.986
zh记者
记者
11:03.986–11:05.906
zh研究员做智性访谈
研究员做智性访谈
11:05.906–11:08.386
zh几十段录音要转写要编码
几十段录音要转写要编码
11:08.386–11:10.986
zh这是真正能解放生产力的工具
这是真正能解放生产力的工具
11:10.986–11:12.086
zh第四
第四
11:12.086–11:13.526
zh更专业的领域
更专业的领域
11:13.526–11:14.606
zh法庭记录
法庭记录
11:14.606–11:15.686
zh医疗口述
医疗口述
11:15.686–11:16.786
zh客服质检
客服质检
11:16.786–11:21.546
zh这些对准确率和说话人识别要求都很高的场景
这些对准确率和说话人识别要求都很高的场景
11:21.546–11:25.366
zh他的杀手检就是那90分钟的长上下文
他的杀手检就是那90分钟的长上下文
11:25.366–11:27.746
zh意味着绝大部分真实录音
意味着绝大部分真实录音
11:27.746–11:29.226
zh它能一口气吃完
它能一口气吃完
11:29.226–11:30.846
zh不用你手动切块
不用你手动切块
11:30.846–11:32.326
zh想试的话
想试的话
11:32.326–11:33.706
zh装起来不复杂
装起来不复杂
11:33.706–11:36.366
zh前提是Python 3.12
前提是Python 3.12
11:36.366–11:38.346
zh用UV这个包管理器
用UV这个包管理器
11:38.346–11:39.706
zh建一个虚拟环境
建一个虚拟环境
11:39.706–11:42.626
zh然后从GitHub客龙仓库
然后从GitHub客龙仓库
11:42.626–11:45.306
zh一行UVPIP Install装好依赖
一行UVPIP Install装好依赖
11:45.306–11:49.006
zh它会自动帮你处理PyTorch的GPU后端
它会自动帮你处理PyTorch的GPU后端
11:49.006–11:50.946
zh装完有两条路
装完有两条路
11:50.946–11:52.986
zh想看代码细节的
想看代码细节的
11:52.986–11:56.386
zh直接用Transformers加在模型跑推里
直接用Transformers加在模型跑推里
11:56.386–11:58.186
zh想跑成服务的
想跑成服务的
11:58.186–12:03.826
zh用SGLang Omni或者VLLM启动一个API服务
用SGLang Omni或者VLLM启动一个API服务
12:03.826–12:07.406
zh调用方式兼容OpenAI那套音频接口
调用方式兼容OpenAI那套音频接口
12:07.406–12:10.366
zh你原来用Whisper API的代码
你原来用Whisper API的代码
12:10.366–12:12.986
zh改个地址就能直接迁移过来
改个地址就能直接迁移过来
12:12.986–12:15.646
zh模型权重从Hugging Face拉
模型权重从Hugging Face拉
12:15.646–12:17.166
zh第一次跑会下载
第一次跑会下载
12:17.166–12:18.466
zh大约两个G
大约两个G
12:18.466–12:22.366
zh最后说一个让这个项目分量很重的头衔
最后说一个让这个项目分量很重的头衔
12:22.366–12:25.186
zh这个模型7月9号才开源
这个模型7月9号才开源
12:25.186–12:27.046
zh到现在不到20天
到现在不到20天
12:27.046–12:29.946
zhGitHub已经冲到1300多star
GitHub已经冲到1300多star
12:29.946–12:34.646
zh还登上了Trendshift当日Python仓库的第11名
还登上了Trendshift当日Python仓库的第11名
12:34.646–12:36.326
zh更硬的成绩是
更硬的成绩是
12:36.326–12:39.806
zh2026年语音领域的鼎会Interspeech
2026年语音领域的鼎会Interspeech
12:39.806–12:43.626
zh办了第二届多语言低资源语音挑战赛
办了第二届多语言低资源语音挑战赛
12:43.626–12:46.526
zh他拿了第一名覆盖14种语言
他拿了第一名覆盖14种语言
12:46.526–12:49.166
zh一个久易参数的开源模型
一个久易参数的开源模型
12:49.166–12:53.206
zh在长音频多说话人这个最难的真实场景上
在长音频多说话人这个最难的真实场景上
12:53.206–12:56.806
zh同时打赢了准确率和效率两场仗
同时打赢了准确率和效率两场仗
12:56.806–12:59.126
zh还把代码和权重都敞开了
还把代码和权重都敞开了
12:59.126–13:00.726
zh代码在GitHub
代码在GitHub
13:00.726–13:02.406
zh搜OpenMOSS
搜OpenMOSS
13:02.406–13:03.486
zh斜杠
斜杠
13:03.486–13:06.586
zhMouseTranscribedDiaries就能找到
MouseTranscribedDiaries就能找到
13:06.586–13:08.146
zh权重在HuggingFace
权重在HuggingFace
13:08.146–13:11.226
zh如果你平时要跟长录音打交道
如果你平时要跟长录音打交道
13:11.226–13:12.206
zh做字幕
做字幕
13:12.206–13:13.126
zh做记要
做记要
13:13.126–13:14.446
zh做访谈整理
做访谈整理
13:14.446–13:17.606
zh这个工具真的值得装一个试试
这个工具真的值得装一个试试
13:17.606–13:19.126
zh这期到这里
这期到这里
13:19.126–13:20.326
zh我们下期见
我们下期见
尚未產生學習筆記
請在 Telegram 指令最後加上「學習」,例如:videonote 網址 英文 雙語 學習