一秒内将语音输入到任意Windows窗口:离线运行,CPU跑通,无需占用一GB显存资源
OpenAI
文章介绍了WhisperType,一款基于faster-whisper的开源离线语音听写工具,可在Windows上运行并支持CPU。文章阐述了关键优化措施:可变编码器窗口、关闭时间戳、流式识别以及自动线程选择。由此,短句的响应时间从约4秒缩短至约1秒。
作者开发了WhisperType,这是一款免费开源(MIT许可)的Windows 10/11 x64听写工具。它允许通过热键在任何窗口中进行语音输入,可离线使用且无需管理员权限,并采用本地模型deepdml/faster-whisper-large-v3-turbo-ct2(CTranslate2,int8_float32)。主要问题在于Whisper编码器总是处理固定的30秒窗口,因此即使很短的短语在中央处理器上也需要约4秒。解决方案是对pad_or_trim函数进行猴子补丁,根据实际语音长度缩小编码器窗口。此外,在缩小窗口时禁用时间戳,并采用基于文本的方法来消除罕见的重复。对于长听写,实现了流式识别:在录音过程中,音频在停顿处被切割并分块处理。最优线程数会自动选择为所有逻辑处理器减二。其他优化包括:显式语言检测、常开音频流、预热模型、延迟导入,以及检查静音和音频设备故障。系统级代码仅使用ctypes和WinAPI,避免使用钩子库。
来源: Habr — хаб ML —
原文
