17MB语音转录模型Whistle:端侧部署新选择

Cactus Compute 推出仅 16.9MB 的语音转录模型 Whistle,极致便携可离线部署于手机与微控制器。
Cactus Compute 推出的 Whistle 语音转录模型文件仅 16.9MB,采用 2-4 bit 量化,可在手机、树莓派、微控制器等设备上完全离线运行。实测中,桌面端通过 uv 安装后可实时转录麦克风输入,短句识别稳定;Flutter 打包的 APK 约 34MB,内置模型可独立完成手机端转录。Whistle 的性能与 Whisper Base、Moonshine Tiny V2 处于同一量级,体积优势明显,但定位是便携性而非精度或速度领先。文章认为,小体积带来的部署自由是真实收益,量化效果需按场景验收,端侧小模型为机器人、可穿戴和智能家居等硬件场景打开了离线语音交互的可能。
一个只有17MB的语音转录模型
语音转文字模型通常给人留下"大而重"的印象,Whisper、Moonshine 等方案动辄几十上百兆,部署在手机或嵌入式设备上并不轻松。Cactus Compute 推出的 Whistle 打破了这一惯性认知:模型文件仅 16.9MB,却能在转录质量上接近 Whisper Base 和 Moonshine Tiny V2。
这个模型最值得关注的不是"最快"或"最准",而是极致的可移植性。一个 .cact 文件,复制到手机、树莓派、微控制器、机器人、智能家居设备或车载系统里就能跑,不需要联网、不依赖 API。对于需要离线语音能力的硬件项目来说,这提供了一个此前不太现实的选择。

Cactus Compute 此前以 Needle 系列(工具调用与结构化输出模型)为人所知,Whistle 是他们在语音领域的新尝试。有意思的是,Whistle 的精度标注为 2-4 bit 量化,这也是它能把体积压到如此程度的关键。量化带来体积优势的同时,是否牺牲了识别质量,是实际使用中最需要验证的问题。
量化(Quantization) 是模型压缩的核心技术之一。它把神经网络权重和激活值从高精度浮点数(如 32 位或 16 位)映射到低比特整数(如 2 位、4 位、8 位),从而大幅减少存储占用和内存带宽需求。2-4 bit 量化意味着每个参数仅用 2 到 4 个二进制位表示,相比 16 位浮点可压缩 4-8 倍。代价是数值表示范围变窄、精度损失,可能导致识别错误率上升。常见的量化方法包括训练后量化(PTQ)和量化感知训练(QAT),后者在训练中模拟量化误差,通常能更好地保持精度。Whistle 能在 2-4 bit 下保持可用性能,说明其训练流程很可能针对低比特推理做了优化。
实测:PC 端与手机端的转录表现
桌面端快速验证
UP主在视频中演示了在 PC 上的安装流程。核心步骤并不复杂:用 uv init --no-package 创建项目,再通过 uv add cactus-needle 安装包。官方示例以 WAV 文件为输入,但也可以直接调用麦克风:
uv run needle-whistle-playground
首次运行会提示缺少 NumPy,需要加上麦克风依赖重新安装:uv add cactus-needle[mic]。

测试中,UP主用正常语速和快速含糊的语句(如"Python 是一门解释型语言")进行转录,模型基本都能正确识别。这说明在 2-4 bit 量化下,Whistle 的鲁棒性仍然在线。
打包进 APK 跑在手机上
更完整的验证在移动端。UP主用一个 Flutter 项目把 Whistle 打包进 APK,整个应用约 34MB,其中 .cact 模型文件放在 assets 目录,通过 pubspec.yaml 声明资源。代码层面需要加载 libneedle.so——这个动态库负责解析权重,而 .cact 文件本身只包含权重数据。初始化后用 transcribe 函数即可完成识别,UI 部分只负责展示结果。

安装到手机后,点击界面右下角的麦克风按钮即可调用内置模型转录。UP主用同样含糊快速的语句重新测试,结果"看起来非常好"。整个应用在无网络环境下独立工作,这正是 Whistle 的核心价值场景。

libneedle.so 是 Cactus Needle 运行时库在 Android 上的动态链接库(.so 为 Linux/Android 共享对象格式)。它负责加载 .cact 模型文件、解析权重、执行推理计算,并向上层提供 transcribe 等接口。将模型权重(.cact)与推理引擎(libneedle.so)分离的设计有两个好处:一是权重文件可以独立更新或替换,不必重新编译整个应用;二是同一套运行时可以支持多种模型,只需切换权重文件。在 Flutter 项目中,需要通过 pubspec.yaml 将 .cact 声明为 asset,并在原生层或通过 FFI 调用 libneedle.so 完成初始化与转录。
端侧语音模型的几条判断
小体积换来的部署自由是真实收益。 34MB 的 Flutter 应用意味着语音转录可以像普通功能一样被塞进任何 App,不需要用户下载额外模型,也不需要为云端 API 付费。对隐私敏感的场景(如医疗、车载)尤其有吸引力。
量化是双刃剑,需要按场景验收。 2-4 bit 精度在演示中表现良好,但演示样本以短句、清晰发音为主。长音频、强口音、嘈杂环境的实际表现仍需更多测试。UP主本人也承认,选择 Whistle 的理由"不是它最好,也不是它最快,而是它最便携"。
与 Whisper Base、Moonshine 的对比要建立在公平基准上。 从体积看,Whisper Base 远大于 Whistle,Moonshine Tiny V2 的量化版为 34.4MB、16 位浮点版为 109MB。Whistle 的 16.9MB 在体积上有明显优势,但性能"处于同一量级"而非超越,这个定位需要保持清醒。
硬件应用的可能性被打开。 当语音转录模型小到可以放进微控制器,机器人、可穿戴设备、智能家居的交互设计空间会随之扩大。这是端侧 AI 趋势中一个具体的、可落地的进展。
适合谁用
如果你正在做需要离线语音转文字的硬件或移动应用,Whistle 值得一试:安装门槛低,Dart/Flutter 和 Python 都有现成路径,单一模型文件也简化了分发。如果你追求的是最高识别精度或最长音频的稳定性,现阶段它可能还不够,需要配合更完整的基准测试来评估。
项目的真正意义在于示范了一种方向:把足够好的模型压到足够小,让 AI 能力像普通代码库一样被嵌入任意设备。这条路一旦走通,端侧 AI 的想象空间会比现在大得多。
相关推荐

3分钟看懂DeepSeek:从量化私募到开源AI领跑者的崛起之路
3分钟看懂DeepSeek发展史:从幻方量化的算力积累,到V2的MLA推理降本、V3的557.6万美元训练账单、R1开源引爆全球,再到V4与70亿美元A轮融资,梳理深度求索的关键节点与技术路线。

本地文学创作模型PK:Qwen3.8 27B微调版胜出,DeepSeek v4.1表现平淡
B站UP主横向测评七款本地文学创作模型:海明威、HumanLike Chat基于Qwen3.8 27B微调表现最佳,DeepSeek v4.1叙事平淡,东方朔角色混乱垫底。附三道测试题评分与使用建议。

梁文锋的三次豪赌:DeepSeek为何将82%毛利开源?
DeepSeek为何把82%毛利的推理框架DeepInfer开源,又启动千亿融资?从技术路线、国产芯片到组织纯粹性,解析梁文锋的三次豪赌与开源战略背后的商业与理想逻辑。