认识 Open Explorer

什么是OE

OE是Open Explorer的缩写简称,中文名为天工开物(以下简称OE),它是基于自研计算平台打造的全生命周期开发平台, 主要包括模型编译优化工具集、算法仓库和应用开发SDK三大功能模块。基于这三大功能模块开发的应用参考解决方案,为智能物联网等行业方案提供了案例支撑。

OE可以为地瓜合作伙伴提供丰富多样的算法资源、灵活高效的开发工具和简单易用的开发框架。OE的特色和优势可以概括为以下四个方面:

learn_oe_2

为了方便将各种解决方案部署到地平线一系列开发板上,我们提供了集开发板系统镜像、开发环境部署、应用参考解决方案示例代码以及用户手册等文件于一体的全量开发包,称之为OE包。 在您获取到OE包后,可以先按照以下步骤对OE进行了解。

  1. 先参考 发布物内容,了解发布包的目录结构。

  2. 再参考 环境部署 章节进行开发环境和运行环境的部署。

  3. 接着通过参考 训练后量化(PTQ)量化感知训练(QAT) 以及 模型推理应用开发指导 完成模型转换与部署的全流程。

更多更全的OE包使用教程,欢迎参考下方指导手册进行了解,相信地平线的OE包可以让您开发更高效,部署更简便。

发布物内容

package

package 目录下包含了发布物运行的一些基础库和组件。

samples

samples 下包含了 ai_toolchain、model_zoo和ucp_tutorial

  • ai_toolchain提供了一些模型算法的一系列示例。(其中horizon_model_train_samples为浮点模型训练框架示例,horizon_model_convert_sample为浮点模型转定点模型的转换示例, model_zoo是一个模型库,用于放置工具链示例模型编译的源模型和runtime模型。)

  • model_zoo,软链接指向ai_toolchain文件夹下的model_zoo路径。

  • ucp_tutorial,统一计算平台UCP的示例包,提供UCP必要的依赖以及相关示例。

resolve_all.sh

用于自动下载OE包内所有可下载的依赖项的脚本。

运行该脚本将依次进行如下内容的下载:

  1. 执行 samples/ai_toolchain/model_zoo/runtime/ai_benchmark 路径下的 resolve_ai_benchmark_ptq.sh ,下载上板使用的hbm模型。

  2. 执行 samples/ai_toolchain/model_zoo/runtime/ai_benchmark 路径下的 resolve_ai_benchmark_qat.sh ,下载上板使用的hbm模型。

  3. 执行 samples/ai_toolchain/model_zoo/runtime/basic_samples 路径下的 resolve_runtime_sample.sh ,下载对应示例上板使用的hbm模型。

  4. 执行 samples/ucp_tutorial/dnn/basic_samples/code/ 路径下的 resolve.sh ,运行basic_samples示例包依赖获取脚本。

  5. 执行 samples/ucp_tutorial/dnn/ai_benchmark/code/ 路径下的 resolve.sh ,运行AI Benchmark示例包模型性能评测数据集下载脚本。

  6. 执行 samples/ai_toolchain/horizon_model_convert_sample 文件夹下所有的 00_init.sh ,下载示例对应的校准数据集以及原始模型。

run_docker.sh

在评测数据集和OE包所需docker下载完成的情况下,可以使用命令 sh run_docker.sh {数据集路径} 自动挂载OE包并启动docker。