tracel-ai/burn
Burn is a next generation tensor library and Deep Learning Framework that doesn't compromise on flexibility, efficiency and portability.
何を解決するか
Burnは、Pythonベースのトレーニング環境からプロダクションエンジンへのモデルエクスポートという脆弱で損失の大きいプロセスに対処します。トレーニングと推論を単一のコードベースに統合し、同じコードを両方で使用可能にすることで、デバイス内でのパーソナライズやフェデレーテッドラーニングを簡素化します。
動作方法
BurnはRustで書かれたテンソルライブラリおよびディープラーニングフレームワークです。統一されたAPIを使用して、複数のプラットフォーム上でテンソル操作を実行します。パフォーマンスを維持しつつ柔軟性を損なわないように、テンソル操作のストリームをJITコンパイルし、自動的にカーネル結合(kernel fusion)を実行します。インクリメンタルコンパイルを設計しており、モデルの変更は5秒未満で再コンパイルされます。
対象ユーザー
Rustの高速性と安全性を求める研究者や開発者、Pythonのようなフィードバックループを望むチーム、および組み込みデバイス(no_std)から大規模GPUクラスタ、WebAssembly経由のWebブラウザまで、多様なハードウェアにモデルをデプロイしたいチームに最適です。
主な特徴
- マルチプラットフォームバックエンド対応: CUDA、ROCm、Metal、Vulkan、WebGPU、CPUバックエンドをサポート。
- バックエンドデコレータ: Autodiff(自動微分)やFusion(カーネル結合)などの機能を任意のベースバックエンドにデコレータで追加可能。
- モデル相互運用性: ONNXモデルをネイティブRustコードとしてインポートでき、PyTorchやSafetensorsから重みを読み込み可能。
- デプロイの柔軟性: WebAssembly経由でブラウザでの推論をサポートし、
no_stdサポートによりバーメタル組み込み環境でも動作可能。 - 統合ツールキット: 実時間でのトレーニング監視用のターミナルUIダッシュボードと専用のベンチマークスイートを内蔵。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト