CACTUS COMPUTE 边缘智能发布 · ELI5 图解

Cactus Whistle:
16.9MB 随身顺风耳 与 端侧语音直出工具

告别动辄数百兆、必须联网还死等填充的笨重语音识别!看 Cactus 如何把多语种高精度 ASR 塞进 16.9MB 小身板,11ms 秒级出字,一条语音直接穿透生成 Tool Call 结构化调用!

🪶 极致羽量:16.9 MB(仅 Whisper base 的 1/8)
⚡ 首字延迟:11.1 ms(M4 Pro CPU 端侧裸跑)
🚀 解码极速:1,319 tokens / 秒(超 Whisper 5倍)
🛠️ 杀手特性:音频直接连跳 Needle 生成工具调用(Zero Glue Code)

🥊 边缘语音对决:传统 Whisper base vs 极致轻量 Whistle

🐘 传统 Whisper base:臃肿与固定延迟
Whisper base 145.3 MB 体积 必须强制填充到30秒 首字等 73ms 解码 266 tok/s 微控制器塞不下 还需胶水代码调LLM
  • 体积沉重难下沉: 145MB 无法部署到微控制器(MCU)、手表和低功耗物联网硬件。
  • 强制 Padding 惩罚: 哪怕只说 1 秒钟,也必须强制填充垫高到 30 秒进行全量计算。
  • 割裂的工具调用: 语音识别只输出纯文本,还要额外起一个大模型去解析成 JSON 函数调用。
VS
🕊️ Cactus Whistle:羽量闪电与原生端侧调用
Whistle 仅 16.9 MB! 按音频长度自适应 7 种主流语言 首字仅 11ms 1,319 tok/s 同引擎搭载 Needle 直出 JSON Tool Call
  • 真正端侧任意跑: 单个 16.9MB 文件,纯 CPU 运行,已跨平台编译支持 17 种架构(含 RISC-V)。
  • 自适应毫秒级延迟: 5秒音频首字只要 5.9ms,10秒只要 11ms,完全无感知瞬时响应。
  • 语音直出 Tool Call: 与轻量推理模型 Needle 共享 C++ 核心,直接一条音频出函数调用!
🦜

5岁也能听懂的超级比喻:“巴掌大的神奇顺风耳鹦鹉”

以前你在玩具汽车或手表里装语音助手,必须搬一台重达几十斤的大收音机(几百兆的庞大模型),而且收音机非要听够 30 秒才肯开始工作,反应慢吞吞的。
Cactus 的 Whistle 就像一只只有指甲盖大小的“顺风耳小鹦鹉”(16.9MB):它站在你手腕上,一听到你说话(哪怕只说了半句),0.01 秒(11毫秒)就能立刻翻译出来!更绝的是,它跟驾驶舱里开车的机器人(Needle 推理模型)讲的是同一种暗号:你只要说“关掉厨房灯”,鹦鹉当场就帮机器人按下开关按钮,中途根本不需要人工再去传达信件!

🏛️ Whistle 的三大硬核工程杀手锏

🧠

与 Needle 共享骨干网络代码

Whistle 的编码器采用 8 个 Simple Attention 块(4 条 mHC 残差道与 Monarch Hadamard MLP),解码器采用 8 个阶梯式结构。它们复用 Cactus Needle 的纯 C++ 计算引擎,零重复冗余。

🔗 共享:相同算子、相同量化容器 (.cact)
⚡

门控交叉注意力与一次投影

传统交叉注意力多 Beam 搜索计算极其昂贵。Whistle 在音频到达时,将 375 个帧在 8 层上仅投影一次 K 和 V 缓存并全局持有,5 个 Beam 只需要极小的缓存代价,解码速率飙到 1,319 tok/s!

🚀 暴风极速:解码比 Whisper 快 5 倍
🛠️

音频入,函数调用出(Audio-to-ToolCall)

单条指令 needle --model needle3.cact --model whistle.cact --tools tools.json --audio clip.wav,内部直接流水线将语音转为对应结构化调用,无需中间文本胶水代码!

🔌 原生生态:智能手表/机器人直接控外设

🎮 交互实验室:体验 16.9MB 模型端侧端到端执行

点击不同的语音输入指令,观察 Whistle 如何在毫秒级内完成音频帧切片、跨语言检测、时间戳对其并直出 Tool Call!

模型物理文件大小: 16.9 MB (一键载入)
首字出字延迟(TTFT): 11.1 ms (M4 Pro CPU)
端侧音频安全: 100% 本地 (零数据出境)
解码吞吐量表现 1,319 tokens / 秒 (极速)
识别字错误率(WER): 4.31% (超 Whisper base)
needle_complete 直出 JSON 结果:
{ "function_calls": [...] }

🔍 架构深水区:Whistle 是怎么炼成的?

Acoustic Front-end

三级减半的卷积前端

16 kHz 单声道音频切分成 80 通道 Log-mel 特征(30秒等于 3,000 帧)。Whistle 采用核为 9 的 128 通道卷积干进行三次下采样:

  • 直接将 3,000 帧暴降至 375 帧(每帧 80 毫秒)
  • 后续所有注意力计算全以 80ms 为基准运行
  • 极大削减了自注意力机制中的 $O(N^2)$ 计算瓶颈
Keyword Biasing

Aho-Corasick 自动机关键词偏置

在人名、专有名词识别中,小模型极易听错。Whistle 别出心裁地引入了 Aho-Corasick 多模式匹配自动机:

  • 传入指定关键词(如 `keywords=["Siobhan", "Krzysztof"]`)
  • Beam 搜索解码时沿自动机行走,动态拉升目标词元的对数概率
  • 在手表或特定设备场景下,实现超高精度的冷门词召回
Edge Portability

预编译支持 17 种硬件生态

不需要 Python 环境,不需要 PyTorch,纯单头文件 `needle.h` 与静态库编译,无任何外部动态库依赖:

  • 支持 macOS、Linux、Android、iOS、watchOS
  • 支持 Windows on ARM、RISC-V、MIPS
  • 甚至直接打包为浏览器 WebAssembly (WASI) 组件本地运行!
🎯

Cactus 的边缘革命:把完整的 AI 智能体塞进微控制器

从超轻量语言模型 Needle,到今天仅 16.9MB 的语音识别模型 Whistle,Cactus Compute 正在证明:“端侧 AI 根本不需要昂贵的 GPU 云服务与几百兆的冗余包袱。” 一个几十兆的小芯片,跑着纯 C++ 引擎,0.01 秒内听懂人话并直接触发硬件电路——这才是可穿戴设备、具身智能机器人与未来物联网设备的正确终局!