Skip to main content
PromptQuorum
主页/本地LLM进阶/candle-vllm评测:在CUDA和Metal上的Rust原生LLM服务引擎
Overview & Reference

candle-vllm评测:在CUDA和Metal上的Rust原生LLM服务引擎

·阅读约9分钟·Hans Kuepper 作者 · PromptQuorum创始人,多模型AI调度工具 · PromptQuorum

candle-vllm是一个免费、开源的Rust原生LLM推理与服务引擎,构建在Hugging Face的Candle机器学习框架之上,提供兼容OpenAI的API服务器,具备类似vLLM的服务功能(连续批处理、类似PagedAttention的内存管理、量化支持),这些功能是用Rust原生实现的,而不是Python移植版。它在NVIDIA CUDA(Linux)和Apple Metal(macOS/Apple Silicon)上运行同一套代码库,并支持CPU回退,同时支持SafeTensors、GGUF、GPTQ、AWQ等多种格式的开放模型系列。

candle-vllm(github.com/EricLBuehler/candle-vllm)是一个免费、开源、Rust原生的LLM推理与服务引擎,构建在Hugging Face的Candle机器学习框架之上,提供兼容OpenAI的API服务器,力求实现类似vLLM的服务行为,但不依赖Python运行时。它可以用同一套代码库同时运行在NVIDIA CUDA和Apple Metal上。本评测介绍它的功能、与其服务模型所借鉴的Python版vLLM项目的对比,以及适合哪些用户。

关键要点

  • candle-vllm(github.com/EricLBuehler/candle-vllm)是一个免费、开源、Rust原生的推理与服务引擎
  • 由开发者EricLBuehler基于Hugging Face的Candle机器学习框架构建
  • 通过仓库许可证确认采用MIT协议
  • 其服务方式——连续批处理、高效的KV缓存处理——借鉴自Python版vLLM项目,并引用了vLLM论文(arxiv.org/abs/2309.06180),但它是从零开始构建的Rust重新实现,而非vLLM Python代码的移植版
  • 默认在http://localhost:2000上运行兼容OpenAI的API服务器,可选内置Web界面
  • 同一套代码库跨平台运行:Linux上的NVIDIA CUDA 11/12/13、macOS/Apple Silicon上的Apple Metal(建议16GB以上统一内存)以及CPU回退
  • 截至本评测,GitHub星标数约为728

📍 简单一句话

candle-vllm是一个免费开源(MIT协议)的LLM服务引擎,基于Hugging Face的Candle框架用Rust原生编写,在NVIDIA CUDA和Apple Metal上提供兼容OpenAI、具备类似vLLM服务行为的API服务器。

💬 简单来说

candle-vllm是一个可以在你自己的电脑或服务器上运行AI语言模型的程序,并允许其他应用使用与OpenAI API相同的请求格式与它通信——因此为OpenAI API构建的工具往往只需简单修改配置即可对接它。它完全用Rust而不是Python构建,开发者认为这带来了安全性和原生编译方面的优势;它借鉴了知名Python项目vLLM的服务设计,但并未直接复用vLLM的Python代码。

📌: 本评测基于该项目自身的GitHub仓库和README。由于PromptQuorum尚未对candle-vllm进行自己的实测性能测试,因此本文不会把项目自报的解码速度基准视为独立验证过的数据。

candle-vllm是什么?

candle-vllm是一个免费、开源的LLM推理与服务引擎,完全用Rust编写,构建在Hugging Face的Candle机器学习框架之上,而不是Python。它由EricLBuehler开发,并通过GitHub分发。

  • 产品类型:需要自行运行的服务引擎/API服务器,而非托管服务或桌面聊天应用
  • 创建者:EricLBuehler
  • 底层框架:Candle,即Hugging Face的Rust原生机器学习框架——candle-vllm构建在其之上,但并非Candle本身的分支或改名
  • 许可协议:MIT
  • 资金情况:本评测未发现该项目有融资轮次、投资方或商业背景——应视为一个独立维护的社区开源项目
  • 规模:截至本评测,GitHub星标约728,Fork约90,并有活跃的近期提交记录

