1 个不稳定版本

0.3.0 2023 年 11 月 2 日

#824机器学习

MIT/Apache

1MB
20K SLoC

candle

Rust 的极简主义 ML 框架


lib.rs:

Rust 的 ML 框架

use candle_core::{Tensor, DType, Device};

let a = Tensor::arange(0f32, 6f32, &Device::Cpu)?.reshape((2, 3))?;
let b = Tensor::arange(0f32, 12f32, &Device::Cpu)?.reshape((3, 4))?;

let c = a.matmul(&b)?;

特性

  • 简单的语法(类似于 PyTorch)
  • CPU 和 Cuda 后端(以及 M1 支持)
  • 启用无服务器(CPU)小型快速部署
  • 模型训练
  • 分布式计算(NCCL)。
  • 开箱即用的模型(Llama、Whisper、Falcon 等)

常见问题解答

  • 为什么选择蜡烛?

蜡烛起源于减少二进制文件大小的需要,通过使整个引擎小于 PyTorch 非常大的库体积,从而实现可能的无服务器功能。

并且简单地从生产工作中移除 Python。Python 实际上会在更复杂的流程中增加开销,而 GIL 是一个臭名昭著的头痛之源。

Rust 很酷,而且 HF 生态系统中的许多项目已经有了 Rust 的 crate,例如 safetensorstokenizers

依赖项

~7–13MB
~295K SLoC