配置项 |
说明 |
使用场景 |
---|---|---|
input_shape |
输入的shape信息。 配置示例: custom_op.parameter_map["input_shape"].s = tf.compat.as_bytes("data:1,1,40,-1;label:1,-1;mask:-1,-1") 表示网络中有三个输入,输入的name分别为data,label,mask,各输入的shape分别为(1,1,40,-1),(1,-1),(-1,-1),name和shape之间以英文冒号分隔。其中-1表示该维度上为动态档位,需要通过dynamic_dims设置动态档位参数。 配置注意事项:
|
在线推理 |
dynamic_dims |
输入的对应维度的档位信息。档位中间使用英文分号分隔,每档中的dim值与input_shape参数中的-1标识的参数依次对应,input_shape参数中有几个-1,则每档必须设置几个维度。并且要求档位信息必须大于1组。 input_shape和dynamic_dims这两个参数的分档信息能够匹配,否则报错退出。 配置示例: custom_op.parameter_map["dynamic_dims"].s = tf.compat.as_bytes("20,20,1,1;40,40,2,2;80,60,4,4") 结合上面举例的input_shape信息,表示支持输入的shape为:
|
在线推理 |
dynamic_node_type |
指定动态输入的节点类型。
当前不支持dataset和placeholder输入同时为动态输入。
配置示例:
custom_op.parameter_map["dynamic_node_type"].i = 0 |
在线推理 |
dynamic_input |
当前网络的输入是否为动态输入,取值包括:
配置示例: custom_op.parameter_map["dynamic_input"].b = True
须知:
当存在不同输入shape的子图时,由于dynamic_inputs_shape_range是针对于单张图的配置属性,因此可能会导致执行异常,建议使用set_graph_exec_config以支持动态输入场景。 |
训练/在线推理 |
dynamic_graph_execute_mode |
对于动态输入场景,需要通过该参数设置执行模式,即dynamic_input为True时该参数生效。取值为: dynamic_execute:动态图编译模式。该模式下获取dynamic_inputs_shape_range中配置的shape范围进行编译。 配置示例: custom_op.parameter_map["dynamic_graph_execute_mode"].s = tf.compat.as_bytes("dynamic_execute")
须知:
当存在不同输入shape的子图时,由于dynamic_inputs_shape_range是针对于单张图的配置属性,因此可能会导致执行异常,建议使用set_graph_exec_config以支持动态输入场景。 |
训练/在线推理 |
dynamic_inputs_shape_range |
动态输入的shape范围。例如全图有3个输入,两个为dataset输入,一个为placeholder输入,则配置示例为: custom_op.parameter_map["dynamic_inputs_shape_range"].s = tf.compat.as_bytes("getnext:[128 ,3~5, 2~128, -1],[64 ,3~5, 2~128, -1];data:[128 ,3~5, 2~128, -1]") 使用注意事项:
|
训练/在线推理 |