candle-vllm实际能做什么?

candle-vllm加载一个开放LLM,并通过兼容OpenAI的HTTP API提供服务,采用在思路上类似Python版vLLM项目的服务优化——连续批处理、高效的注意力缓存内存管理和量化支持——全部用Rust原生实现。

  • 兼容OpenAI的API服务器:默认监听http://localhost:2000,因此为OpenAI API格式构建的客户端通常只需更改基础URL即可连接
  • 可选内置Web界面:根据项目README,可以在API旁边启动一个类似ChatGPT的聊天界面,端口与API端口不同
  • 根据README,支持广泛的模型系列:Qwen、Llama、Mistral、Phi3/Phi4、DeepSeek(包括V3/R1)、GLM、Yi、StableLM、Gemma、QwQ以及视觉语言模型
  • 根据项目文档,支持的模型格式包括:SafeTensors、GGUF、GPTQ、AWQ、Marlin、MXFP4和NVFP4
  • README中描述的性能特性:Flash Attention、可选的FlashInfer后端、CUDA Graphs、连续批处理以及前缀缓存(跨请求复用KV缓存)
  • 内存效率特性:"TurboQuant" KV缓存压缩,README称其通过2至4位的缓存量化变体实现大幅的上下文长度扩展
  • 多GPU与多节点支持:张量并行的多GPU推理(README建议使用多进程模式),以及无需MPI依赖的基于TCP的多节点协调
  • 工具集成:文档中说明支持模型上下文协议(MCP)以及兼容OpenAI的工具/函数调用

平台、价格与许可

平台

candle-vllm的说明:
一个自托管的服务器进程,可通过命令行运行,也可作为Rust库使用。跨平台:Linux(CUDA 11/12/13)、macOS/Apple Silicon(Metal)以及CPU回退,三者共用同一代码库。

费用

candle-vllm的说明:
免费开源,没有付费层级。你需要自行提供算力,并单独下载开放模型权重(例如从Hugging Face)。

许可协议

candle-vllm的说明:
MIT协议。

安装方式

candle-vllm的说明:
根据项目README:用于DEB/二进制安装的一行式Shell安装脚本、通过cargo install并指定CUDA/Metal/CPU功能标志的源码构建,或提供可配置CUDA/SM版本的Docker镜像。

在运行任何命令之前,请在github.com/EricLBuehler/candle-vllm上确认当前推荐的安装方法及CUDA/驱动兼容性,因为安装说明和支持的CUDA版本可能随版本更新而变化。

candle-vllm对比Python版vLLM

candle-vllm并非原始Python版vLLM项目的分支或移植版——它是一个独立的、从零开始构建的Rust实现,遵循类似的服务设计(连续批处理、高效的KV缓存管理),并引用vLLM论文作为参考方案。

语言/运行时

candle-vllm:
Rust,运行服务器无需Python运行时
Python版vLLM:
Python,需要Python环境

底层框架

candle-vllm:
Hugging Face Candle(Rust ML框架)
Python版vLLM:
PyTorch

API兼容性

candle-vllm:
兼容OpenAI的HTTP API
Python版vLLM:
兼容OpenAI的HTTP API

平台支持

candle-vllm:
CUDA、Apple Metal、CPU——同一代码库
Python版vLLM:
主要面向CUDA/ROCm,没有原生Apple Metal后端

生态成熟度

candle-vllm:
社区较小(约728星标),项目较新
Python版vLLM:
规模大,广泛部署于生产环境的LLM服务栈

此对比反映的是各项目自身的文档内容,并非PromptQuorum的独立基准测试。在做出选择前,请直接向各项目确认当前的功能对齐情况和性能表现。

谁适合使用candle-vllm?

candle-vllm适合希望使用兼容OpenAI、无Python依赖的本地服务引擎,并且看重能在CUDA和Apple Metal上运行同一代码库的开发者。

