henryNdubuaku commited on
Commit
098a280
·
verified ·
1 Parent(s): 1a028f5

Document Cactus runtime downloads and supported platforms

Browse files
Files changed (1) hide show
  1. README.md +70 -0
README.md ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ tags:
4
+ - on-device
5
+ - inference
6
+ - webassembly
7
+ ---
8
+
9
+ # Cactus runtime
10
+
11
+ Prebuilt runtime binaries for [Needle 3](https://cactuscompute.com/needle), [Whistle](https://cactuscompute.com/blog/whistle) and [Mirage](https://huggingface.co/Cactus-Compute/mirage).
12
+ One engine runs text, speech and vision locally. Model weights live in their own repositories.
13
+
14
+ ## Get started
15
+
16
+ ```sh
17
+ pip install -U cactus-compute
18
+ ```
19
+
20
+ Use `import cactus` in Python. The package downloads the matching engine and model weights on first use.
21
+ See the [Python API](https://cactuscompute.com/blog/needle-python-docs) and [source code](https://github.com/cactus-compute/cactus).
22
+
23
+ To download a native runner with a model, choose a platform from the table below.
24
+
25
+ ```sh
26
+ cactus download macos-arm64 --model whistle --out ./runtime
27
+ ./runtime/macos-arm64/cactus --model ./runtime/macos-arm64/whistle.cact --audio clip.wav
28
+ ```
29
+
30
+ Use `--model needle3` or `--model mirage` for the other models. Omit `--model` to download binaries alone.
31
+
32
+ ## Supported platforms
33
+
34
+ Release **4.0.0** has 17 target folders under [`releases/4.0.0`](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0).
35
+ Native runners load `.cact` weights at runtime. Static libraries include `cactus.h` for C and C++ applications.
36
+
37
+ | Target | Folder | Files |
38
+ | --- | --- | --- |
39
+ | macOS Apple Silicon | [macos-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/macos-arm64) | `cactus`, `libcactus.a`, `cactus.h` |
40
+ | Linux x86-64 | [linux-x86_64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/linux-x86_64) | `cactus`, `libcactus.a`, `cactus.h` |
41
+ | Linux ARM64 | [linux-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/linux-arm64) | `cactus`, `libcactus.a`, `cactus.h` |
42
+ | Linux ARMv7 | [linux-armv7](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/linux-armv7) | `cactus`, `libcactus.a`, `cactus.h` |
43
+ | Linux RISC-V | [linux-riscv64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/linux-riscv64) | `cactus`, `libcactus.a`, `cactus.h` |
44
+ | Linux MIPS32el | [linux-mipsel](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/linux-mipsel) | `cactus`, `libcactus.a`, `cactus.h` |
45
+ | Windows x64 | [windows-x86_64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/windows-x86_64) | `cactus.exe`, `libcactus.a`, `cactus.h` |
46
+ | Windows ARM64 | [windows-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/windows-arm64) | `cactus.exe`, `libcactus.a`, `cactus.h` |
47
+ | Android ARM64 | [android-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/android-arm64) | `cactus`, `libcactus.a`, `cactus.h` |
48
+ | Android ARMv7 | [android-armv7](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/android-armv7) | `cactus`, `libcactus.a`, `cactus.h` |
49
+ | Android RISC-V | [android-riscv64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/android-riscv64) | `cactus`, `libcactus.a`, `cactus.h` |
50
+ | iOS ARM64 | [ios-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/ios-arm64) | `libcactus.a`, `cactus.h` |
51
+ | iOS Simulator ARM64 | [ios-sim-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/ios-sim-arm64) | `libcactus.a`, `cactus.h` |
52
+ | tvOS ARM64 | [tvos-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/tvos-arm64) | `libcactus.a`, `cactus.h` |
53
+ | watchOS ARM64 | [watchos-arm64](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/watchos-arm64) | `libcactus.a`, `cactus.h` |
54
+ | Browser and Node.js | [wasm](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/wasm) | `cactus.js`, `cactus.wasm`, `cactus.h` |
55
+ | WASI Preview 2 | [wasm-component](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/wasm-component) | `cactus.component.wasm`, `cactus.wit` |
56
+
57
+ The [Python runtime wheels](https://huggingface.co/Cactus-Compute/cactus/tree/main/releases/4.0.0/python) cover macOS ARM64 and x86-64, Linux ARM64 and x86-64 with glibc or musl, and Windows ARM64 and x64. These contain the shared library. Install `cactus-compute` from PyPI to use them through the Python API.
58
+
59
+ The WASI component exports `cactus:runtime/engine@4.0.0`. It is also available as the signed OCI artifact `ghcr.io/cactus-compute/cactus-runtime-component:4.0.0`.
60
+
61
+ ## Weights and releases
62
+
63
+ - [Needle 3 weights](https://huggingface.co/Cactus-Compute/needle3)
64
+ - [Whistle weights](https://huggingface.co/Cactus-Compute/whistle)
65
+ - [Mirage weights](https://huggingface.co/Cactus-Compute/mirage)
66
+
67
+ Release artifacts have SHA-256 checksums in the [manifest](https://huggingface.co/Cactus-Compute/cactus/blob/1a028f5a3972b67dd8d8752f882113d475e7ec4c/releases/4.0.0/manifest.json).
68
+ For reproducible downloads, use revision `1a028f5a3972b67dd8d8752f882113d475e7ec4c` or tag `v4.0.0` and paths under `releases/4.0.0/`.
69
+
70
+ See the [deployment guide](https://cactuscompute.com/blog/needle-supported-devices) for native integration, browser use and offline setup.