Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
Joeyyy 5fed2d393d | 2 years ago | |
---|---|---|
.. | ||
configs | 2 years ago | |
docs | 2 years ago | |
common_func.sh | 2 years ago | |
prepare.sh | 2 years ago | |
readme.md | 2 years ago | |
test_train_inference_python.sh | 2 years ago |
飞桨除了基本的模型训练和预测,还提供了支持多端多平台的高性能推理部署工具。本文档提供了PARL中所有模型的飞桨训推一体全流程(Training and Inference Pipeline Criterion(TIPC))信息和测试工具,方便用户查阅每种模型的训练推理部署打通情况,并可以进行一键测试。
打通情况汇总如下,已填写的部分表示可以使用本工具进行一键测试,未填写的表示正在支持中。
字段说明:
算法论文 | 模型名称 | 模型类型 | 基础 训练预测 |
更多 训练方式 |
模型压缩 | 其他预测部署 |
---|---|---|---|---|---|---|
A2C | A2C | 决策 | 支持 | - | - | - |
CQL | CQL | 决策 | 支持 | - | - | - |
DDPG | DDPG | 决策 | 支持 | - | - | - |
DQN | DQN | 决策 | 支持 | - | - | - |
DQN_varient | DQN_varient | 决策 | 支持 | - | - | - |
ES | ES | 决策 | 支持 | - | - | - |
MADDPG | MADDPG | 决策 | 支持 | - | - | - |
OAC | OAC | 决策 | 支持 | - | - | - |
PPO | PPO | 决策 | 支持 | - | - | - |
PolicyGradient | QuickStart | 决策 | 支持 | - | - | - |
SAC | SAC | 决策 | 支持 | - | - | - |
TD3 | TD3 | 决策 | 支持 | - | - | - |
test_tipc/
├── configs/ # 配置文件目录
├── A2C # A2C模型的测试配置文件目录
├── train_infer_python.txt # 测试Linux上python训练预测(基础训练预测)的配置文件
├── ...
├── CQL # CQL模型的测试配置文件目录
├── ...
├── DQN # DQN模型的测试配置文件目录
├── ...
├── PPO # PPO模型的测试配置文件目录
├── ...
├── ...
├── common_func.sh # 通用工具函数
├── prepare.sh # 完成test_*.sh运行所需要的数据和模型下载
├── test_train_inference_python.sh # 测试python训练预测的主程序
└── readme.md # 使用文档
使用本工具,可以测试不同功能的支持情况,以及预测结果是否对齐,测试流程概括如下:
test_*.sh
,产出log,由log可以看到不同配置是否运行成功;compare_results.py
对比log中的预测结果和预存在results目录下的结果,判断预测精度是否符合预期(在误差范围内)。【PARL暂无全量测试,未设置精度检查】测试单项功能仅需两行命令,如需测试不同模型/功能,替换配置文件即可,命令格式如下:
# 功能:准备数据
# 格式:bash + 运行脚本 + 参数1: 配置文件选择 + 参数2: 模式选择
bash test_tipc/prepare.sh configs/[model_name]/[params_file_name] [Mode]
# 功能:运行测试
# 格式:bash + 运行脚本 + 参数1: 配置文件选择 + 参数2: 模式选择
bash test_tipc/test_train_inference_python.sh configs/[model_name]/[params_file_name] [Mode]
例如,测试基本训练预测功能的lite_train_lite_infer
模式,运行:
# 准备数据
bash test_tipc/prepare.sh test_tipc/configs/DQN/train_infer_python.txt 'lite_train_lite_infer'
# 运行测试
bash test_tipc/test_train_inference_python.sh test_tipc/configs/DQN/train_infer_python.txt 'lite_train_lite_infer'
关于本示例命令的更多信息可查看基础训练预测使用文档。
在configs
目录下,按模型名称划分为子目录,子目录中存放所有该模型测试需要用到的配置文件,配置文件的命名遵循如下规范:
基础训练预测配置简单命名为:train_infer_python.txt
,表示Linux环境下单机、不使用混合精度训练+python预测,其完整命名对应train_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt
,由于本配置文件使用频率较高,这里进行了名称简化。
其他带训练配置命名格式为:train_训练硬件环境(linux_gpu/linux_dcu/…)_是否多机(fleet/normal)_是否混合精度(amp/normal)_预测模式(infer/lite/serving/js)_语言(cpp/python/java)_预测硬件环境(linux_gpu/mac/jetson/opencl_arm_gpu/...).txt
。如,linux gpu下多机多卡+混合精度链条测试对应配置 train_linux_gpu_fleet_amp_infer_python_linux_gpu_cpu.txt
,linux dcu下基础训练预测对应配置 train_linux_dcu_normal_normal_infer_python_linux_dcu.txt
。
仅预测的配置(如serving、lite等)命名格式:model_训练硬件环境(linux_gpu/linux_dcu/…)_是否多机(fleet/normal)_是否混合精度(amp/normal)_(infer/lite/serving/js)_语言(cpp/python/java)_预测硬件环境(linux_gpu/mac/jetson/opencl_arm_gpu/...).txt
,即,与2相比,仅第一个字段从train换为model,测试时模型直接下载获取,这里的“训练硬件环境”表示所测试的模型是在哪种环境下训练得到的。
根据上述命名规范,可以直接从子目录名称和配置文件名找到需要测试的场景和功能对应的配置文件。
各功能测试中涉及混合精度、裁剪、量化等训练相关,及mkldnn、Tensorrt等多种预测相关参数配置,请点击下方相应链接了解更多细节和使用教程:
PARL 是一个高性能、灵活的强化学习框架
Python C++ JavaScript Shell Markdown other
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》