cactus

cactus:它是什么、解决了什么问题以及为何受到关注

它解决了什么

Cactus 是一种混合边缘‑云 AI 引擎,旨在实现移动设备和可穿戴设备上快速、低内存的 AI 推理。它通过优化内存使用和计算速度,解决了基于 ARM 的硬件限制,同时在面对复杂查询时能够无缝回退到云模型。

工作原理

Cactus 使用一套专门的组件栈来优化设备端性能:

  • Cactus Kernels:用于矩阵乘法和 attention 等操作的高性能 ARM SIMD 内核。
  • Cactus Graph:零拷贝计算图,与其他引擎相比可将 RAM 使用量降低至 1/10。
  • Cactus Quants:一种量化方法(4 位到 1 位),其中 4 位均匀量化的精度可匹配 f16。
  • Cactus Transpiler:将 PyTorch 模型转换为 Cactus 运行时图的工具。
  • Hybrid Routing:当本地模型置信度低于特定阈值时,自动将请求路由到云端。

适用人群

  • 移动和可穿戴开发者:构建需要在设备上运行 AI(文本、视觉、语音)的应用,要求 RAM 最小、速度极快。
  • AI 研究者:需要一种高效方式将 PyTorch 模型部署到 ARM 设备上。

亮点

  • 多模态支持:单一引擎兼容语言、视觉和语音模型。
  • Cactus Quants:保持 f16 精度的 4 位量化。
  • 零拷贝内存:显著降低移动设备的 RAM 开销。
  • 云回退:基于置信度阈值自动路由到云模型。
  • OpenAI 兼容 API:本地 HTTP 服务器,便于集成。
  • 广泛设备支持:针对 Apple、Samsung、Pixel 设备进行优化,提供 Swift、Kotlin、Flutter、React Native、Python 和 Rust 绑定。

Sources