baseRT
Library New
Safe Rust bindings for the BaseRT LLM inference engine (Apple Silicon)
- Downloads
- 49
- Dependents
- 2
- Stars
- 247
- Forks
- 21
- Contributors
- 2
- Commits
- 78
- Latest release
- 0.4.6 ·
About
Fastest LLM inference on Apple Silicon — now on NVIDIA GB10 (DGX Spark), too.
Pull a model from HuggingFace, chat with it, or serve an OpenAI-compatible API — all from one CLI.
BaseRT runs large language models locally on Apple Silicon (Metal) and NVIDIA
GB10 / DGX Spark (CUDA), accelerated by hand-written GPU kernels. This repository
is the open ecosystem around the engine: the basert CLI (model hub +
converter), the .base model format, the public C API, and language bindings for
Python, Node, Rust, and Swift.
- One CLI for everything —
basert pull,chat,serve,convert. - OpenAI-compatible server — chat, completions, embeddings, transcription, tool calls, continuous batching, paged-KV, and prefix caching.
- Multimodal — text, vision, and audio on supported models.
- Its own
.baseformat — affine quantization (Q2–Q8), optional AWQ calibration, and signed bundles. - Bindings everywhere — Python, Node, Rust, and Swift over a stable C API.
- A drop-in coding-agent backend — see below.
Documentation: docs.basecompute.co (source in
docs/).
Requirements
One of:
- Apple Silicon (M1 or later), macOS 14+.
- NVIDIA GB10 (DGX Spark), Linux / arm64 with a CUDA driver.
Read the full README
Quickstart
1. Install
curl -LsSf https://basecompute.co/install.sh | sh
This installs the prebuilt engine for your platform and the basert CLI to
~/.basert and adds it to your PATH. Restart your shell afterward (or
export PATH="$HOME/.basert:$PATH"). See
Installation for building from source.
2. Pull a model
basert pull Qwen/Qwen3-4B # download from HuggingFace + convert to .base
basert list # show installed models
Models are cached under ~/.cache/baseRT/models (override with
$BASERT_MODELS_DIR). To pick a specific quant build, append :default-q8 to
the id (or pass --variant default-q8).
3. Chat
basert chat Qwen/Qwen3-4B
4. Serve an OpenAI-compatible API
basert serve Qwen/Qwen3-4B --api-key "$(uuidgen)" --port 8080
curl http://127.0.0.1:8080/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" -H "Content-Type: application/json" \
-d '{"model":"Qwen/Qwen3-4B","messages":[{"role":"user","content":"Hello!"}]}'
5. Or call it from your language
import baseRT
model = baseRT.Model("models/your-model.base")
print(model.generate_text("The capital of France is", max_tokens=64))
Node, Rust, and Swift bindings work the same way — see Bindings.
Use it as a coding agent
BaseRT runs as a local backend for the pi coding agent through the pi-basert extension, which auto-discovers whatever models your server is running.
# 1. Serve a model (a dense model is best for tool calling)
basert serve basecompute/gemma-4-E2B-it
# 2. Install the extension and launch pi
pi install git:github.com/basecompute/pi-basert
pi
Inside pi, run /model to pick a served model. See the
pi-basert README for details.
The basert CLI
basert is a single front-end. Model-management commands run natively; runtime
commands are forwarded to the matching basert-<cmd> engine binary.
| Command | What it does |
|---|---|
basert pull <id> | Download from HuggingFace (convert-on-pull) or the catalog |
basert list | List installed models (--remote to include the catalog) |
basert convert <src> | Convert a local GGUF / HF / MLX checkpoint to .base |
basert chat <model> | Interactive chat |
basert serve <model> | OpenAI-compatible HTTP server (--model repeats for multi-model) |
basert complete <model> | One-shot completion (text / image / audio) |
basert bench <model> | Throughput benchmark |
basert inspect <model> | Dump a .base header + tensor inventory |
basert sign / verify / keygen | ed25519 signing of .base bundles |
Full flag reference: CLI reference.
What's in this repo
| Path | Contents |
|---|---|
base-convert/ | The basert CLI (Rust): model hub, converter, launcher — plus the .base format and quantization specs and the generic quant profiles. |
include/baseRT/ | The stable public C API (baseRT.h, types.h). |
bindings/ | Python, Node, Rust, and Swift. |
benchmarks/ | Scripts and reference results. |
docs/ | The documentation site. |
This repository — the CLI, .base format, public headers, and bindings — is
licensed under Apache-2.0. The engine ships as a separate prebuilt binary
under its own license; see
Engine releases.
Links
License
Apache-2.0 — see LICENSE and NOTICE. The prebuilt engine
binary distributed via Releases
is proprietary and ships under its own license.
Compatibility
- Runs on
- GPU support unknown
What shows it
- no dependency or feature matches a backend row
- Native code
- Required
- Binds native code: baseRT, baseRT-sys
- Python bindings
- No Python binding crate found
- License
- Apache-2.0
Compare with similar projects
Order: strongest tier first, then most downloads, then name, with unmeasured values last. A library counts downloads over 30 days. An app counts binary downloads per release. An app with none counts its crate downloads over 30 days. ML Rust runs this catalogue, so its closest project always gets a row.
| Project | Downloads | Dependents | Stars | Latest release | Runs on (GPU) | Native code | License |
|---|---|---|---|---|---|---|---|
|
Safe Rust bindings for the BaseRT LLM inference engine (Apple Silicon) |
49 downloads over 30 days | 2 | 247 | 0.4.6 | GPU support unknown | Binds native code: baseRT, baseRT-sys | Apache-2.0 |
|
ort Featured
A safe Rust wrapper for ONNX Runtime 1.31 - Optimize and accelerate machine learning inference & training Also in Run and serve models. |
3,902,768 downloads over 30 days | 694 | 2,611 | 2.0.0-rc.15 | CUDA, WebGPU, ROCm | Binds native code: onnxruntime, ort-sys. Build uses a native toolchain: pkg-config (feature pkg-config) | Apache-2.0 OR MIT |
|
llama-gguf Listed
A high-performance Rust implementation of llama.cpp - LLM inference engine with full GGUF support Also in Build LLM apps and agents. |
1,787 downloads over 30 days | 3 | 21 | 0.14.0 | CUDA, Metal, Vulkan | Binds native code: hailort-sys (feature hailo), libsqlite3-sys (feature rag-sqlite) | Apache-2.0 OR MIT |
|
A rust mlx server, ui, and model router for fast, dependency free inference on apple architecture Also in Build LLM apps and agents. |
23 binary downloads per release | Not applicable | 34 | Not measured | Not measured | MIT | |
|
pmetal Listed
High-performance LLM fine-tuning framework for Apple Silicon Python bindings Also in Run and serve models. |
13 downloads over 30 days | 0 | 332 | 0.7.0 | Metal | Binds native code: pmetal_bridge, pmetal_runtime, mach-sys, pmetal-mlx-sys. Build uses a native toolchain: cc, cmake | Apache-2.0 OR MIT |
|
Inference server for LLMs, speech and embeddings: OpenAI-compatible routes with streaming, plus speech synthesis (TTS) and transcription (ASR). Serves Llama, Mistral, Qwen, Mamba2, MLA+MoE and hybrid models from SafeTensors, AWQ, GPTQ and GGUF. Also in Build LLM apps and agents. |
8 binary downloads per release | Not applicable | 7 | 0.7.1 | CUDA, WebGPU | Binds native code: ring (feature distributed) | Apache-2.0 |
|
oxibonsai Listed
Pure Rust 1-bit LLM inference engine for PrismML Bonsai models — umbrella crate Also in Build LLM apps and agents. |
1 downloads over 30 days | 0 | 137 | 0.2.3 | CUDA, Metal | No native code found | Apache-2.0 |
All projects in Build LLM apps and agentsAll projects in Run and serve models
Why NewIts first release on 8 Oct 2026 is under 180 days old.
The check tests the Featured gates once the first release passes this age limit.
What else the check found
- The last activity is on 6 Nov 2026, 3 days ago. The rules expect an update within 365 days. Dormancy rule
Check notes
- the repo manifest bindings/rust/baseRT/Cargo.toml declares the crate, and no release commit proves the link
Exact rules: New. The check on applied thresholds version 9.
Every rule outcome, as the check records it
expected-interval: version 0.4.6 base 450, capped at 5 releases = 250, raised to the 365-day floor: E = 365 daysdormancy: last activity 2026-11-06, 3 days ago, E = 365: activenew: new: first release 2026-10-08 is under 180 days old
Crates10 crates
Measurements and sources
Each signal row shows the raw value, its source and the fetch date. The Sources list gathers every distinct source on this page. Movement needs more history.
Sources6 sources
- Description: the crates.io description
- crates.io database dump, fetched
- RustSec advisory database, fetched
- GitHub repository, fetched
- repo manifest, fetched
- GitHub contributors, fetched
Adoption0 active dependents, 0 new dependents in 365 days1 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Active dependents | 0 | crates.io database dump | Yes | |
| New dependents (365 days) | 0 | crates.io database dump | Yes | |
| Peak active dependents | 0 | crates.io database dump | Yes | |
| Active dependents as a share of the peak | 1 | crates.io database dump | Yes | |
| Binary downloads per release | Not measured | Yes |
MaintenanceLatest human commit: 3 days ago3 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Latest human commit | 2026-11-06 | GitHub repository | Yes | |
| Latest release | 2026-11-06 | crates.io database dump | Yes | |
| First release | 2026-10-08 | crates.io database dump | Yes | |
| Latest version | 0.4.6 | crates.io database dump | Yes | |
| Days the oldest outside issue waits for a reply | 129 | GitHub repository | Yes | |
| Maintainer replies over 365 days | 0 | GitHub repository | Yes | |
| Repository archived | false | GitHub repository | Yes | |
| Repository gone | false | GitHub repository | Yes | |
| Release commit or manifest in the repo | true | repo manifest | Yes | |
| Published docs | true | crates.io database dump | Yes | |
| Latest release fails cargo check | Not measured | Yes | ||
| Build check date | Not measured | Yes | ||
| Build check toolchain | Not measured | Yes |
SecurityUnpatched vulnerabilities: none
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Unpatched vulnerabilities past the grace window | none | RustSec advisory database | Yes | |
| RustSec unmaintained advisory | none | RustSec advisory database | Yes | |
| Deprecation notice | none | crates.io database dump | Yes | |
| Deprecated requirement | none | crates.io database dump | Yes |
Distribution5 releases, 49 downloads over 30 days5 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Releases | 5 | crates.io database dump | Yes | |
| Downloads over 30 days | 49 | crates.io database dump | Yes | |
| Binary downloads over the last 3 releases | Not measured | Yes | ||
| Homebrew installs on request over 365 days | Not measured | Yes | ||
| Repology repository families | Not measured | Yes | ||
| Docker pull growth over 90 days | Not measured | Yes | ||
| Docker pulls at the growth baseline | Not measured | Yes | ||
| Every version a prerelease | false | crates.io database dump | Yes | |
| Every version 0.0.x | false | crates.io database dump | Yes | |
| Every version yanked | false | crates.io database dump | Yes | |
| Crate deleted from crates.io | false | crates.io database dump | Yes |
Repository247 stars, 21 forks, 2 contributors, 78 commits. Stars alone never qualify a project.
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| GitHub stars | 247 | GitHub repository | Yes — one part of the repository route | |
| GitHub forks | 21 | GitHub repository | Yes — one part of the repository route | |
| Contributors with a GitHub account | 2 | GitHub contributors | Yes — one part of the repository route | |
| Commits on the default branch | 78 | GitHub repository | No | |
| Repository's main crate left out of the entry | none | crates.io database dump | Yes |
Facts that never count
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| License | Apache-2.0 | crates.io database dump | No | |
| Runs on, from listed crates and their direct dependencies | GPU support unknown | crates.io database dump | No | |
| What shows each backend | no dependency or feature matches a backend row | crates.io database dump | No | |
| Native code, from listed crates and their dependencies | Binds native code: baseRT, baseRT-sys | crates.io database dump | No | |
| Python bindings, from direct dependencies of listed crates | No Python binding crate found | crates.io database dump | No | |
| Crates that depend on a listed crate directly | 2 | crates.io database dump | No |
Corrections and review history
No correction applies to this entry.
Judgments
A judgment enters only through an approved issue and a merged pull request.
No judgment applies to this entry.