C++ 和 Python 推理库,通过量化和优化内核,更快、更省内存地运行 Whisper、Llama、NLLB 等 Transformer 模型。
- Star
- 21,279
- Fork
- 1,855
- 未关闭 Issue
- 964
- 最近提交
- 5天前
这是什么?
Candle 是一个用 Rust 编写的机器学习框架,API 风格接近 PyTorch,提供张量、设备和常用算子。CPU 后端经过优化,x86 上可选 MKL,macOS 上使用 Accelerate;CUDA 后端支持通过 NCCL 进行多 GPU 分布;还支持 WASM,可以在浏览器中运行模型。
项目的核心目标是让 serverless 推理变得可行。它生成的是轻量二进制文件,而不是依赖完整的 Python 机器学习栈,因此可以把 Python 从生产环境中移除。模型可以从 safetensors、npz、ggml 和 PyTorch 文件加载,并支持使用 llama.cpp 的量化类型进行量化。
仓库内附带多种模型示例,涵盖 LLaMA、Mistral、Mixtral、Qwen、Gemma 等大语言模型,以及 Stable Diffusion、Whisper、YOLO、SAM、CLIP 等模型,并为每个模型提供命令行示例。
核心功能
- 01类似 PyTorch 的 Rust API,用于张量、算子和模型代码。
- 02CPU 后端可选 MKL(x86)与 Accelerate(macOS),并提供 CUDA 后端。
- 03通过 NCCL 实现多 GPU 分布。
- 04支持 WASM,可在浏览器中运行模型。
- 05可加载 safetensors、npz、ggml 和 PyTorch 模型文件。
- 06支持使用 llama.cpp 量化类型进行模型量化。
适用场景
- 将模型推理部署为无需 Python 运行时的小型 serverless 二进制程序。
- 在 Rust 服务中运行大语言模型、语音识别或图像模型。
- 通过 WASM 在浏览器端运行模型。
- 将 PyTorch 模型迁移到 Rust 代码库中。
快速上手
- 1
在 Rust 项目中添加 candle-core 并运行矩阵乘法示例
cargo run - 2
在代码中将设备切换为 GPU 以启用 CUDA 支持
- 3
启用 CUDA 运行命令行示例
cargo run --example quantized --release
使用前须知
- 需要 Rust 工具链;若使用 GPU,还需单独配置 CUDA 环境。
- 许多模型示例需要另行下载模型权重文件。
标签
常见问题
- candle 是什么?
- 面向 Rust 的极简机器学习框架,支持 GPU,适合无 Python 的轻量推理与部署。 Candle 是一个用 Rust 编写的机器学习框架,API 风格接近 PyTorch,提供张量、设备和常用算子。CPU 后端经过优化,x86 上可选 MKL,macOS 上使用 Accelerate;CUDA 后端支持通过 NCCL 进行多 GPU 分布;还支持 WASM,可以在浏览器中运行模型。
- candle 可以免费使用吗?用的什么许可证?
- candle 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- candle 还在维护吗?
- 活跃维护中。candle 最近一次提交是在 2026年11月2日。
- candle 适合用来做什么?
- 将模型推理部署为无需 Python 运行时的小型 serverless 二进制程序。 在 Rust 服务中运行大语言模型、语音识别或图像模型。 通过 WASM 在浏览器端运行模型。 将 PyTorch 模型迁移到 Rust 代码库中。
- candle 怎么安装和运行?
- 在 Rust 项目中添加 candle-core 并运行矩阵乘法示例: cargo run 在代码中将设备切换为 GPU 以启用 CUDA 支持 启用 CUDA 运行命令行示例: cargo run --example quantized --release
- 在哪里获取 candle?
- 源代码和安装说明在 GitHub 上:https://github.com/huggingface/candle
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个纯 C/C++ 编写的机器学习张量库,力求简洁、可移植且高效,部署门槛低。
基于 Rust 的大模型推理引擎,提供 OpenAI 与 Anthropic 兼容接口,支持量化与多模态模型。
用 Nim 编写的高性能 N 维张量库,支持 CPU、CUDA 和 OpenCL,面向数值计算与深度学习。
PyTorch 原生的模型量化与优化库,覆盖训练和推理部署。
面向 PyTorch 的源码到源码编译器,可在训练和推理中优化模型,计算图可检查、可扩展。