// @generated by update_schema.py // checksum<<0e870e558fb4362f69b825842ab606cf0becd10a008003ac676156becf20b65b>> namespace py3 torch._export namespace cpp2 torch._export.schema enum ArgumentKind { UNKNOWN = 0, POSITIONAL = 1, KEYWORD = 2, } enum Layout { Unknown = 0, SparseCoo = 1, SparseCsr = 2, SparseCsc = 3, SparseBsr = 4, SparseBsc = 5, _mkldnn = 6, Strided = 7, } enum MemoryFormat { Unknown = 0, ContiguousFormat = 1, ChannelsLast = 2, ChannelsLast3d = 3, PreserveFormat = 4, } enum ScalarType { UNKNOWN = 0, BYTE = 1, CHAR = 2, SHORT = 3, INT = 4, LONG = 5, HALF = 6, FLOAT = 7, DOUBLE = 8, COMPLEXHALF = 9, COMPLEXFLOAT = 10, COMPLEXDOUBLE = 11, BOOL = 12, BFLOAT16 = 13, UINT16 = 28, FLOAT8E4M3FN = 29, FLOAT8E5M2 = 30, FLOAT8E4M3FNUZ = 31, FLOAT8E5M2FNUZ = 32, } struct Device { 10: string type; 20: optional i64 index; } union SymExprHint { 10: i64 as_int; 20: bool as_bool; 30: double as_float; } struct SymExpr { 10: string expr_str; 20: optional SymExprHint hint; } union SymInt { 10: SymExpr as_expr; 20: i64 as_int; } union SymFloat { 10: SymExpr as_expr; 20: double as_float; } union SymBool { 10: SymExpr as_expr; 20: bool as_bool; } struct TensorMeta { 10: ScalarType dtype; 20: list sizes; 30: bool requires_grad; 40: Device device; 50: list strides; 60: SymInt storage_offset; 70: Layout layout; } union SymIntArgument { 10: string as_name; 20: i64 as_int; } union SymFloatArgument { 10: string as_name; 20: double as_float; } union SymBoolArgument { 10: string as_name; 20: bool as_bool; } struct TensorArgument { 10: string name; } struct TokenArgument { 10: string name; } union OptionalTensorArgument { 20: TensorArgument as_tensor; 10: bool as_none; } struct GraphArgument { 10: string name; 20: Graph graph; } struct CustomObjArgument { 10: string name; 20: string class_fqn; } struct ComplexValue { 10: double real; 20: double imag; } union Argument { 10: bool as_none; 20: TensorArgument as_tensor; 30: list as_tensors; 50: i64 as_int; 70: list as_ints; 80: double as_float; 90: list as_floats; 100: string as_string; 101: list as_strings; 110: SymIntArgument as_sym_int; 120: list as_sym_ints; 130: ScalarType as_scalar_type; 140: MemoryFormat as_memory_format; 150: Layout as_layout; 160: Device as_device; 170: bool as_bool; 180: list as_bools; 182: SymBoolArgument as_sym_bool; 184: list as_sym_bools; 200: GraphArgument as_graph; 190: list as_optional_tensors; 210: CustomObjArgument as_custom_obj; 220: string as_operator; 230: SymFloatArgument as_sym_float; 240: list as_sym_floats; 250: OptionalTensorArgument as_optional_tensor; 260: ComplexValue as_complex; 280: list> as_int_lists; 290: map as_string_to_argument; } struct NamedArgument { 10: string name; 20: Argument arg; 30: optional ArgumentKind kind; } struct Node { 10: string target; 20: list inputs; 30: list outputs; 40: map metadata; 50: optional bool is_hop_single_tensor_return; } struct Graph { 10: list inputs; 20: list outputs; 30: list nodes; 40: map tensor_values; 50: map sym_int_values; 60: map sym_bool_values; 70: bool is_single_tensor_return; 80: map custom_obj_values; 90: map sym_float_values; } struct UserInputSpec { 10: Argument arg; } union ConstantValue { 10: bool as_none; 20: i64 as_int; 30: double as_float; 40: string as_string; 50: bool as_bool; } struct InputToConstantInputSpec { 10: string name; 20: ConstantValue value; } struct InputToParameterSpec { 10: TensorArgument arg; 20: string parameter_name; } struct InputToBufferSpec { 10: TensorArgument arg; 20: string buffer_name; 30: bool persistent; } struct InputToTensorConstantSpec { 10: TensorArgument arg; 20: string tensor_constant_name; } struct InputToCustomObjSpec { 10: CustomObjArgument arg; 20: string custom_obj_name; } struct InputTokenSpec { 10: TokenArgument arg; } union InputSpec { 10: UserInputSpec user_input; 20: InputToParameterSpec parameter; 30: InputToBufferSpec buffer; 40: InputToTensorConstantSpec tensor_constant; 50: InputToCustomObjSpec custom_obj; 70: InputTokenSpec token; 60: InputToConstantInputSpec constant_input; } struct UserOutputSpec { 10: Argument arg; } struct LossOutputSpec { 10: TensorArgument arg; } struct BufferMutationSpec { 10: TensorArgument arg; 20: string buffer_name; } struct ParameterMutationSpec { 10: TensorArgument arg; 20: string parameter_name; } struct GradientToParameterSpec { 10: TensorArgument arg; 20: string parameter_name; } struct GradientToUserInputSpec { 10: TensorArgument arg; 20: string user_input_name; } struct UserInputMutationSpec { 10: TensorArgument arg; 20: string user_input_name; } struct OutputTokenSpec { 10: TokenArgument arg; } union OutputSpec { 10: UserOutputSpec user_output; 20: LossOutputSpec loss_output; 30: BufferMutationSpec buffer_mutation; 40: GradientToParameterSpec gradient_to_parameter; 50: GradientToUserInputSpec gradient_to_user_input; 60: UserInputMutationSpec user_input_mutation; 70: OutputTokenSpec token; 80: ParameterMutationSpec parameter_mutation; } struct GraphSignature { 10: list input_specs; 20: list output_specs; } struct RangeConstraint { 10: optional i64 min_val; 20: optional i64 max_val; } struct ModuleCallSignature { 10: list inputs; 20: list outputs; 30: string in_spec; 40: string out_spec; 50: optional list forward_arg_names; } struct ModuleCallEntry { 10: string fqn; 30: optional ModuleCallSignature signature; } struct NamedTupleDef { 10: list field_names; } struct GraphModule { 10: Graph graph; 50: GraphSignature signature; 60: list module_call_graph; 40: map metadata; 70: map treespec_namedtuple_fields; } struct SchemaVersion { 10: i64 major; 20: i64 minor; } struct ExportedProgram { 10: GraphModule graph_module; 20: map opset_version; 30: map range_constraints; 60: SchemaVersion schema_version; 70: list verifiers; 80: string torch_version; 90: list guards_code; } struct PayloadMeta { 10: string path_name; 20: bool is_param; 30: bool use_pickle; 40: optional TensorMeta tensor_meta; } struct PayloadConfig { 10: map config; } struct AOTInductorModelPickleData { 1: string library_basename; 2: list input_names; 3: list output_names; 4: optional i64 floating_point_input_dtype; 5: optional i64 floating_point_output_dtype; 6: optional bool aot_inductor_model_is_cpu; } struct ExternKernelNode { 10: string name; 20: Node node; } struct ExternKernelNodes { 10: list nodes; }