导出到 TFLite
TensorFlow Lite 是一个轻量级的框架,用于在资源受限的设备(如手机、嵌入式系统和物联网 (IoT) 设备)上部署机器学习模型。TFLite 旨在优化和高效运行这些计算能力、内存和功耗有限的设备上的模型。TensorFlow Lite 模型以一种特殊的、高效的、便携的格式表示,该格式由 .tflite
文件扩展名标识。
🤗 Optimum 提供了通过 exporters.tflite
模块将 🤗 Transformers 模型导出到 TFLite 的功能。有关支持的模型架构列表,请参阅 🤗 Optimum 文档。
要将模型导出到 TFLite,请安装所需的依赖项
pip install optimum[exporters-tf]
要查看所有可用的参数,请参阅 🤗 Optimum 文档,或在命令行中查看帮助
optimum-cli export tflite --help
要导出 🤗 Hub 上的模型检查点,例如 google-bert/bert-base-uncased
,请运行以下命令
optimum-cli export tflite --model google-bert/bert-base-uncased --sequence_length 128 bert_tflite/
您应该会看到指示进度并显示生成的 model.tflite
保存位置的日志,如下所示
Validating TFLite model...
-[✓] TFLite model output names match reference model (logits)
- Validating TFLite Model output "logits":
-[✓] (1, 128, 30522) matches (1, 128, 30522)
-[x] values not close enough, max diff: 5.817413330078125e-05 (atol: 1e-05)
The TensorFlow Lite export succeeded with the warning: The maximum absolute difference between the output of the reference model and the TFLite exported model is not within the set tolerance 1e-05:
- logits: max diff = 5.817413330078125e-05.
The exported model was saved at: bert_tflite
以上示例说明了如何从 🤗 Hub 导出检查点。导出本地模型时,首先确保您将模型的权重和分词器文件保存在同一目录 (local_path
) 中。使用 CLI 时,将 local_path
传递给 model
参数,而不是 🤗 Hub 上的检查点名称。