(dy=None)
| 533 | finally: |
| 534 | tape.pop_tape(this_tape) |
| 535 | def vjp(dy=None): |
| 536 | if dy is not None: |
| 537 | dy = [ops.convert_to_tensor(x) for x in nest.flatten(dy)] |
| 538 | return imperative_grad.imperative_grad( |
| 539 | this_tape, nest.flatten(result), sources, output_gradients=dy) |
| 540 | |
| 541 | return result, vjp |
| 542 |