这个项目能做什么

# Cactus Cactus 是一款专为移动设备和可穿戴设备设计的混合边缘-云端 AI 引擎。它提供了一套完整的端侧 AI 推理技术栈,包括量化、内核、计算图和运行时引擎。 ## 架构 该项目分为四个主要层次: - **Cactus Engine**:提供兼容 OpenAI 的 API,用于文本、语音和视觉任务,包括聊天补全、流式传输、工具调用、转录、嵌入、RAG 和云端交接。 - **Cactus Graph**:一个零拷贝计算图,用于矩阵乘法、注意力、归一化和激活函数等张量运算。 - **Cactus Kernels**:针对 Apple、Samsung、Pixel 及其他移动平台优化的 CPU/GPU 内核,使用 ARM NEON SIMD。 - **Cactus Quants**:一种自定义的基于旋转的量化技术,支持 4 位到 1 位精度。 ## 快速开始(Mac) 通过 Homebrew 安装并运行: ```bash brew install cactus-compute/cactus/cactus cactus run ``` ## 主要特性 - **混合边缘-云端**:根据本地模型的置信度,自动将困难查询路由到云端。 - **模型支持**:支持 Liquid、Gemma、Whisper、Parakeet 和 Qwen 模型系列。任何 HuggingFace 模型都可以通过实验性方式转换。 - **多种绑定**:Swift、Kotlin、Flutter、React Native、Python 和 Rust。 - **端侧工具调用**:包含一个名为 "Needle" 的 2600 万参数模型,用于端侧工具调用。 - **CLI 工具**:提供用于运行模型、转录、服务、转换、基准测试和测试的命令。 ## 性能 基准测试显示,在 Apple 芯片和移动设备上具有强劲的性能。例如,在 Mac M5 Max 上,对于 1k 上下文的 LLM 基准测试,该引擎实现了 2964 tokens/秒的预填充和 154 tokens/秒的解码。在 iPhone 17 Pro 上,它实现了 729 tokens/秒的预填充和 37 tokens/秒的解码。 ## 输出质量 量化质量在多个基准测试(ARC、HellaSwag、WinoGrande、MMLU、GPQA、GSM8K、HumanEval、BFCL)中进行评估。CQ4 量化在大多数任务上保持了接近原始 FP16 模型的质量。 ## 用法 CLI 提供以下命令: - `cactus run`:运行模型,可选参数量化位数、后端、图像/音频输入、工具等。 - `cactus transcribe`:实时麦克风转录或文件转录。 - `cactus download`:下载预构建的模型包。 - `cactus convert`:将 HuggingFace 模型转换为 Cactus CQ 权重。 - `cactus serve`:启动兼容 OpenAI 的本地 HTTP 服务器。 - `cactus code`:运行 AI 编码代理。 - `cactus benchmark`:运行基准测试套件。 - `cactus test`:运行测试套件。 ## 文档 每个组件都有详细的文档: - Cactus Engine(C API) - Cactus Graph(C++) - Cactus Kernels(C++) - Cactus Quants(C++) - Cactus Hybrid(C/Python) - Python 包 ## 引用 如果您在研究中使用 Cactus,请引用: ```bibtex @software{cactus, title = {Cactus: AI Inference Engine for Phones & Wearables}, author = {Ndubuaku, Henry and Cactus Team}, url = {https://github.com/cactus-compute/cactus}, year = {2025} } ```