openxla/stablehlo

Backward compatible ML compute opset inspired by HLO/MHLO

解決する課題

StableHLOは、異なる機械学習フレームワーク(PyTorch、TensorFlow、JAXなど)と、それらをハードウェア向けに最適化するコンパイラ(XLAやIREEなど)との間の互換性の問題を解決するポータビリティレイヤーです。これにより、あるフレームワークで作成されたモデルが、すべての組み合わせに対して書き直す必要なく、さまざまなコンパイラによって確実に利用できることを保証します。

仕組み

MLモデルに対して標準化された一連の高レベル演算(HLO)を提供します。MLIR (Multi-Level Intermediate Representation) ダイアレクトに基づいており、MHLOダイアレクトにシリアライゼーションとバージョニング機能を追加します。MLIRバイトコードをシリアライゼーション形式として使用することで、後方互換性と前方互換性を保証し、フレームワークとコンパイラが安定したバージョン管理されたインターフェースを使用して通信できるようにします。

対象者

このプロジェクトは、XLAやIREEなどのコンパイラを介して多様なハードウェア上で実行可能な相互運用可能なモデルを作成する必要があるMLコンパイラエンジニアやフレームワーク開発者、またはGoogle AI Edgeを介してデバイス上でモデルをデプロイする開発者を対象としています。

ハイライト

  • 相互運用性: JAX、PyTorch、TensorFlowなどのフレームワーク間のギャップを埋めることで、開発を簡素化します。
  • バージョン管理された安定性: MLIRバイトコードを使用することで、オペレーションセットが進化してもプログラムの互換性が維持されるようにします。
  • 幅広い互換性: XLAやIREEなどのMLコンパイラと互換性があります。
  • 変換ツール: StableHLOプログラム(重みとバイアスを含む)をTensorFlow SavedModelsに変換するツールが含まれています。

関連

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