Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
Paddle
提交
d6b062e8
P
Paddle
项目概览
BaiXuePrincess
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
d6b062e8
编写于
12月 15, 2022
作者:
Z
zyfncg
提交者:
GitHub
12月 15, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add validity check for config in yaml (#49049)
* add validity check for config in yaml * delete debug log
上级
ba422913
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
42 addition
and
2 deletion
+42
-2
paddle/fluid/operators/generator/parse_utils.py
paddle/fluid/operators/generator/parse_utils.py
+40
-0
paddle/phi/api/yaml/legacy_ops.yaml
paddle/phi/api/yaml/legacy_ops.yaml
+2
-2
未找到文件。
paddle/fluid/operators/generator/parse_utils.py
浏览文件 @
d6b062e8
...
...
@@ -276,11 +276,51 @@ def parse_forward(op_name: str, forward_config: str) -> Dict[str, Any]:
return
forward_cfg
def
check_op_config
(
op_entry
,
op_name
):
base_key_set
=
(
'op'
,
'backward_op'
,
'forward'
,
'args'
,
'output'
,
'infer_meta'
,
'kernel'
,
'backward'
,
'invoke'
,
'inplace'
,
'view'
,
'optional'
,
'intermediate'
,
'no_need_buffer'
,
'data_transform'
,
)
infer_meta_key_set
=
(
'func'
,
'param'
)
kernel_key_set
=
(
'func'
,
'param'
,
'data_type'
,
'layout'
,
'backend'
)
for
key
in
op_entry
.
keys
():
assert
(
key
in
base_key_set
),
f
"Op (
{
op_name
}
) : invalid key (
{
key
}
) in Yaml."
if
'infer_meta'
in
op_entry
:
for
infer_meta_key
in
op_entry
[
'infer_meta'
].
keys
():
assert
(
infer_meta_key
in
infer_meta_key_set
),
f
"Op (
{
op_name
}
) : invalid key (infer_meta.
{
infer_meta_key
}
) in Yaml."
if
'kernel'
in
op_entry
:
for
kernel_key
in
op_entry
[
'kernel'
].
keys
():
assert
(
kernel_key
in
kernel_key_set
),
f
"Op (
{
op_name
}
) : invalid key (kernel.
{
kernel_key
}
) in Yaml."
def
parse_op_entry
(
op_entry
:
Dict
[
str
,
Any
],
name_field
=
"op"
):
op_name
=
op_entry
[
name_field
]
inputs
,
attrs
=
parse_input_and_attr
(
op_name
,
op_entry
[
"args"
])
outputs
=
parse_outputs
(
op_name
,
op_entry
[
"output"
])
check_op_config
(
op_entry
,
op_name
)
# validate default value of DataType and DataLayout
for
attr
in
attrs
:
if
"default_value"
in
attr
:
...
...
paddle/phi/api/yaml/legacy_ops.yaml
浏览文件 @
d6b062e8
...
...
@@ -17,7 +17,7 @@
func
:
AccuracyInferMeta
kernel
:
func
:
accuracy
dtype
:
x
d
ata_
type
:
x
-
op
:
adadelta_
args
:
(Tensor param, Tensor grad, Tensor avg_squared_grad, Tensor avg_squared_update, float rho, float epsilon)
...
...
@@ -1132,9 +1132,9 @@
output
:
Tensor(solution), Tensor(residuals), Tensor(rank), Tensor(singular_values)
infer_meta
:
func
:
LstsqInferMeta
dtype
:
x
kernel
:
func
:
lstsq
data_type
:
x
-
op
:
lu
args
:
(Tensor x, bool pivot)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录