Qwen Scribe v0.1.0-beta.1 – 适用于 Apple Silicon 的本地转录与听写
概览与关键要点
Qwen Scribe v0.1.0-beta.1 为 Apple Silicon Mac 提供私密的本地转录和听写,完全在设备上运行 Qwen3‑ASR。
该应用仅以源码形式发布;用户使用 make app 在本地构建应用。无需账号、API 密钥或云服务,音频和转录文本均保留在 Mac 上。
功能与特性
Qwen Scribe 提供拖拽式媒体转录、通过右 Command 键进行实时听写、多语言支持并具备语言检测,以及本地转录历史。 用户可以将音频或视频文件拖入聚焦的网页界面,选择 1.7B 模型以获得更高准确度或 0.6B 模型以提升速度,并获得自动语言检测、可选强制语言、词汇提示、单词时间戳以及 SRT 导出。 在任意文本框中按住右 Command 键即可激活听写;说完后松开键,系统将在本地转录并将结果粘贴到光标位置。 一个不抢占焦点的 HUD 会显示“Listening(监听)”“Transcribing(转录)”“成功”和“失败”状态。 所有转录均以 JSON 格式本地存储,可重新打开、单独删除或全部清除。
系统要求与安装
运行 Qwen Scribe 需要配备 Apple Silicon 的 Mac,系统为 macOS 14 或更高版本,Python 3.12、ffmpeg 和 Xcode 命令行工具,然后使用 make app 从源码构建应用。
1.7B 模型约占 3.4 GB 统一内存,0.6B 模型约占 1.2 GB,加上常规应用开销。
模型权重未随应用打包;首次运行时会从 cache/huggingface/hub 下载。
构建完成后,dist/Qwen Scribe.app 启动服务器和听写助手,而 dist/Stop Qwen Scribe.app 仅停止 Qwen Scribe 启动的进程。
架构与数据流
该应用将基于浏览器的 UI、FastAPI 作业队列以及 MLX 加速的 Qwen3‑ASR 分离,同时原生 macOS 辅助程序负责听写快捷键。
UI 与仅在本地主机运行的 FastAPI 服务器通信,服务器串行化 GPU 作业以避免内存争用。
媒体文件以随机临时名称进行暂存,处理完毕后即被删除。
对于听写,原生 arm64 捆绑可执行文件(native/DictationHelper.m)监控右 Command 事件,生成临时 WAV 文件,将其发送至同一作业队列,获取转录文本,快照剪贴板,使用 Command‑V 粘贴文本,并在剪贴板未改变时恢复之前的内容。
使用方法:文件转录与听写
用户可以通过位于 http://127.0.0.1:8990 的网页界面转录本地音频/视频文件,或在任意文本框中按住右 Command 键启动听写。 文件转录:打开本地服务器地址,拖入文件,选择模型大小和选项,然后下载转录文本或 SRT。 听写:在系统设置 → 隐私与安全 中授予麦克风、输入监控和辅助功能权限;按住右 Command,讲话后松开即可插入文本。 如果辅助功能被拒绝,辅助程序会将转录文本留在剪贴板上并报告失败,而不是声称成功。
性能与社区对比
早期社区反馈指出,Qwen Scribe 在 M1 Mac 上的运行速度约为实时的 2 倍,而部分用户将其与 Whisper、Parakeet 等工具进行比较,但未提供基准数据。
"这相当于在 M1 上的 2 倍实时速度,而在 fluidaudio 上使用 parakeet 则是 60 倍。" — @foobarqux 仓库中未提供官方的延迟或准确率数据;上述性能声明仅来源于引用的评论。
隐私、权限与数据处理
Qwen Scribe 将所有音频和转录数据保存在 Mac 本地,听写需要麦克风、输入监控和辅助功能权限,并将转录以未加密的 JSON 形式存放在应用支持文件夹中。
已保存的转录位于 ~/Library/Application Support/Qwen Scribe/transcripts,为可读的 JSON。
私有运行时和诊断日志与其一起存放。
模型权重缓存于 ~/.cache/huggingface/hub。
由于转录未加密,本地备份或文件系统删除可能仍保留副本;应用本身不执行安全擦除。
开发、构建流程与路线图
项目提供基于 Makefile 的工作流,用于创建虚拟环境、运行测试、构建临时签名的应用以及生成 beta 发布包,计划在 v0.2 中提供 Developer ID 签名和公证的二进制文件。
make setup 会创建 .venv 并安装锁定的依赖。
make test 运行轻量级的 API/历史测试,无需模型权重。
make check 添加源码编译和发布规范检查。
make app 将原生 DictationHelper 编译为 arm64 捆绑包,嵌入服务器启动器和跟踪的源码作为签名资源,验证属性列表,签名并验证结果。
make package 在 dist/ 中生成 beta 发布的 zip 包。
将 CODESIGN_IDENTITY 设置为 Developer ID 身份可启用发布构建签名;公证是计划在 v0.2 中实现的独立步骤。
社区提问与洞见
Hacker News 的评论者询问了语言支持、与 Whisper 及其他听写工具的对比、为何选择 Python 而非 mlx‑swift,以及 ffmpeg 的安装方式等。
"它比 oai 的 Whisper 更好吗?" — @yuraoak "恭喜发布!1. 我看到它使用 python,但我想知道是否可以改用 mlx‑swift。只是好奇你是否考虑过。2. 到目前为止,qwen ASR 在大多数听写应用中似乎不如 parakeet 或 whisper 那样得到良好支持(voxtral 在这方面也类似)。你认为是什么原因?谢谢,祝路线图顺利!" — @jiehong "它与 handy.computer 和 whisprflow 的模型相比如何?" — @dandaka "它支持哪些语言?" — @abdullahkhalids "来自一位不熟悉 macports 的用户的提问。brew 在某种程度上与 macports 正交。有没有办法轻松链接到 macports 安装的 ffmpeg?谢谢。" — @dmwood "像这样的东西才是医生应该使用的,而不是把患者数据发送给一个知道这些信息的 AI 抄写员。我很确定这在法律上是非法的,但它仍在发生,我也很确定这也是推动 FHE 解决方案的原因之一……但显然在本地处理更实用、更私密。" — @smalltorch "@claude 是贡献者吗?我觉得很难相信。" — @1-6 源材料中没有这些问题的答案;本文仅列出提问。