candle-vllm不适合哪些场景

如果你在做出决定前需要最庞大的现有集成生态、无需终端的图形化安装程序,或独立验证过的性能数据,那么candle-vllm并不是好的选择。

  • 并非最成熟的生态系统——截至本评测,Python版vLLM拥有大得多的社区、更多第三方集成以及更多生产环境经验
  • 不是图形化或一键式桌面安装——它是通过Shell脚本、cargo构建或Docker设置的服务器/API组件
  • 并非所有Python版vLLM专属插件或工作流的直接替代品——一些专门围绕Python版vLLM内部机制构建的工具,在这里没有直接的Rust对应版本
  • 未经PromptQuorum独立基准测试——本评测未通过自己的实测来确认该项目自报的解码速度数据
  • 本评测未能确认存在融资轮次或公司背景——应视为独立维护、由社区支持的项目

评估candle-vllm时的常见误区

关于candle-vllm的大多数误解,来自于认为它是vLLM从Python移植到Rust的版本,或者因为名字中带有“vllm”而误以为它是用Python编写的。

竞品与替代方案

在本地LLM推理与服务引擎领域,candle-vllm最常与其他自托管、兼容OpenAI的服务平台相比较——它的主要差异点在于Rust原生而非基于Python,并在CUDA之外原生支持Apple Metal。

Tool
主要特点
Link
LMDeployInternLM团队推出的基于Python的LLM服务工具包,擅长量化和高吞吐推理LMDeploy评测
NVIDIA Dynamo面向大规模、多节点LLM部署的分布式推理服务框架Dynamo评测
LoRAX多LoRA适配器服务框架,可从一个基础模型运行大量微调变体LoRAX评测

此列表反映了在推理/服务引擎领域常与candle-vllm比较的工具,并非PromptQuorum的独立排名——选择前请确认各工具当前的功能情况。

常见问题

candle-vllm是什么?

candle-vllm(github.com/EricLBuehler/candle-vllm)是一个免费、开源、Rust原生的LLM推理与服务引擎,构建在Hugging Face的Candle框架之上,提供兼容OpenAI的API服务器。

candle-vllm是用Python写的吗?

不是。尽管名字中含有“vllm”,candle-vllm完全是基于Hugging Face的Candle机器学习框架用Rust编写的。运行服务器无需Python运行时。

candle-vllm和vLLM是同一个项目吗?

不是。它是一个独立的、从零开始构建的Rust实现,在服务设计上(连续批处理、KV缓存管理)与Python版vLLM项目类似,并引用了vLLM论文,但并未复用vLLM的Python代码。

candle-vllm是免费的吗?

是的,它在MIT协议下免费开源,没有付费层级。

candle-vllm支持哪些平台?

同一代码库可运行在Linux上的NVIDIA CUDA(11/12/13)、macOS/Apple Silicon上的Apple Metal(建议16GB以上统一内存),以及作为回退的CPU上。

如何安装candle-vllm?

根据项目README:可使用用于DEB/二进制安装的一行式Shell安装脚本、通过cargo install并指定相应CUDA/Metal/CPU功能标志进行源码构建,或使用Docker镜像。

candle-vllm支持量化模型吗?

支持。根据项目文档,它支持SafeTensors、GGUF、GPTQ、AWQ、Marlin、MXFP4和NVFP4等模型格式。

candle-vllm是谁创建的?

开发者EricLBuehler创建并维护candle-vllm,构建在Hugging Face的Candle机器学习框架之上。

candle-vllm有Web界面吗?

根据项目README,它可以选择在API服务器旁启动一个内置的、类似ChatGPT的Web界面,端口与API端口不同。

PromptQuorum是否独立验证过candle-vllm的性能宣称?

没有。本评测基于该项目自身的GitHub仓库和README,并非基于PromptQuorum自己的实测性能测试。

资料来源

← 返回 本地LLM进阶