Skip to content

Latest commit

 

History

History
59 lines (40 loc) · 3.16 KB

README.md

File metadata and controls

59 lines (40 loc) · 3.16 KB

FastDeploy ERNIE 3.0 Tiny 模型高性能部署

目录

FastDeploy部署介绍

⚡️FastDeploy是一款全场景易用灵活极致高效的AI推理部署工具,满足开发者多硬件、多平台的产业部署需求。开发者可以基于FastDeploy将训练好的预测模型在不同的硬件、不同的操作系统以及不同的推理引擎后端上进行部署。目前FastDeploy提供多种编程语言的 SDK,包括 C++、Python 以及 Java SDK。

目前 ERNIE 3.0 Tiny 模型已提供基于 FastDeploy 的云边端的部署示例,在服务端上的 GPU 硬件上,支持Paddle InferenceONNX RuntimePaddle TensorRT以及TensorRT后端,在CPU上支持Paddle InferenceONNX Runtime以及OpenVINO后端;在移动端上支持Paddle Lite后端。多硬件、多推理引擎后端的支持可以满足开发者不同的部署需求。

为了提供 ERNIE 3.0 Tiny 高性能端到端部署能力,我们使用 FastTokenizer 工具完成高效分词,大大提升端到端预测性能。针对 ERNIE 3.0 Tiny 模型,FastTokenizer 集成了Google提出的 Fast WordPiece Tokenization 快速分词算法,可大幅提升分词效率。在 ERNIE 3.0 Tiny 性能测试中,使用 FastTokenizer 可提升端到端性能 3.56倍 。我们在 Python部署 文档更全面地展示使用 FastTokenizer 的加速能力。

本部署示例是车载语音场景下的口语理解(Spoken Language Understanding,SLU)任务,详细可看ERNIE 3.0 Tiny介绍

代码结构


├── cpp
│   ├── CMakeLists.txt    # CMake编译脚本
│   ├── infer_demo.cc     # C++ 部署示例代码
│   └── README.md         # C++ 部署示例文档
├── python
│   ├── infer_demo.py     # Python 部署示例代码
│   └── README.md         # Python 部署示例文档
├── android
│   ├── README.md         # Android部署文档
│   ├── app               # App示例代码
│   ├── build.gradle
│   ├── ernie_tiny        # ERNIE 3.0 Tiny JNI & Java封装代码
│   ├── ......            # Android相关的工程文件及目录
│   ├── local.properties
│   └── ui                # 一些辅助用的UI代码
└── README.md             # 文档

环境要求

在部署ERNIE 3.0 Tiny模型前,需要安装FastDeploy SDK,可参考FastDeploy SDK安装文档确认部署环境是否满足FastDeploy环境要求,并按照介绍安装相应的SDK。

详细部署文档