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 的工具。
相关
- 项目
- 项目
- 项目
- 项目
- 项目