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ダッシュボードと専用のベンチマークスイートを内蔵。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト