Skip to content

Commit 7473b1f

Browse files
authored
Merge pull request #7586 from JiayiFeng/update_error_clip_doc
update_error_clip_doc
2 parents f98720a + 079a760 commit 7473b1f

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

doc/design/error_clip.md

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,12 @@ class ErrorClipByValue(BaseErrorClipAttr):
4646
self.min = min
4747

4848
def append_clip_op(self, block, grad_name):
49-
block.append_op(
50-
type="clip",
51-
inputs={"X": grad_name},
52-
outputs={"Out": grad_name},
53-
attrs={"min": self.min,
54-
"max": self.max})
49+
clip_op_desc = block.desc.append_op()
50+
clip_op_desc.set_type("clip")
51+
clip_op_desc.set_input("X", [grad_name])
52+
clip_op_desc.set_output("Out", [grad_name])
53+
clip_op_desc.set_attr("min", self.min)
54+
clip_op_desc.set_attr("max", self.max)
5555
```
5656

5757
The `BaseErrorClipAttr` have one main member functions: `append_clip_op(self, block, grad_name)`.
@@ -80,6 +80,11 @@ def error_clip_callback(block, context):
8080
op_desc.output_arg_names()):
8181
fwd_var = block.var_recursive(grad_to_var[grad_n])
8282
error_clip = getattr(fwd_var, "error_clip", None)
83+
if not (error_clip is None or isinstance(error_clip,
84+
BaseErrorClipAttr)):
85+
raise TypeError(
86+
"Variable's error_clip should be an instance of BaseErrorClipAttr or None."
87+
)
8388
if error_clip is not None:
8489
error_clip.append_clip_op(block, grad_n)
8590
```

0 commit comments

Comments
 (0)