PaddleX 预置了丰富的模型,并提供了 Python API 调用接口,可以方便的集成到其他项目中,或是实现多模型串联,自定义产线。
首先需要安装 PaddleX 的 wheel 包,安装方式请参考 PaddleX 安装文档。
使用 Python API 调用模型进行预测,仅需几行代码,如下示例:
from paddlex import PaddleInferenceOption, create_model
model_name = "PP-LCNet_x1_0"
# 实例化 PaddleInferenceOption 设置推理配置
kernel_option = PaddleInferenceOption()
kernel_option.set_device("gpu")
# 调用 create_model 函数实例化预测模型
model = create_model(model_name=model_name, kernel_option=kernel_option)
# 调用预测模型 model 的 predict 方法进行预测
result = model.predict({'input_path': "https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_image_classification_001.jpg"})
具体来说,需要简单几步:1. 实例化 PaddleInferenceOption 进行推理相关设置;2. 调用 create_model 实例化预测模型对象;3. 调用预测模型对象的 predict 方法进行推理预测。
set_deivce:设置推理设备;
set_run_mode:设置推理后端;
set_cpu_threads:设置 CPU 加速库计算线程数,仅当推理设备使用 CPU 时候有效;
get_support_run_mode:获取支持的推理后端设置;
get_support_device:获取支持的运行设备类型
get_device:获取当前设置的设备;
predict:使用定义的预测模型,对输入数据进行预测;
{'input_path': 'a/b/c.jpg', 'image': ndarray(), 'cls_pred': [0.026 0.974], 'cls_result': [{'class_ids': [2, 1]}]},具体内容与模型及任务相关;get_input_keys:
['path', 'size'] 表示字典参数 input 必须包含 'path' 和 'size' 两个 key,如 [['input_path', 'size'], ['input_data']] 表示字典参数 input 必须包含 'input_path' 和 'size' 两个 key,或是包含 'input_data'。