众力资讯网

OpenInfer 0.1.0:用 Rust 编写生产级推理引擎地址:opene

OpenInfer 0.1.0:用 Rust 编写生产级推理引擎地址:openedinfer.com/blog/openinfer-010/

代码:github.com/openinfer-project/openinfer

"上一篇文章《从零开始编写一个 Rust 推理引擎》于 2026 年 2 月 17 日发布,距今已经过去了 116 天。回过头来看,用 Rust 编写推理引擎究竟带来了哪些收益,又经历了哪些困难?Pegainfer 现在的状态如何?

当时我写 Pegainfer 的时候(这个名字来自我更早的一个项目 Pegaflow,它是一个用于 vLLM 的 KV cache 卸载系统;详情可见 vLLM 博客)——它们都叫 pega,来源于希腊语 Pegasus(飞马座),这也是 logo 的来源:我们希望以飞马般的速度提供推理服务。最初的出发点其实非常简单:我喜欢 Rust,也喜欢研究推理技术,不喜欢当前 Python 生态那种臃肿的感觉,而且在实际生产中也踩过不少与 Python 相关的坑。

于是,“用 Rust 写一个自己的推理引擎”这个想法就出现了。之后越写,越发现其中有很多有趣的点。无论是写 kernel,还是设计一些模块,都极大地满足了我的好奇心。一开始,它仍然是一个带有“刻意留白”的东西(最初我只是想把它用于教学):它一次只能处理一个请求,没有 sampler,没有 prefix cache,没有 scheduler,没有 CUDA Graph,kernel 也没有做太多调优。在 5070ti 上运行 Qwen3-4B,大约是 70 tokens/s,精度与 HuggingFace 对齐。

半年过去了:sampling、prefix cache、continuous batching scheduler、CUDA Graph、kernel 优化,随后是 linear attention、KV offloading、LoRA、tensor parallelism,再到面向主流大型 MoE 模型的 EP parallelism。

几天前我把它改名为 OpenInfer,因为我发现它已经可以逐步迈向生产环境。经过充分准备,今天 OpenInfer 0.1.0 正式发布。当然,下面的大多数功能目前只在 Qwen3 4B 上实现。不同模型的功能覆盖范围也各不相同。"AI创造营