Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
X2Paddle
提交
a393c7ee
X
X2Paddle
项目概览
PaddlePaddle
/
X2Paddle
大约 1 年 前同步成功
通知
328
Star
698
Fork
167
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
26
列表
看板
标记
里程碑
合并请求
4
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
X
X2Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
26
Issue
26
列表
看板
标记
里程碑
合并请求
4
合并请求
4
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
a393c7ee
编写于
8月 02, 2022
作者:
W
wjj19950828
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'upstream/develop' into support_autoscan_tests
上级
11f41a1c
6ecd7b76
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
154 addition
and
0 deletion
+154
-0
tests/onnx/test_auto_scan_elementwise_ops.py
tests/onnx/test_auto_scan_elementwise_ops.py
+82
-0
tests/onnx/test_auto_scan_mod.py
tests/onnx/test_auto_scan_mod.py
+69
-0
x2paddle/op_mapper/onnx2paddle/opset10.py
x2paddle/op_mapper/onnx2paddle/opset10.py
+2
-0
x2paddle/utils.py
x2paddle/utils.py
+1
-0
未找到文件。
tests/onnx/test_auto_scan_elementwise_ops.py
0 → 100644
浏览文件 @
a393c7ee
# Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from
auto_scan_test
import
OPConvertAutoScanTest
from
hypothesis
import
reproduce_failure
from
onnxbase
import
randtool
import
hypothesis.strategies
as
st
import
numpy
as
np
import
unittest
min_opset_version_map
=
{
"Add"
:
7
,
"Sub"
:
7
,
"Div"
:
7
,
"Mul"
:
7
,
"Pow"
:
7
,
"Max"
:
9
,
"Min"
:
9
,
}
class
TestElementwiseopsConvert
(
OPConvertAutoScanTest
):
"""
ONNX op: elementwise ops
OPset version: 7~15
"""
def
sample_convert_config
(
self
,
draw
):
input1_shape
=
draw
(
st
.
lists
(
st
.
integers
(
min_value
=
10
,
max_value
=
20
),
min_size
=
2
,
max_size
=
4
))
if
draw
(
st
.
booleans
()):
input2_shape
=
[
input1_shape
[
-
1
]]
else
:
input2_shape
=
input1_shape
def
generator_data
():
input_data
=
randtool
(
"float"
,
-
5.0
,
5.0
,
input2_shape
)
input_data
[
abs
(
input_data
)
<
1.0
]
=
1.0
return
input_data
input_dtype
=
draw
(
st
.
sampled_from
([
"float32"
,
"float64"
]))
config
=
{
"op_names"
:
[
"Add"
,
"Sub"
,
"Div"
,
"Mul"
,
"Pow"
,
"Max"
,
"Min"
],
"test_data_shapes"
:
[
input1_shape
,
generator_data
],
"test_data_types"
:
[[
input_dtype
],
[
input_dtype
]],
"inputs_shape"
:
[],
"min_opset_version"
:
7
,
"inputs_name"
:
[
"x"
,
"y"
],
"outputs_name"
:
[
"z"
],
"delta"
:
1e-4
,
"rtol"
:
1e-4
}
min_opset_versions
=
list
()
for
op_name
in
config
[
"op_names"
]:
min_opset_versions
.
append
(
min_opset_version_map
[
op_name
])
config
[
"min_opset_version"
]
=
min_opset_versions
attrs
=
{}
return
(
config
,
attrs
)
def
test
(
self
):
self
.
run_and_statis
(
max_examples
=
30
)
if
__name__
==
"__main__"
:
unittest
.
main
()
tests/onnx/test_auto_scan_mod.py
0 → 100644
浏览文件 @
a393c7ee
# Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from
auto_scan_test
import
OPConvertAutoScanTest
from
hypothesis
import
reproduce_failure
from
onnxbase
import
randtool
import
hypothesis.strategies
as
st
import
numpy
as
np
import
unittest
class
TestModConvert
(
OPConvertAutoScanTest
):
"""
ONNX op: Mod
OPset version: 10~15
"""
def
sample_convert_config
(
self
,
draw
):
input1_shape
=
draw
(
st
.
lists
(
st
.
integers
(
min_value
=
10
,
max_value
=
20
),
min_size
=
2
,
max_size
=
4
))
if
draw
(
st
.
booleans
()):
input2_shape
=
[
input1_shape
[
-
1
]]
else
:
input2_shape
=
input1_shape
def
generator_data
():
input_data
=
randtool
(
"float"
,
-
5.0
,
5.0
,
input2_shape
)
input_data
[
abs
(
input_data
)
<
1.0
]
=
1.0
return
input_data
input_dtype
=
draw
(
st
.
sampled_from
([
"int32"
,
"int64"
,
"float32"
,
"float64"
]))
config
=
{
"op_names"
:
[
"Mod"
],
"test_data_shapes"
:
[
input1_shape
,
generator_data
],
"test_data_types"
:
[[
input_dtype
],
[
input_dtype
]],
"inputs_shape"
:
[],
"min_opset_version"
:
10
,
"inputs_name"
:
[
"x"
,
"y"
],
"outputs_name"
:
[
"z"
],
"delta"
:
1e-4
,
"rtol"
:
1e-4
}
attrs
=
{
"fmod"
:
0
if
"int"
in
input_dtype
else
1
,
}
return
(
config
,
attrs
)
def
test
(
self
):
self
.
run_and_statis
(
max_examples
=
30
)
if
__name__
==
"__main__"
:
unittest
.
main
()
x2paddle/op_mapper/onnx2paddle/opset10.py
浏览文件 @
a393c7ee
...
...
@@ -32,3 +32,5 @@ def print_mapping_info(func):
class
OpSet10
(
OpSet9
):
def
__init__
(
self
,
decoder
,
paddle_graph
):
super
(
OpSet10
,
self
).
__init__
(
decoder
,
paddle_graph
)
# Support Mod op Since opset version >= 10
self
.
elementwise_ops
.
update
({
"Mod"
:
"paddle.mod"
})
x2paddle/utils.py
浏览文件 @
a393c7ee
...
...
@@ -83,6 +83,7 @@ class ConverterCheck(threading.Thread):
params
.
update
({
"extra"
:
json
.
dumps
(
extra
)})
try
:
logging
.
basicConfig
(
level
=
logging
.
INFO
)
requests
.
get
(
stats_api
,
params
,
timeout
=
2
)
except
Exception
:
pass
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录