LaurentMazare/tch-rs
Rust bindings for the C++ api of PyTorch.
解決的問題
tch-rs 為 PyTorch C++ API(libtorch)提供 Rust 綁定,讓開發者能直接在 Rust 程式語言中使用 PyTorch 強大的張量運算、自動微分以及神經網路模組。這使得開發人員能在利用 Rust 的安全性與併發特性之際,建立高效率的 AI 模型與應用程式。
工作原理
本專案為 C++ libtorch 庫提供輕量級包裝。它允許使用者透過接近原始 C++ API 的 Rust 界面,與 PyTorch 張量及神經網路元件互動。該套件可連結至系統層級的 libtorch 安裝、Python PyTorch 安裝,或自動下載預先建構好的 libtorch 二進位檔。
適用對象
希望在 Rust 中使用 PyTorch 深度學習功能的開發者,無論是從零開始訓練模型、執行預訓練權重的推論(包含對 SafeTensors 的支援),或是透過 TorchScript JIT 部署模型。
主要特色
- PyTorch 整合:直接綁定 libtorch,支援張量運算與自動微分。
- 神經網路 API:提供工具,使用
nn::seq與nn::VarStore建構模型架構並管理參數。 - 彈性連結方式:支援系統層級、基於 Python 的,或自動下載 libtorch 二進位檔。
- 權重載入:可使用 SafeTensors 格式從 PyTorch 導入預訓練權重。
- 廣泛的應用範例:包含 MNIST、ResNet、字元級 RNN,以及簡化版 GPT 的實作。
相關
- 專案
- 專案
- 專案
- 專案
- 專案