AzeezIsh commited on
Commit
e19a44c
Β·
1 Parent(s): d7150f4

Atlas Inference org card

Browse files

- Static-SDK markdown landing page linking to atlasinference.io,
GitHub (Avarok-Cybersecurity/atlas), Docker Hub, and Discord
- Demo video (atlas-demo.mov) as hero, tracked via LFS
- Launch announcement link to X
- Tagline: Pure Rust LLM Inference.

Files changed (3) hide show
  1. .gitattributes +3 -0
  2. README.md +156 -5
  3. atlas-demo.mov +3 -0
.gitattributes CHANGED
@@ -33,3 +33,6 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ *.mov filter=lfs diff=lfs merge=lfs -text
37
+ *.mp4 filter=lfs diff=lfs merge=lfs -text
38
+ *.webm filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -1,10 +1,161 @@
1
  ---
2
- title: README
3
- emoji: 🐠
4
- colorFrom: purple
5
  colorTo: yellow
6
- sdk: docker
7
  pinned: false
 
 
8
  ---
9
 
10
- Edit this `README.md` markdown file to author your organization card.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ title: Atlas Inference
3
+ emoji: πŸš€
4
+ colorFrom: red
5
  colorTo: yellow
6
+ sdk: static
7
  pinned: false
8
+ license: agpl-3.0
9
+ short_description: Pure Rust LLM Inference.
10
  ---
11
 
