"erf", "sign", "isnan", "gather", "arange", "masked_fill", "index_fill", "index_copy", "repeat_interleave", "isnan", "any", "all", ] for block_listed_op in block_listed_operators: vars()[block_listed_op] = symbolic_helper._block_list_in_opset(block_listed_op) vars()[block_listed_op].__module__ = "torch.onnx.symbolic_opset8" def _interpolate(name, dim, interpolate_mode): def symbolic_fn(g, input, output_size, *args): scales, align_corners = symbolic_helper._get_interpolate_attributes( g, interpolate_mode, args ) symbolic_helper._interpolate_warning(interpolate_mode) align_corners = symbolic_helper._maybe_get_scalar(align_corners) if align_corners: return symbolic_helper._unimplemented(name, "align_corners == True") output_size = symbolic_helper._maybe_get_const(output_size, "is") if symbolic_helper._is_value(output_size): return symbolic_helper._unimplemented(
# MeanVarianceNormalization # # Updated operators: # BatchNormalization: removed spatial attribute. # Greater, Less, Constant, MatMul, PRelu, Gemm, Flatten: more data types{integers} supported. # Cast: more data types{string} supported. # Upsample: moved scales from attribute to input. # Scan block_listed_operators = [ "nonzero", "where", "scatter", "scatter_add", "erf", "sign", "isnan", "gather", "arange", "masked_fill", "index_fill", "index_copy" ] for block_listed_op in block_listed_operators: vars()[block_listed_op] = _block_list_in_opset(block_listed_op) def _interpolate(name, dim, interpolate_mode): def symbolic_fn(g, input, output_size, *args): scales, align_corners = sym_help._get_interpolate_attributes( g, interpolate_mode, args) sym_help._interpolate_warning(interpolate_mode) align_corners = sym_help._maybe_get_scalar(align_corners) if align_corners: return _unimplemented(name, "align_corners == True") output_size = sym_help._maybe_get_const(output_size, 'is') if sym_help._is_value(output_size): return _unimplemented(name, "torch._C.Value (output_size) indexing") if scales is None: