Paddle 3.3.0 PaddleDetection2.9.0 export ppyoloe+ model error
status/new-issuetype/bug-report
### bug描述 Describe the Bug
环境
```
cuda12.8
RTX5060
Window10
paddlepadle-gpu 3.3.0
PaddleDetection 2.9.0
```
导出命令
```
cd PaddleDetection
python tools/export_model.py ^
-c configs/ppyoloe/ppyoloe_plus_crn_l_80e_coco.yml ^
--output_dir=output/inference_model ^
-o weights=../models/ppyoloe/ppyoloe_plus_crn_l_80e_coco.pdparams
```
报错如下
```
PaddleDetection_2_9_0>python tools/export_model.py ^
More? -c configs/ppyoloe/ppyoloe_plus_crn_l_80e_coco.yml ^
More? --output_dir=output/inference_model ^
More? -o weights=../models/ppyoloe/ppyoloe_plus_crn_l_80e_coco.pdparams
信息: 用提供的模式无法找到文件。
[05/11 14:23:03] ppdet.utils.checkpoint INFO: Skipping import of the encryption module.
[05/11 14:23:08] ppdet.utils.checkpoint INFO: Finish loading model weights: ../models/ppyoloe/ppyoloe_plus_crn_l_80e_coco.pdparams
W0511 14:23:12.831914 25436 eager_utils.cc:3584] Paddle static graph(PIR) not support input out tensor for now!!!!!
[05/11 14:23:18] ppdet.data.source.category WARNING: anno_file 'dataset/coco\annotations/instances_val2017.json' is None or not set or not exist, please recheck TrainDataset/EvalDataset/TestDataset.anno_path, otherwise the default categories will be used by metric_type.
[05/11 14:23:18] ppdet.data.source.category WARNING: metric_type: COCO, load default categories of COCO.
[05/11 14:23:18] ppdet.engine INFO: Export inference config file to output/inference_model\ppyoloe_plus_crn_l_80e_coco\infer_cfg.yml
[05/11 14:23:18] ppdet.engine INFO: Skipping import of the encryption module.
Traceback (most recent call last):
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\tools\export_model.py", line 121, in <module>
main()
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\tools\export_model.py", line 118, in main
run(FLAGS, cfg)
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\tools\export_model.py", line 80, in run
trainer.export(FLAGS.output_dir, for_fd=FLAGS.for_fd)
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\engine\trainer.py", line 1458, in export
static_model, pruned_input_spec = self._model_to_static(
^^^^^^^^^^^^^^^^^^^^^^
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\engine\trainer.py", line 1299, in _model_to_static
input_spec, static_model.forward.main_program,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\program_translator.py", line 1101, in main_program
concrete_program = self.concrete_program
^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\program_translator.py", line 985, in concrete_program
return self.concrete_program_specify_input_spec(input_spec=None)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\program_translator.py", line 1029, in concrete_program_specify_input_spec
concrete_program, _ = self.get_concrete_program(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\program_translator.py", line 918, in get_concrete_program
concrete_program, partial_program_layer = self._program_cache[
^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\program_translator.py", line 1690, in __getitem__
self._caches[item_id] = self._build_once(item)
^^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\program_translator.py", line 1635, in _build_once
concrete_program = ConcreteProgram.from_func_spec(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\base\wrapped_decorator.py", line 50, in wrapper
return decorated(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\base\dygraph\base.py", line 114, in __impl__
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\program_translator.py", line 1407, in from_func_spec
error_data.raise_new_exception()
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\jit\dy2static\error.py", line 454, in raise_new_exception
raise new_exception from None
TypeError: In transformed code:
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\architectures\meta_arch.py", line 55, in forward
if self.training:
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\architectures\meta_arch.py", line 65, in forward
for inp in inputs_list:
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\architectures\meta_arch.py", line 69, in forward
outs.append(self.get_pred())
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\architectures\yolo.py", line 150, in get_pred
return self._forward()
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\architectures\yolo.py", line 92, in _forward
if self.training:
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\architectures\yolo.py", line 101, in _forward
yolo_head_outs = self.yolo_head(neck_feats)
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\heads\ppyoloe_head.py", line 277, in forward
if self.training:
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\heads\ppyoloe_head.py", line 288, in forward
return self.forward_eval(feats)
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\heads\ppyoloe_head.py", line 242, in forward_eval
for i, feat in enumerate(feats):
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\heads\ppyoloe_head.py", line 249, in forward_eval
cls_logit = self.pred_cls[i](self.stem_cls[i](feat, avg_feat) +
File "G:\paddle\paddle_3_x_test\PaddleDetection_2_9_0\ppdet\modeling\heads\ppyoloe_head.py", line 50, in forward
def forward(self, feat, avg_feat):
weight = F.sigmoid(self.fc(avg_feat))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
if self.conv:
return self.conv(feat * weight)
File "G:\mytest\cu128_pt271_py311_env\Lib\site-packages\paddle\base\dygraph\generated_tensor_methods_patch.py", line 106, in _sigmoid
return _C_ops.sigmoid(*args, **kwargs)
TypeError: (InvalidType) sigmoid(): argument (position 1) must be Value, but got Variable (at ..\paddle\fluid\pybind\eager_utils.cc:2313)
```
@jzhang533 @claude @wanglun @lileding @newway 大佬们,请教一下,这是什么原因,有没有解决方法?我看有些是说将paddlepaddle-gpu降到2.6.2,但是paddlepaddle-gpu==2.6.2不支持rtx50显卡!能不能直接在paddlepaddle-gpu3.3.0版本修复?
### 其他补充信息 Additional Supplementary Information
_No response_
5 条评论