12
+ <p align="center">
13
+ <video src="https://huggingface.co/spaces/Atlas-Inference/README/resolve/main/atlas-demo.mov" controls muted playsinline width="820"></video>
14
+ </p>
15
+
16
+ <p align="center">
17
+ <a href="https://x.com/AIshaqui81766/status/2052121270506930276"><strong>πŸ“£ Read the launch announcement on X β†’</strong></a>
18
+ </p>
19
+
20
+ <p align="center">
21
+ <h1 align="center">Atlas Inference</h1>
22
+ <p align="center">
23
+ <strong>Pure Rust LLM Inference.</strong>
24
+ </p>
25
+ <p align="center">
26
+ <a href="https://atlasinference.io"><img alt="Website" src="https://img.shields.io/badge/web-atlasinference.io-orange?style=flat-square"></a>
27
+ <a href="https://github.com/Avarok-Cybersecurity/atlas"><img alt="GitHub" src="https://img.shields.io/badge/source-github-181717?style=flat-square&logo=github&logoColor=white"></a>
28
+ <a href="https://hub.docker.com/r/avarok/atlas-gb10"><img alt="Docker Hub" src="https://img.shields.io/badge/Docker%20Hub-avarok%2Fatlas--gb10-2496ED?style=flat-square&logo=docker&logoColor=white"></a>
29
+ <a href="https://discord.gg/DwF3brBMpw"><img alt="Discord" src="https://img.shields.io/badge/community-discord-5865F2?style=flat-square&logo=discord&logoColor=white"></a>
30
+ <a href="https://github.com/Avarok-Cybersecurity/atlas/blob/master/LICENSE"><img alt="License: AGPLv3" src="https://img.shields.io/badge/license-AGPLv3-yellow?style=flat-square"></a>
31
+ </p>
32
+ </p>
33
+
34
+ ---
35
+
36
+ ## What is Atlas?
37
+
38
+ Atlas is a from-scratch Rust + CUDA inference engine built for the next decade of LLM deployment. No Python interpreter. No PyTorch. No 20 GB Docker image. One ~2.5 GB binary that boots in under two minutes and pins the bandwidth ceiling on every supported (Hardware Γ— Model Γ— Quantization) target.
39
+
40
+ We started on NVIDIA's DGX Spark (GB10 / SM121) with twelve hand-tuned model targets and a plug-and-play architecture designed so AMD, Intel, and Apple Silicon can land as community contributions, and so the next round of model families slot in the same way the Qwens did this quarter.
41
+
42
+ ## Why Atlas
43
+
44
+ | | Atlas | vLLM (same hardware) |
45
+ | ---------------------------- | -------------------- | -------------------- |
46
+ | Image size | **~2.5 GB** | 20+ GB |
47
+ | Cold start | **<2 min** | ~10 min |
48
+ | Runtime | **Rust + CUDA** | Python + PyTorch |
49
+ | Dependencies | **None** | 200+ packages |
50
+ | Peak Qwen3.5-35B (NVFP4) | **130 tok/s** | ~38 tok/s |
51
+ | Average across workloads | **111 tok/s (3.0Γ—)** | 37 tok/s |
52
+
53
+ Same hardware. Same model weights. Bring your own benchmark β€” `scripts/sweep_all_models.sh` is in the repo and we publish the vLLM baseline command alongside ours so you can verify both. If you reproduce a faster vLLM number, file an issue. We would rather be measured than congratulated.
54
+
55
+ ## Quick Start
56
+
57
+ ```bash
58
+ docker pull avarok/atlas-gb10:latest
59
+
60
+ docker run --gpus all --ipc=host -p 8888:8888 \
61
+ -v ~/.cache/huggingface:/root/.cache/huggingface \
62
+ avarok/atlas-gb10:latest \
63
+ serve Sehyo/Qwen3.5-35B-A3B-NVFP4 --speculative --mtp-quantization nvfp4
64
+ ```
65
+
66
+ Anything OpenAI- or Anthropic-compatible β€” `curl`, the OpenAI SDK, opencode, Claude Code, Cline, Open WebUI β€” points at port 8888:
67
+
68
+ ```bash
69
+ curl http://localhost:8888/v1/chat/completions \
70
+ -H "Content-Type: application/json" \
71
+ -d '{"model":"atlas","messages":[{"role":"user","content":"Hello!"}],"max_tokens":256}'
72
+ ```
73
+
74
+ Per-model recipes (vision, MoE, multi-node EP=2, single-GPU 122B with the tighter budget) live in [`QUICKSTART.md`](https://github.com/Avarok-Cybersecurity/atlas/blob/master/QUICKSTART.md).
75
+
76
+ ## What Ships Today
77
+
78
+ Thirteen hand-tuned (Hardware Γ— Model Γ— Quantization) targets across Qwen3 / Qwen3.5 / Qwen3.6 / Qwen3-Next / Qwen3-VL / Gemma-4 / Mistral / MiniMax / Nemotron-H families. Every supported model runs off one multi-model binary; the right kernel set is selected at startup from the model's `config.json`.
79
+
80
+ | Model | Params / active | Quant | Architecture | Throughput |
81
+ | --------------------------- | ------------------- | ----------- | ----------------------------- | --------------- |
82
+ | Qwen3.5-35B-A3B (MTP K=2) | 35B / 3B | NVFP4 | GDN + Attention + MoE | **~130 tok/s** |
83
+ | Qwen3-VL-30B-A3B | 30B / 3B | NVFP4 | Vision + Attention + MoE | ~97 tok/s |
84
+ | Nemotron-3-Nano-30B-A3B | 30B / 3.5B | NVFP4 / FP8 | Mamba-2 + Attention + MoE | ~88 tok/s |
85
+ | Qwen3-Next-80B-A3B | 80B / 3B | NVFP4 | SSM + Attention + MoE | ~74–87 tok/s |
86
+ | Qwen3.6-35B-A3B | 35B / 3B | FP8 | GDN + Attention + MoE + ViT | ~71 tok/s |
87
+ | Gemma-4-26B-A4B | 26B / 4B | NVFP4 | Attention + MoE (GeGLU) | ~67 tok/s |
88
+ | Qwen3.5-122B-A10B (EP=2) | 122B / 10B | NVFP4 | GDN + Attention + MoE | ~46 tok/s |
89
+ | Mistral-Small-4-119B | 119B / 6.5B | NVFP4 | MLA + MoE | ~33 tok/s |
90
+ | Nemotron-3-Super-120B-A12B | 120B / 12B | NVFP4 / FP8 | Mamba-2 + Attention + MoE | ~24 tok/s |
91
+ | MiniMax-M2.7 (EP=2) | 229B / ~10B | NVFP4 | Attention + 256-expert MoE | ~15 tok/s |
92
+ | Qwen3.5-27B (dense hybrid) | 27B | NVFP4 | Hybrid SSM + Attention | ~13 tok/s |
93
+ | Gemma-4-31B | 31B | NVFP4 | Attention (sliding + full) | ~9–11 tok/s |
94
+
95
+ Full HuggingFace IDs, methodology, and the kernel-by-kernel comparison against PyTorch eager live in the [GitHub README](https://github.com/Avarok-Cybersecurity/atlas#readme).
96
+
97
+ ## What Works Today
98
+
99
+ | Component | Status |
100
+ |---|---|
101
+ | OpenAI- and Anthropic-compatible HTTP API (streaming + non-streaming) | βœ… |
102
+ | Tool calling (Hermes, Qwen3-Coder, Mistral formats) with grammar-constrained decoding | βœ… |
103
+ | Reasoning / thinking tokens with budget cap | βœ… |
104
+ | Concurrent batched decode + per-batch CUDA graphs | βœ… |
105
+ | MTP speculative decoding (K=2, pipelined verify) | βœ… |
106
+ | Prefix caching via radix tree (RadixAttention) + SSM snapshot cache (Marconi) β€” 10Γ— warm-cache TTFT | βœ… |
107
+ | KV cache dtypes β€” BF16, FP8, NVFP4, turbo3, turbo4 | βœ… |
108
+ | MoE routing up to 512 experts | βœ… |
109
+ | Vision encoder (Qwen3-VL, Qwen3.6 ViT) | βœ… |
110
+ | Multi-GPU expert parallelism (EP=2 over RoCEv2) | βœ… |
111
+ | SLO-aware scheduling, chunked prefill, active context compaction | βœ… |
112
+ | High-speed NVMe KV swap (sliding-window aware) | βœ… |
113
+ | Auto OOM pre-flight + UVM fallback on host OOM | βœ… |
114
+
115
+ ## Plug & Play Architecture
116
+
117
+ Atlas is built around a small set of Rust traits and a kernel registry β€” each marked with πŸ”Œ below is the abstraction boundary where a new integration plugs in without touching anything above or below it:
118
+
119
+ | Plug Point | What It Abstracts | To Add Support |
120
+ |---|---|---|
121
+ | πŸ”Œ `trait ModelWeightLoader` | HuggingFace β†’ layer translation | Implement one struct + add a match arm in `factory.rs` |
122
+ | πŸ”Œ `trait TransformerLayer` | Per-layer compute (attn, SSM, MoE, FFN) | Compose existing primitives or implement a new layer type |
123
+ | πŸ”Œ `trait GpuBackend` | All GPU memory and kernel ops | Swap CUDA for another accelerator backend |
124
+ | πŸ”Œ `kernels/<hw>/<model>/<quant>/` | Hardware-tuned CUDA kernels | Drop a directory with `MODEL.toml` + `.cu` files; `build.rs` auto-discovers it |
125
+ | πŸ”Œ `trait CommBackend` | Multi-GPU collectives | Implement for MPI, GDR, custom interconnects |
126
+ | πŸ”Œ `trait StorageBackend` | NVMe KV-cache offload I/O | Implement for CXL, RDMA, other storage tiers |
127
+
128
+ A `MockGpuBackend` in `spark-runtime` lets you write and test the entire scaffold without owning the hardware β€” every layer above the GPU trait is hardware-agnostic.
129
+
130
+ ## What the Community is Saying
131
+
132
+ > *"103 tok/s sustained on the 35B, startup in 15 seconds. Night and day compared to vLLM's 10-minute torch.compile cycle. Then tried the 122B, 43.8 tok/s with MTP, a 41% speedup over our vLLM hybrid, same hardware, 2-minute startup."*
133
+ > β€” **ronald_15496**, [Discord #general](https://discord.gg/DwF3brBMpw)
134
+
135
+ > *"Testing atlas-qwen3.5-35b for over an hour on a PNY DGX Spark in an agentic workflow. Super impressed. Spark is actually awesome with Atlas."*
136
+ > β€” **PersonWhoThinks**, [r/LocalLLaMA](https://www.reddit.com/r/LocalLLaMA/comments/1rmvxo3/)
137
+
138
+ > *"I've grown tired of vLLM and have been hoping for something. I was really surprised and impressed. I'm so glad I bought Spark because I came across this."*
139
+ > β€” **tetsuro59**, [Discord #general](https://discord.gg/DwF3brBMpw)
140
+
141
+ ## Citations
142
+
143
+ We did not invent the kernels we ship. We picked the right ideas from the right papers, fused them together, and tuned them for one chip until they pinned the bandwidth ceiling. Direct intellectual debts: **FlashAttention-2** (Dao, 2024), **FlashAttention-4** (Shah et al., 2025), **FlashInfer** (Ye et al., MLSys 2025), **SageAttention 3** (Zhang et al., NeurIPS 2025), **LeanAttention** (Roy et al., 2024). Full references in the [GitHub README](https://github.com/Avarok-Cybersecurity/atlas#citations).
144
+
145
+ ## License & Enterprise Edition
146
+
147
+ Atlas operates under a **dual-license** model. Both are real and intentional.
148
+
149
+ 1. **Community Edition β€” AGPLv3.** Free, open, copyleft. Use it on your own hardware for research, hobby, side-projects, hosted demos.
150
+ 2. **Enterprise Edition β€” commercial license.** Ship Atlas inside a closed-source product, run it as a SaaS backend without inheriting the AGPLv3 source-disclosure obligation, get a support relationship with the people who wrote the kernels, and prioritized model and hardware ports. Reach us via the [website](https://atlasinference.io) or Discord.
151
+
152
+ A permissive license keeps us building Atlas full-time; the AGPL community license keeps the project honest. What is in this repository is what we run.
153
+
154
+ ---
155
+
156
+ <p align="center">
157
+ <a href="https://atlasinference.io">atlasinference.io</a> Β·
158
+ <a href="https://github.com/Avarok-Cybersecurity/atlas">GitHub</a> Β·
159
+ <a href="https://hub.docker.com/r/avarok/atlas-gb10">Docker Hub</a> Β·
160
+ <a href="https://discord.gg/DwF3brBMpw">Discord</a>
161
+ </p>
atlas-demo.mov ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:edcd4a7da124c271cd13e33e5656a7df32805834ed1b81ae2086248aeee08f13
3
+ size 20198132