fandhe-ai
Rust 製 AI/ML ライブラリです。Burn 等の既存フレームワークに依存せず、テンソル・ autodiff・演算グラフ/カーネル融合機構・計算カーネル・バックエンド抽象層を 完全自作コアとして実装しています。
このライブラリの構成
内部は 10 個のクレートに分かれていますが、利用者が直接触れるのは fandhe-ai クレートだけです。
| クレート | 役割 |
|---|---|
fandhe-ai | 唯一のサポートされる公開 API 面。composition root(Device → バックエンドの結線)・compat 公開面(compat::array/compat::Sequential)・optim・デバイス常駐更新経路を提供します |
fandhe-ai-tensor-core・fandhe-ai-autodiff・fandhe-ai-backend-cpu・fandhe-ai-backend-cuda・fandhe-ai-backend-metal | 内部クレート。直接利用はサポート対象外です |
onnx-interop・guardrail・self-repair・bench-harness | 相互運用・自己修復ループ・ベンチ計測を担う内部クレート |
fandhe-ai-tensor-core/fandhe-ai-autodiff/fandhe-ai-backend-* の型・ 関数は Rust の可視性としては pub な箇所がありますが、サポート境界上は 内部 API です。利用者が使うことを想定する入口は次の 4 つです。
fandhe_ai::tape()/fandhe_ai::tape_for(Device)(composition root)fandhe_ai::compat::{array, Sequential}(numpy/Keras 慣習の互換 API 層)fandhe_ai::optim(Sgd/AdamW/clip_grad_norm/LrScheduler等)fandhe_ai::DeviceParamStore/Tape::step_device_param_store(デバイス常駐更新経路)
バックエンド
バックエンド切替は feature フラグを使わない cfg ベースです。CPU は常に 利用可能な既定バックエンドで、CUDA・Metal は実行時にデバイスの存在を検証し、 利用できない場合はエラーを返します(自動フォールバックはしません)。詳細は Getting Started を参照してください。
次に読むもの
- Getting Started: インストール・最小 コード例・バックエンド切替
- Guides: バックエンド構成・数値一致契約・性能の考え方・ ONNX/safetensors 相互運用の解説
- Examples: 学習ループ・推論・GEMM ベンチの実行例
- API Reference:
compatAPI・guardrail/self-repair CLI の要点