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 凭证。 ![H100 Gemma 4 31B 固定状态解码吞吐量](https://static.pigsec.cn/wp-content/uploads/repos/cas/00/00c805b2962d358136316f05a2fe706e66e87523dda3894a8fac1493ac54edd6.png) ## 许可证 Apache-2.0。第三方声明位于 [`LICENSES/`](LICENSES/)。
标签:CUDA, Gemma, Metal, Rust, Vectored Exception Handling, 人工智能, 可视化界面, 大模型推理, 用户模式Hook绕过, 网络流量审计, 通知系统, 高性能计算