solidsf-inc/rvLLM
GitHub: solidsf-inc/rvLLM
rvLLM 是一个纯 Rust 实现的 Gemma 4 模型推理与服务引擎,支持 CUDA、Metal 等多后端加速,提供 OpenAI 兼容的 API 接口。
Stars: 4 | Forks: 0
# rvLLM
在 Rust 中进行 Gemma 4 推理。
rvLLM 将模型加载、调度、KV-cache 管理、采样和服务保留在原生代码中。此版本包含 CUDA runtime 和服务器,以及 Metal、vision 和 XLA/TPU 相关工作,其特定目标的验证状态如下所述。
## 发布边界
| 后端 | 状态 |
| --- | --- |
| NVIDIA CUDA | H100 / sm_90 已通过不可变 v0.3.0 kernel bundle 验证。不保证其他目标。 |
| Apple Metal | 后端源码位于 `metal` 分支;本版本不保证端到端生成和一致性。 |
| Vision | 包含集成源码;本版本不保证端到端的 Gemma 4 vision。 |
| XLA/TPU | 仅包含实验性的 operator 和 conformance 工作;本版本未提供 TPU 服务器。 |
所需的加速器 artifacts 会显式加载。缺失或不兼容的 kernel 将被视为错误,而不会静默回退。
## 构建
```
git submodule update --init --recursive
cargo build --release --locked --manifest-path v3/Cargo.toml -p rvllm-serve
```
CUDA:
```
# 首先构建 kernels/README.md 中所述的 target-specific artifacts。
cargo build --release --locked --manifest-path v3/Cargo.toml \
-p rvllm-serve --features cuda,cublaslt
```
Apple Silicon:
```
cargo build --release --locked --manifest-path v3/Cargo.toml \
-p rvllm-serve --features metal
```
运行 `rvllm-server --help` 以查看模型、kernel、身份验证和后端设置:
```
./v3/target/release/rvllm-server --help
```
服务器绑定到 loopback 并公开:
- `GET /health`
- `GET /status`
- `GET /metrics`
- `GET /v1/models`
- `POST /v1/completions`
- `POST /v1/chat/completions`
生成是非流式的;带有 `stream=true` 或 `stop` 的请求将被拒绝。
请使用受信任的反向代理进行远程访问。设置 `RVLLM_API_KEY` 以要求进行 bearer 身份验证。
## 验证
```
cargo fmt --manifest-path v3/Cargo.toml --all -- --check
cargo test --locked --manifest-path v3/Cargo.toml --workspace --no-default-features
```
加速器声明需要在所宣称的硬件上进行 runtime 加载、数值一致性以及边缘情况测试。仅编译成功并不代表通过。
在 CUDA 主机上,直接验证 context 和 HBM-copy 生命周期:
```
RVLLM_RUN_CUDA_CONTEXT_SMOKE=1 cargo test --locked --manifest-path v3/Cargo.toml \
-p rvllm-mem --features cuda --test cuda_context_smoke -- --ignored
```
## 布局
- `v3/crates/` — Rust runtime、服务器、loader、scheduler、采样、vision 和后端
- `v3/kernels/` — runtime CUDA kernel
- `kernels/` — 加速器构建和 artifact 工具
- `tpu/` — 实验性 XLA/TPU operator 工作
- `tests/` — API 和一致性检查
- `docs/` — 架构和测量结果方法论
## 基准测试
[`docs/bench.html`](docs/bench.html) 报告了来自确切的 v0.3.0 kernel ZIP 的 30 样本 H100 扫描,并保留了项目报告的 TPU 快照及其来源限制。H100 结果绑定了源码、模型版本、archive、kernel manifest、策略、原始样本、runtime ABI、服务器冒烟测试和 sanitizer 凭证。

## 许可证
Apache-2.0。第三方声明位于 [`LICENSES/`](LICENSES/)。
标签:CUDA, Gemma, Metal, Rust, Vectored Exception Handling, 人工智能, 可视化界面, 大模型推理, 用户模式Hook绕过, 网络流量审计, 通知系统, 高性能计算