AI推理通常需要强大的GPU服务器,但Cactus这个开源项目正在改变这一现状。它是一个专为移动设备和可穿戴设备设计的低延迟AI引擎,让你可以在手机上直接运行大模型。目前Cactus在GitHub上已有5000+ Star,是YC S25的投资项目。
Cactus是什么
Cactus是一个移动端AI推理引擎,主要特点包括:
- 极快的推理速度:在ARM CPU上实现最快的推理性能
- 极低的内存占用:零拷贝内存映射,比其他引擎低10倍的RAM使用
- 多模态支持:一个SDK支持语音、视觉和语言模型
- 云端回退:当本地资源不足时自动路由到云端模型
- 节能:NPU加速的预填充
技术架构
Cactus由三层组成:
┌─────────────────┐
│ Cactus Engine │ ← OpenAI兼容API,支持所有主要语言
└─────────────────┘ 聊天、视觉、STT、RAG、工具调用、云端切换
│
┌─────────────────┐
│ Cactus Graph │ ← 零拷贝计算图(移动端的PyTorch)
└─────────────────┘ 自定义模型,优化RAM和量化
│
┌─────────────────┐
│ Cactus Kernels │ ← ARM SIMD内核(Apple、骁龙、Exynos等)
└─────────────────┘ 自定义注意力、KV缓存量化、分块预填充
快速开始
Mac上体验
# 安装
brew install cactus-compute/cactus/cactus
# 语音转文字
cactus transcribe
# 运行对话模型
cactus run
iOS集成
// Swift
import Cactus
let model = CactusModel(path: "path/to/model")
let response = try await model.chat(
messages: [
["role": "user", "content": "你好"]
],
maxTokens: 100
)
Android集成
// Kotlin
val model = CactusModel(context, "model_path")
val response = model.chat(
messages = listOf(
Message("user", "你好")
),
maxTokens = 100
)
支持的模型
Cactus支持多种量化格式的模型:
- 语言模型:Llama、Phi、Gemma、Qwen等
- 视觉模型:LLaVA、Phi-Vision等
- 语音模型:Whisper等语音识别模型
- 自定义模型:支持GGUF格式的自定义模型
性能表现
在不同设备上的推理速度(以Llama 3.2 3B为例):
| 设备 | 推理速度 | 内存占用 |
|---|---|---|
| iPhone 15 Pro | ~30 tokens/s | ~1.5GB |
| Pixel 8 | ~20 tokens/s | ~1.5GB |
| Samsung S24 | ~25 tokens/s | ~1.5GB |
这些数据意味着在手机上可以实现接近实时的AI对话体验。
适用场景
1. 隐私优先的AI助手
所有数据处理都在本地完成,不需要发送到云端。适合处理敏感信息的场景。
2. 离线AI功能
没有网络也能使用AI功能。适合旅行、偏远地区或网络不稳定的环境。
3. 降低API成本
对于高频使用的AI功能,本地推理可以大幅降低API调用成本。
4. 实时语音助手
结合语音识别和语言模型,可以构建低延迟的本地语音助手。
5. 移动端RAG
Cactus支持本地RAG(检索增强生成),可以在手机上构建私有的知识库问答系统。
与其他方案对比
| 方案 | 延迟 | 隐私 | 成本 | 离线 |
|---|---|---|---|---|
| Cactus | 低 | ✅ 完全本地 | 一次性 | ✅ |
| OpenAI API | 中 | ❌ 数据上云 | 按量付费 | ❌ |
| llama.cpp | 低 | ✅ 本地 | 免费 | ✅ |
| Core ML | 低 | ✅ 本地 | 免费 | ✅ |
Cactus的优势在于:专门为移动端优化,提供完整的SDK和API,支持多模态,有云端回退机制。
开源与商业
Cactus采用开源模式,核心引擎和内核都是开源的。同时提供商业版本,包含:
- 更多优化的模型格式
- 企业级支持
- 定制化服务
作为YC S25的投资项目,Cactus获得了知名孵化器的认可,这为其长期发展提供了保障。
局限性
- 模型大小限制:手机内存有限,只能运行较小的模型(3B-7B参数)
- 推理速度:虽然比其他方案快,但仍比云端API慢
- 模型选择:目前支持的模型种类比云端少
- 电池消耗:持续的AI推理会加速电池消耗
总结
Cactus为移动端AI推理提供了一个高性能的开源解决方案。如果你需要在手机上运行AI模型,无论是出于隐私、成本还是离线需求,Cactus都是一个值得尝试的选择。
随着移动设备性能的提升和模型压缩技术的进步,本地AI推理将成为越来越可行的选择。Cactus正在推动这一趋势的发展。
本文参考来源:Cactus GitHub | Hacker News讨论
© 版权声明
THE END















暂无评论内容