#4949th of 57 in Model serving

cactus

On-device LLM, vision and speech inference engine for phones and wearables

Stars
6.2k
License
custom license
Last commit
Sep 2026
Last release
Sep 2026
Language
C++
Stars, last 30 weeks+1,664
3 Apr 2026: 4,507 stars10 Apr 2026: 4,553 stars17 Apr 2026: 4,595 stars24 Apr 2026: 4,625 stars1 May 2026: 4,641 stars8 May 2026: 4,660 stars15 May 2026: 4,870 stars22 May 2026: 5,136 stars29 May 2026: 5,196 stars5 Jun 2026: 5,246 stars12 Jun 2026: 5,282 stars19 Jun 2026: 5,296 stars26 Jun 2026: 5,313 stars3 Jul 2026: 5,327 stars10 Jul 2026: 5,353 stars17 Jul 2026: 5,458 stars24 Jul 2026: 5,492 stars31 Jul 2026: 5,512 stars7 Aug 2026: 5,527 stars14 Aug 2026: 5,725 stars21 Aug 2026: 5,849 stars28 Aug 2026: 5,923 stars4 Sept 2026: 5,956 stars11 Sept 2026: 5,978 stars18 Sept 2026: 6,006 stars25 Sept 2026: 6,046 stars2 Oct 2026: 6,073 stars9 Oct 2026: 6,105 stars16 Oct 2026: 6,122 stars23 Oct 2026: 6,153 stars30 Oct 2026: 6,171 stars

4,507 on 3 Apr 20266,171 on 30 Oct 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

Cactus is a C++ inference engine with its own computation graph, ARM/Apple/Android kernels and rotation-based quantization (CQ, 1 to 4 bits). It runs text, vision and speech models on phones, Macs and wearables, and can hand low-confidence queries off to a cloud model. It ships a CLI with an OpenAI-compatible local server (default port 8080) and bindings for Swift, Kotlin, Flutter, React Native, Python and Rust.

Who it is for: Mobile and edge developers embedding local LLM, vision and speech models in apps

Strengths

  • Published benchmarks per device, e.g. Gemma-4-E2B-CQ4 decodes 37 tok/s on iPhone 17 Pro
  • Bindings for Swift, Kotlin, Flutter, React Native, Python and Rust for mobile apps
  • Quantization accuracy tables across bit widths (CQ4 close to F16 on most listed tasks)
  • Confidence-based cloud handoff for hard queries, configurable threshold and timeout

Weaknesses

  • License is reported as NOASSERTION; terms need checking before commercial use
  • Converting arbitrary HuggingFace models is labelled experimental
  • Only Liquid, Gemma, Whisper, Parakeet and Qwen families are described as well tested
  • Benchmarks cover Apple devices only; no Android or Linux numbers in the README

What it needs

  • GPU optional
  • Needs HuggingFace (model download/convert), cmake and build-essential (Linux build), Python 3.12 (setup/CLI)
  • Models: Gemma, Liquid LFM, Qwen, Whisper, Parakeet
  • port 8080

Quick answers

Is cactus open source?

Its code is public on GitHub under its own license terms; read them before you use it at work.

Does cactus need a GPU?

No. It runs on a CPU and can use a GPU when you have one.

Also in Model serving

See all 57
Also in Model serving
RankProjectScore
1llama.cppC/C++ inference engine serving GGUF models over an OpenAI-compatible API133k starsMIT93 out of 100
2OllamaLocal model runner with CLI and REST API for open-weight LLMs185.5k starsMIT91 out of 100
3LocalAISelf-hosted inference server with OpenAI-compatible API and pluggable backends50.1k starsMIT90 out of 100
#4vLLMInference engine for Hugging Face LLMs with PagedAttention and continuous batching96k starsApache-2.088 out of 100
#5colibriC inference engine that streams MoE experts from disk to run huge models45.5k starsApache-2.085 out of 100