🤗 Optimum
Optimum 是 Transformers 🤖、Diffusers 🧨、TIMM 🖼️ 和 Sentence-Transformers 🤗 的扩展库,提供了一套优化工具,旨在目标硬件上以最高效率训练和运行模型,同时保持简单易用。
可以使用 pip 安装 Optimum:
python -m pip install optimum
如果想使用 Optimum 针对特定加速器的功能,请查阅文档并根据下表安装所需的依赖项:
| 加速器 | 安装命令 |
|---|---|
| ONNX | pip install --upgrade --upgrade-strategy eager optimum[onnx] |
| ONNX Runtime | pip install --upgrade --upgrade-strategy eager optimum[onnxruntime] |
| ONNX Runtime GPU | pip install --upgrade --upgrade-strategy eager optimum[onnxruntime-gpu] |
| OpenVINO | pip install --upgrade --upgrade-strategy eager optimum[openvino] |
| NVIDIA TensorRT-LLM | docker run -it --gpus all --ipc host huggingface/optimum-nvidia |
| AMD Instinct GPU 与 Ryzen AI NPU | pip install --upgrade --upgrade-strategy eager optimum[amd] |
| AWS Trainum & Inferentia | pip install --upgrade --upgrade-strategy eager optimum[neuronx] |
| Intel Gaudi 加速器 (HPU) | pip install --upgrade --upgrade-strategy eager optimum[habana] |
| FuriosaAI | pip install --upgrade --upgrade-strategy eager optimum[furiosa] |
--upgrade --upgrade-strategy eager 选项用于确保将不同的包升级到最新的可用版本。
从源码安装:
python -m pip install git+https://github.com/huggingface/optimum.git
对于特定加速器的功能,请在上述命令后追加 optimum[accelerator_type]:
python -m pip install optimum[onnxruntime]@git+https://github.com/huggingface/optimum.git
Optimum 提供了多种工具,用于在各种生态系统中导出和运行优化后的模型:
导出和优化既可以通过编程方式完成,也可以通过命令行完成。
🚨🚨🚨 ONNX 集成已迁移至 optimum-onnx,请务必遵循其安装说明 🚨🚨🚨
开始之前,请确保已安装所有必要的库:
pip install --upgrade --upgrade-strategy eager optimum[onnx]
可以轻松地将 Transformers、Diffusers、Sentence Transformers 和 Timm 模型导出到 ONNX 格式,并进行图优化和量化。
有关 ONNX 导出的更多信息,请查阅文档。
模型导出为 ONNX 格式后,我们提供了 Python 类,使您能够使用后端的 ONNX Runtime 无缝运行导出的 ONNX 模型。
为此,请确保已安装 ONNX Runtime,更多信息请查看安装说明。
有关如何使用 ORTModelForXXX 类运行 ONNX 模型的更多详细信息,请参阅此处。
开始之前,请确保已安装所有必要的库。
pip install --upgrade --upgrade-strategy eager optimum[openvino]
您可以在我们的文档和 optimum-intel 的示例中找到有关不同集成的更多信息。
开始之前,请确保已安装所有必要的库:
pip install optimum-executorch@git+https://github.com/huggingface/optimum-executorch.git
用户可以将 Transformers 模型导出到 ExecuTorch,并在 PyTorch 生态系统内的边缘设备上运行推理。
有关将 Transformers 导出到 ExecuTorch 的更多信息,请查看 Optimum-ExecuTorch 文档。
Quanto 是一个 PyTorch 量化后端,允许您使用 Python API 或 optimum-cli 来量化模型。
Optimum 提供了对原始 Transformers Trainer 的封装,以便轻松地在强大的硬件上进行训练。
我们支持许多提供商:
开始之前,请确保已安装所有必要的库:
pip install --upgrade --upgrade-strategy eager optimum[habana]
开始之前,请确保已安装所有必要的库:
pip install --upgrade --upgrade-strategy eager optimum[neuronx]