mindspore 2.6.0rc1__cp311-cp311-win_amd64.whl → 2.7.0__cp311-cp311-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of mindspore might be problematic. Click here for more details.

Files changed (458) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
  3. mindspore/Newtonsoft.Json.dll +0 -0
  4. mindspore/__init__.py +2 -2
  5. mindspore/_c_dataengine.cp311-win_amd64.pyd +0 -0
  6. mindspore/_c_expression.cp311-win_amd64.pyd +0 -0
  7. mindspore/_c_mindrecord.cp311-win_amd64.pyd +0 -0
  8. mindspore/_checkparam.py +42 -11
  9. mindspore/_extends/builtin_operations.py +3 -3
  10. mindspore/{_deprecated → _extends/optimize}/__init__.py +9 -3
  11. mindspore/_extends/optimize/cell_utils.py +96 -0
  12. mindspore/_extends/parallel_compile/akg_compiler/custom.py +1109 -0
  13. mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
  14. mindspore/_extends/parse/__init__.py +3 -3
  15. mindspore/_extends/parse/compile_config.py +44 -22
  16. mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +1 -2
  17. mindspore/_extends/parse/parser.py +65 -84
  18. mindspore/_extends/parse/resources.py +39 -0
  19. mindspore/_extends/parse/standard_method.py +58 -14
  20. mindspore/_extends/parse/trope.py +8 -1
  21. mindspore/_extends/pijit/__init__.py +1 -2
  22. mindspore/_extends/pijit/pijit_func_white_list.py +2 -5
  23. mindspore/amp.py +4 -22
  24. mindspore/atlprov.dll +0 -0
  25. mindspore/avcodec-59.dll +0 -0
  26. mindspore/avdevice-59.dll +0 -0
  27. mindspore/avfilter-8.dll +0 -0
  28. mindspore/avformat-59.dll +0 -0
  29. mindspore/avutil-57.dll +0 -0
  30. mindspore/boost/adasum.py +1 -1
  31. mindspore/boost/boost_cell_wrapper.py +4 -4
  32. mindspore/c1.dll +0 -0
  33. mindspore/c1xx.dll +0 -0
  34. mindspore/c2.dll +0 -0
  35. mindspore/common/__init__.py +43 -12
  36. mindspore/common/_grad_function.py +2 -1
  37. mindspore/common/_pijit_context.py +28 -7
  38. mindspore/common/_stub_tensor.py +1 -209
  39. mindspore/common/_tensor_cpp_method.py +1 -1
  40. mindspore/common/_tensor_docs.py +178 -53
  41. mindspore/common/_utils.py +9 -1
  42. mindspore/common/api.py +377 -203
  43. mindspore/common/dtype.py +108 -57
  44. mindspore/common/dump.py +11 -16
  45. mindspore/common/dynamic_shape/__init__.py +0 -0
  46. mindspore/common/{auto_dynamic_shape.py → dynamic_shape/auto_dynamic_shape.py} +17 -23
  47. mindspore/common/dynamic_shape/enable_dynamic.py +197 -0
  48. mindspore/common/file_system.py +59 -9
  49. mindspore/common/generator.py +5 -3
  50. mindspore/common/hook_handle.py +33 -5
  51. mindspore/common/jit_config.py +1 -1
  52. mindspore/common/jit_trace.py +84 -105
  53. mindspore/common/np_dtype.py +3 -3
  54. mindspore/common/parameter.py +27 -29
  55. mindspore/common/recompute.py +5 -7
  56. mindspore/common/sparse_tensor.py +0 -3
  57. mindspore/common/symbol.py +0 -1
  58. mindspore/common/tensor.py +117 -131
  59. mindspore/communication/_comm_helper.py +46 -4
  60. mindspore/communication/management.py +79 -7
  61. mindspore/context.py +67 -55
  62. mindspore/dataset/__init__.py +1 -1
  63. mindspore/dataset/audio/transforms.py +1 -1
  64. mindspore/dataset/core/config.py +38 -4
  65. mindspore/dataset/engine/datasets.py +350 -322
  66. mindspore/dataset/engine/datasets_user_defined.py +70 -24
  67. mindspore/dataset/engine/iterators.py +2 -2
  68. mindspore/dataset/engine/obs/config_loader.py +2 -2
  69. mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +8 -0
  70. mindspore/dataset/transforms/c_transforms.py +2 -2
  71. mindspore/dataset/transforms/py_transforms.py +7 -3
  72. mindspore/dataset/transforms/transforms.py +10 -6
  73. mindspore/dataset/vision/__init__.py +1 -1
  74. mindspore/dataset/vision/py_transforms.py +8 -8
  75. mindspore/dataset/vision/transforms.py +17 -5
  76. mindspore/dataset/vision/utils.py +632 -21
  77. mindspore/dataset/vision/validators.py +1 -0
  78. mindspore/device_context/ascend/device.py +1 -1
  79. mindspore/device_context/ascend/op_tuning.py +35 -1
  80. mindspore/device_context/gpu/__init__.py +2 -2
  81. mindspore/device_context/gpu/device.py +1 -1
  82. mindspore/device_context/gpu/op_precision.py +4 -2
  83. mindspore/device_context/gpu/op_tuning.py +6 -3
  84. mindspore/device_manager.py +16 -9
  85. mindspore/dnnl.dll +0 -0
  86. mindspore/dpcmi.dll +0 -0
  87. mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +3 -4
  88. mindspore/experimental/llm_boost/atb/boost_base.py +2 -3
  89. mindspore/experimental/optim/adadelta.py +13 -20
  90. mindspore/experimental/optim/adagrad.py +15 -22
  91. mindspore/experimental/optim/adam.py +17 -24
  92. mindspore/experimental/optim/adamax.py +14 -22
  93. mindspore/experimental/optim/adamw.py +28 -34
  94. mindspore/experimental/optim/asgd.py +15 -25
  95. mindspore/experimental/optim/lr_scheduler.py +27 -45
  96. mindspore/experimental/optim/nadam.py +14 -24
  97. mindspore/experimental/optim/optimizer.py +13 -23
  98. mindspore/experimental/optim/radam.py +18 -24
  99. mindspore/experimental/optim/rmsprop.py +14 -25
  100. mindspore/experimental/optim/rprop.py +15 -26
  101. mindspore/experimental/optim/sgd.py +9 -19
  102. mindspore/hal/__init__.py +4 -4
  103. mindspore/hal/contiguous_tensors_handle.py +2 -2
  104. mindspore/hal/memory.py +27 -7
  105. mindspore/include/api/cell.h +65 -5
  106. mindspore/include/api/cfg.h +24 -7
  107. mindspore/include/api/context.h +1 -0
  108. mindspore/include/api/delegate.h +10 -2
  109. mindspore/include/api/dual_abi_helper.h +100 -19
  110. mindspore/include/api/graph.h +14 -1
  111. mindspore/include/api/kernel.h +16 -3
  112. mindspore/include/api/kernel_api.h +9 -1
  113. mindspore/include/api/metrics/accuracy.h +9 -0
  114. mindspore/include/api/model.h +8 -1
  115. mindspore/include/api/model_group.h +4 -0
  116. mindspore/include/api/model_parallel_runner.h +2 -0
  117. mindspore/include/api/status.h +48 -10
  118. mindspore/include/api/types.h +8 -3
  119. mindspore/include/c_api/model_c.h +0 -58
  120. mindspore/include/c_api/tensor_c.h +0 -26
  121. mindspore/include/dataset/constants.h +9 -0
  122. mindspore/include/dataset/vision_ascend.h +1 -1
  123. mindspore/jpeg62.dll +0 -0
  124. mindspore/mindrecord/tools/cifar10.py +61 -11
  125. mindspore/mindrecord/tools/cifar10_to_mr.py +5 -0
  126. mindspore/mindspore_backend_common.dll +0 -0
  127. mindspore/mindspore_backend_manager.dll +0 -0
  128. mindspore/mindspore_common.dll +0 -0
  129. mindspore/mindspore_core.dll +0 -0
  130. mindspore/mindspore_cpu_res_manager.dll +0 -0
  131. mindspore/mindspore_dump.dll +0 -0
  132. mindspore/mindspore_frontend.dll +0 -0
  133. mindspore/mindspore_glog.dll +0 -0
  134. mindspore/mindspore_memory_pool.dll +0 -0
  135. mindspore/mindspore_ms_backend.dll +0 -0
  136. mindspore/mindspore_ops.dll +0 -0
  137. mindspore/mindspore_ops_host.dll +0 -0
  138. mindspore/mindspore_ops_kernel_common.dll +0 -0
  139. mindspore/mindspore_profiler.dll +0 -0
  140. mindspore/mindspore_pyboost.dll +0 -0
  141. mindspore/mindspore_pynative.dll +0 -0
  142. mindspore/mindspore_res_manager.dll +0 -0
  143. mindspore/mindspore_runtime_pipeline.dll +0 -0
  144. mindspore/mint/__init__.py +6 -46
  145. mindspore/mint/distributed/__init__.py +5 -0
  146. mindspore/mint/distributed/distributed.py +429 -23
  147. mindspore/mint/nn/__init__.py +1 -1
  148. mindspore/mint/nn/functional.py +53 -6
  149. mindspore/mint/nn/layer/_functions.py +163 -294
  150. mindspore/mint/nn/layer/activation.py +8 -6
  151. mindspore/mint/nn/layer/conv.py +140 -104
  152. mindspore/mint/nn/layer/normalization.py +11 -25
  153. mindspore/mint/optim/adam.py +19 -18
  154. mindspore/mint/optim/adamw.py +14 -8
  155. mindspore/mint/optim/sgd.py +5 -5
  156. mindspore/msobj140.dll +0 -0
  157. mindspore/mspdb140.dll +0 -0
  158. mindspore/mspdbcore.dll +0 -0
  159. mindspore/mspdbst.dll +0 -0
  160. mindspore/mspft140.dll +0 -0
  161. mindspore/msvcdis140.dll +0 -0
  162. mindspore/msvcp140_1.dll +0 -0
  163. mindspore/msvcp140_2.dll +0 -0
  164. mindspore/msvcp140_atomic_wait.dll +0 -0
  165. mindspore/msvcp140_codecvt_ids.dll +0 -0
  166. mindspore/nn/cell.py +491 -623
  167. mindspore/nn/grad/cell_grad.py +11 -12
  168. mindspore/nn/layer/activation.py +36 -36
  169. mindspore/nn/layer/basic.py +74 -77
  170. mindspore/nn/layer/channel_shuffle.py +4 -4
  171. mindspore/nn/layer/combined.py +4 -2
  172. mindspore/nn/layer/conv.py +117 -110
  173. mindspore/nn/layer/dense.py +9 -7
  174. mindspore/nn/layer/embedding.py +50 -52
  175. mindspore/nn/layer/image.py +38 -40
  176. mindspore/nn/layer/math.py +111 -112
  177. mindspore/nn/layer/normalization.py +56 -44
  178. mindspore/nn/layer/pooling.py +58 -63
  179. mindspore/nn/layer/rnn_cells.py +33 -33
  180. mindspore/nn/layer/rnns.py +56 -56
  181. mindspore/nn/layer/thor_layer.py +74 -73
  182. mindspore/nn/layer/transformer.py +11 -1
  183. mindspore/nn/learning_rate_schedule.py +20 -20
  184. mindspore/nn/loss/loss.py +79 -81
  185. mindspore/nn/optim/adam.py +4 -6
  186. mindspore/nn/optim/adasum.py +2 -2
  187. mindspore/nn/optim/asgd.py +2 -0
  188. mindspore/nn/optim/lamb.py +1 -3
  189. mindspore/nn/optim/optimizer.py +1 -1
  190. mindspore/nn/optim/tft_wrapper.py +2 -3
  191. mindspore/nn/optim/thor.py +2 -2
  192. mindspore/nn/probability/distribution/_utils/utils.py +2 -2
  193. mindspore/nn/probability/distribution/exponential.py +2 -1
  194. mindspore/nn/probability/distribution/poisson.py +2 -1
  195. mindspore/nn/sparse/sparse.py +3 -3
  196. mindspore/nn/wrap/cell_wrapper.py +73 -42
  197. mindspore/nn/wrap/grad_reducer.py +37 -52
  198. mindspore/nn/wrap/loss_scale.py +72 -74
  199. mindspore/numpy/array_creations.py +7 -7
  200. mindspore/numpy/fft.py +1 -1
  201. mindspore/numpy/math_ops.py +5 -5
  202. mindspore/numpy/utils_const.py +1 -1
  203. mindspore/opencv_core452.dll +0 -0
  204. mindspore/opencv_imgcodecs452.dll +0 -0
  205. mindspore/opencv_imgproc452.dll +0 -0
  206. mindspore/ops/_grad_experimental/grad_comm_ops.py +51 -13
  207. mindspore/ops/_grad_experimental/grad_debug_ops.py +14 -0
  208. mindspore/ops/_grad_experimental/grad_inner_ops.py +0 -9
  209. mindspore/ops/_op_impl/cpu/__init__.py +1 -0
  210. mindspore/{experimental/es/__init__.py → ops/_op_impl/cpu/joinedstr_op.py} +12 -6
  211. mindspore/ops/_vmap/vmap_array_ops.py +31 -13
  212. mindspore/ops/_vmap/vmap_nn_ops.py +8 -16
  213. mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +54 -13
  214. mindspore/ops/auto_generate/gen_extend_func.py +27 -145
  215. mindspore/ops/auto_generate/gen_ops_def.py +1027 -347
  216. mindspore/ops/auto_generate/gen_ops_prim.py +2341 -1117
  217. mindspore/ops/auto_generate/pyboost_inner_prim.py +31 -1
  218. mindspore/ops/composite/__init__.py +10 -0
  219. mindspore/ops/composite/base.py +9 -5
  220. mindspore/ops/composite/multitype_ops/__init__.py +12 -1
  221. mindspore/ops/composite/multitype_ops/_compile_utils.py +133 -109
  222. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +1 -1
  223. mindspore/ops/composite/multitype_ops/add_impl.py +70 -2
  224. mindspore/ops/composite/multitype_ops/div_impl.py +49 -0
  225. mindspore/ops/composite/multitype_ops/floordiv_impl.py +29 -0
  226. mindspore/ops/composite/multitype_ops/getitem_impl.py +11 -0
  227. mindspore/ops/composite/multitype_ops/mod_impl.py +5 -3
  228. mindspore/ops/composite/multitype_ops/mul_impl.py +49 -0
  229. mindspore/ops/composite/multitype_ops/setitem_impl.py +57 -0
  230. mindspore/ops/composite/multitype_ops/sub_impl.py +34 -0
  231. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +14 -0
  232. mindspore/ops/function/__init__.py +4 -1
  233. mindspore/ops/function/_add_attr_func.py +11 -6
  234. mindspore/ops/function/array_func.py +19 -102
  235. mindspore/ops/function/debug_func.py +8 -5
  236. mindspore/ops/function/grad/grad_func.py +5 -13
  237. mindspore/ops/function/math_func.py +77 -572
  238. mindspore/ops/function/nn_func.py +46 -94
  239. mindspore/ops/function/other_func.py +4 -1
  240. mindspore/ops/function/random_func.py +44 -5
  241. mindspore/ops/function/vmap_func.py +2 -1
  242. mindspore/ops/functional.py +4 -4
  243. mindspore/ops/functional_overload.py +594 -18
  244. mindspore/ops/op_info_register.py +21 -0
  245. mindspore/ops/operations/__init__.py +16 -11
  246. mindspore/ops/operations/_custom_ops_utils.py +689 -34
  247. mindspore/ops/operations/_inner_ops.py +14 -18
  248. mindspore/ops/operations/_sequence_ops.py +1 -1
  249. mindspore/ops/operations/array_ops.py +5 -51
  250. mindspore/ops/operations/comm_ops.py +186 -41
  251. mindspore/ops/operations/custom_ops.py +303 -177
  252. mindspore/ops/operations/debug_ops.py +59 -4
  253. mindspore/ops/operations/image_ops.py +13 -13
  254. mindspore/ops/operations/manually_defined/ops_def.py +27 -28
  255. mindspore/ops/operations/math_ops.py +8 -9
  256. mindspore/ops/operations/nn_ops.py +8 -40
  257. mindspore/ops/primitive.py +9 -20
  258. mindspore/ops/tensor_method.py +63 -15
  259. mindspore/ops_generate/api/cpp_create_prim_instance_helper_generator.py +1 -1
  260. mindspore/ops_generate/api/functional_map_cpp_generator.py +10 -9
  261. mindspore/ops_generate/api/functions_cc_generator.py +58 -10
  262. mindspore/ops_generate/api/tensor_func_reg_cpp_generator.py +1 -1
  263. mindspore/ops_generate/common/base_generator.py +14 -0
  264. mindspore/ops_generate/common/gen_constants.py +8 -3
  265. mindspore/ops_generate/common/gen_utils.py +0 -19
  266. mindspore/ops_generate/common/op_proto.py +11 -4
  267. mindspore/ops_generate/common/template.py +88 -11
  268. mindspore/ops_generate/gen_ops.py +1 -1
  269. mindspore/ops_generate/op_def/lite_ops_cpp_generator.py +4 -4
  270. mindspore/ops_generate/op_def/ops_def_cc_generator.py +0 -3
  271. mindspore/ops_generate/op_def/ops_name_h_generator.py +0 -3
  272. mindspore/ops_generate/op_def/ops_primitive_h_generator.py +0 -4
  273. mindspore/ops_generate/op_def_py/op_prim_py_generator.py +5 -2
  274. mindspore/ops_generate/pyboost/auto_grad_impl_cc_generator.py +49 -8
  275. mindspore/ops_generate/pyboost/auto_grad_reg_cc_generator.py +2 -2
  276. mindspore/ops_generate/pyboost/gen_pyboost_func.py +31 -16
  277. mindspore/ops_generate/pyboost/op_template_parser.py +98 -72
  278. mindspore/ops_generate/pyboost/pyboost_functions_cpp_generator.py +70 -273
  279. mindspore/ops_generate/pyboost/pyboost_functions_h_generator.py +14 -6
  280. mindspore/ops_generate/pyboost/pyboost_functions_impl_cpp_generator.py +316 -0
  281. mindspore/ops_generate/pyboost/pyboost_functions_py_generator.py +1 -1
  282. mindspore/ops_generate/pyboost/pyboost_grad_function_cpp_generator.py +5 -3
  283. mindspore/ops_generate/pyboost/pyboost_inner_prim_generator.py +1 -1
  284. mindspore/ops_generate/pyboost/pyboost_internal_functions_cpp_generator.py +76 -0
  285. mindspore/ops_generate/pyboost/pyboost_internal_functions_h_generator.py +76 -0
  286. mindspore/ops_generate/pyboost/pyboost_internal_kernel_info_adapter_generator.py +125 -0
  287. mindspore/ops_generate/pyboost/pyboost_native_grad_functions_generator.py +4 -3
  288. mindspore/ops_generate/pyboost/pyboost_op_cpp_code_generator.py +348 -61
  289. mindspore/ops_generate/pyboost/pyboost_overload_functions_cpp_generator.py +1 -1
  290. mindspore/ops_generate/pyboost/pyboost_utils.py +118 -9
  291. mindspore/ops_generate/tensor_py_cc_generator.py +1 -24
  292. mindspore/parallel/_auto_parallel_context.py +16 -23
  293. mindspore/parallel/_cell_wrapper.py +113 -45
  294. mindspore/parallel/_parallel_serialization.py +4 -3
  295. mindspore/parallel/_ps_context.py +4 -6
  296. mindspore/parallel/_tensor.py +167 -12
  297. mindspore/parallel/_transformer/moe.py +1 -1
  298. mindspore/parallel/_transformer/transformer.py +17 -12
  299. mindspore/parallel/_utils.py +5 -11
  300. mindspore/parallel/auto_parallel.py +35 -14
  301. mindspore/parallel/checkpoint_convert.py +3 -3
  302. mindspore/parallel/checkpoint_transform.py +13 -7
  303. mindspore/parallel/cluster/process_entity/_api.py +88 -49
  304. mindspore/parallel/cluster/process_entity/_utils.py +95 -7
  305. mindspore/parallel/cluster/run.py +48 -7
  306. mindspore/parallel/function/__init__.py +8 -1
  307. mindspore/parallel/function/reshard_func.py +12 -12
  308. mindspore/parallel/nn/__init__.py +15 -2
  309. mindspore/parallel/nn/parallel_cell_wrapper.py +50 -14
  310. mindspore/parallel/nn/parallel_grad_reducer.py +7 -14
  311. mindspore/parallel/shard.py +10 -25
  312. mindspore/parallel/transform_safetensors.py +469 -174
  313. mindspore/pgodb140.dll +0 -0
  314. mindspore/pgort140.dll +0 -0
  315. mindspore/profiler/__init__.py +2 -1
  316. mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +7 -7
  317. mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +3 -0
  318. mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +12 -6
  319. mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +3 -3
  320. mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +3 -3
  321. mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +4 -4
  322. mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +3 -3
  323. mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +4 -1
  324. mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +2 -1
  325. mindspore/profiler/analysis/task_manager.py +1 -1
  326. mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +5 -1
  327. mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +2 -1
  328. mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +10 -9
  329. mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +43 -23
  330. mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +3 -2
  331. mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +9 -5
  332. mindspore/profiler/analysis/viewer/ms_operator_details_viewer.py +132 -0
  333. mindspore/profiler/common/constant.py +16 -0
  334. mindspore/profiler/common/msprof_cmd_tool.py +2 -2
  335. mindspore/profiler/common/path_manager.py +9 -0
  336. mindspore/profiler/common/profiler_context.py +50 -29
  337. mindspore/profiler/common/profiler_info.py +0 -16
  338. mindspore/profiler/common/profiler_meta_data.py +1 -0
  339. mindspore/profiler/common/profiler_op_analyse.py +239 -0
  340. mindspore/profiler/common/profiler_output_path.py +23 -8
  341. mindspore/profiler/common/profiler_parameters.py +128 -35
  342. mindspore/profiler/dynamic_profile/__init__.py +0 -0
  343. mindspore/profiler/dynamic_profile/dynamic_monitor_proxy.py +39 -0
  344. mindspore/profiler/dynamic_profile/dynamic_profiler_config_context.py +666 -0
  345. mindspore/profiler/dynamic_profile/dynamic_profiler_utils.py +62 -0
  346. mindspore/profiler/dynamic_profiler.py +374 -338
  347. mindspore/profiler/envprofiler.py +42 -12
  348. mindspore/profiler/experimental_config.py +112 -7
  349. mindspore/profiler/mstx.py +33 -12
  350. mindspore/profiler/platform/__init__.py +2 -3
  351. mindspore/profiler/platform/cpu_profiler.py +10 -4
  352. mindspore/profiler/platform/npu_profiler.py +30 -20
  353. mindspore/profiler/profiler.py +218 -154
  354. mindspore/profiler/profiler_action_controller.py +65 -77
  355. mindspore/profiler/profiler_interface.py +2 -2
  356. mindspore/profiler/schedule.py +10 -4
  357. mindspore/rewrite/common/config.py +1 -0
  358. mindspore/rewrite/common/namer.py +1 -0
  359. mindspore/rewrite/common/namespace.py +1 -0
  360. mindspore/rewrite/node/node.py +31 -11
  361. mindspore/rewrite/parsers/assign_parser.py +1 -1
  362. mindspore/rewrite/symbol_tree/symbol_tree.py +2 -2
  363. mindspore/run_check/_check_version.py +7 -10
  364. mindspore/runtime/__init__.py +8 -6
  365. mindspore/runtime/event.py +10 -4
  366. mindspore/runtime/executor.py +87 -45
  367. mindspore/runtime/memory.py +31 -32
  368. mindspore/runtime/thread_bind_core.py +299 -165
  369. mindspore/safeguard/rewrite_obfuscation.py +12 -13
  370. mindspore/swresample-4.dll +0 -0
  371. mindspore/swscale-6.dll +0 -0
  372. mindspore/tbbmalloc.dll +0 -0
  373. mindspore/tinyxml2.dll +0 -0
  374. mindspore/train/_utils.py +17 -7
  375. mindspore/train/amp.py +43 -23
  376. mindspore/train/callback/__init__.py +5 -5
  377. mindspore/train/callback/_callback.py +2 -1
  378. mindspore/train/callback/_checkpoint.py +4 -14
  379. mindspore/train/callback/_flops_collector.py +11 -7
  380. mindspore/train/callback/_landscape.py +0 -1
  381. mindspore/train/callback/_train_fault_tolerance.py +98 -21
  382. mindspore/train/data_sink.py +15 -6
  383. mindspore/train/dataset_helper.py +14 -5
  384. mindspore/train/model.py +133 -69
  385. mindspore/train/serialization.py +168 -126
  386. mindspore/train/summary/summary_record.py +13 -2
  387. mindspore/train/train_thor/model_thor.py +2 -2
  388. mindspore/turbojpeg.dll +0 -0
  389. mindspore/utils/__init__.py +3 -2
  390. mindspore/utils/dryrun.py +0 -6
  391. mindspore/utils/runtime_execution_order_check.py +163 -77
  392. mindspore/utils/sdc_detect.py +68 -0
  393. mindspore/utils/utils.py +14 -17
  394. mindspore/vcmeta.dll +0 -0
  395. mindspore/vcruntime140.dll +0 -0
  396. mindspore/vcruntime140_1.dll +0 -0
  397. mindspore/version.py +1 -1
  398. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/METADATA +5 -4
  399. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/RECORD +403 -442
  400. mindspore/_deprecated/jit.py +0 -198
  401. mindspore/_extends/remote/kernel_build_server_ascend.py +0 -75
  402. mindspore/communication/_hccl_management.py +0 -297
  403. mindspore/experimental/es/embedding_service.py +0 -891
  404. mindspore/experimental/es/embedding_service_layer.py +0 -581
  405. mindspore/profiler/common/validator/__init__.py +0 -14
  406. mindspore/profiler/common/validator/validate_path.py +0 -84
  407. mindspore/profiler/parser/__init__.py +0 -14
  408. mindspore/profiler/parser/aicpu_data_parser.py +0 -272
  409. mindspore/profiler/parser/ascend_analysis/__init__.py +0 -14
  410. mindspore/profiler/parser/ascend_analysis/constant.py +0 -71
  411. mindspore/profiler/parser/ascend_analysis/file_manager.py +0 -180
  412. mindspore/profiler/parser/ascend_analysis/function_event.py +0 -185
  413. mindspore/profiler/parser/ascend_analysis/fwk_cann_parser.py +0 -136
  414. mindspore/profiler/parser/ascend_analysis/fwk_file_parser.py +0 -131
  415. mindspore/profiler/parser/ascend_analysis/msprof_timeline_parser.py +0 -104
  416. mindspore/profiler/parser/ascend_analysis/path_manager.py +0 -313
  417. mindspore/profiler/parser/ascend_analysis/profiler_info_parser.py +0 -123
  418. mindspore/profiler/parser/ascend_analysis/tlv_decoder.py +0 -86
  419. mindspore/profiler/parser/ascend_analysis/trace_event_manager.py +0 -75
  420. mindspore/profiler/parser/ascend_cluster_generator.py +0 -116
  421. mindspore/profiler/parser/ascend_communicate_generator.py +0 -314
  422. mindspore/profiler/parser/ascend_flops_generator.py +0 -116
  423. mindspore/profiler/parser/ascend_fpbp_generator.py +0 -82
  424. mindspore/profiler/parser/ascend_hccl_generator.py +0 -271
  425. mindspore/profiler/parser/ascend_integrate_generator.py +0 -42
  426. mindspore/profiler/parser/ascend_memory_generator.py +0 -185
  427. mindspore/profiler/parser/ascend_msprof_exporter.py +0 -282
  428. mindspore/profiler/parser/ascend_msprof_generator.py +0 -187
  429. mindspore/profiler/parser/ascend_op_generator.py +0 -334
  430. mindspore/profiler/parser/ascend_steptrace_generator.py +0 -94
  431. mindspore/profiler/parser/ascend_timeline_generator.py +0 -545
  432. mindspore/profiler/parser/base_timeline_generator.py +0 -483
  433. mindspore/profiler/parser/container.py +0 -229
  434. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +0 -697
  435. mindspore/profiler/parser/flops_parser.py +0 -531
  436. mindspore/profiler/parser/framework_enum.py +0 -111
  437. mindspore/profiler/parser/framework_parser.py +0 -464
  438. mindspore/profiler/parser/framework_struct.py +0 -61
  439. mindspore/profiler/parser/gpu_analysis/__init__.py +0 -14
  440. mindspore/profiler/parser/gpu_analysis/function_event.py +0 -44
  441. mindspore/profiler/parser/gpu_analysis/fwk_file_parser.py +0 -89
  442. mindspore/profiler/parser/gpu_analysis/profiler_info_parser.py +0 -72
  443. mindspore/profiler/parser/hccl_parser.py +0 -573
  444. mindspore/profiler/parser/hwts_log_parser.py +0 -122
  445. mindspore/profiler/parser/integrator.py +0 -526
  446. mindspore/profiler/parser/memory_usage_parser.py +0 -277
  447. mindspore/profiler/parser/minddata_analyzer.py +0 -800
  448. mindspore/profiler/parser/minddata_parser.py +0 -186
  449. mindspore/profiler/parser/minddata_pipeline_parser.py +0 -299
  450. mindspore/profiler/parser/op_intermediate_parser.py +0 -149
  451. mindspore/profiler/parser/optime_parser.py +0 -250
  452. mindspore/profiler/parser/profiler_info.py +0 -213
  453. mindspore/profiler/parser/step_trace_parser.py +0 -666
  454. mindspore/utils/hooks.py +0 -81
  455. /mindspore/common/{_auto_dynamic.py → dynamic_shape/_auto_dynamic.py} +0 -0
  456. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/WHEEL +0 -0
  457. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/entry_points.txt +0 -0
  458. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/top_level.txt +0 -0
@@ -48,140 +48,111 @@ typedef bool (*MSKernelCallBackC)(const MSTensorHandleArray inputs, const MSTens
48
48
  const MSCallBackParamC kernel_Info);
49
49
 
50
50
  /// \brief Create a model object.
51
- ///
52
51
  /// \return Model object handle.
53
52
  MS_API MSModelHandle MSModelCreate();
54
53
 
55
54
  /// \brief Destroy the model object.
56
- ///
57
55
  /// \param[in] model Model object handle address.
58
56
  MS_API void MSModelDestroy(MSModelHandle *model);
59
57
 
60
58
  /// \brief Set workspace for the model object. Only valid for Iot.
61
- ///
62
59
  /// \param[in] model Model object handle.
63
60
  /// \param[in] workspace Define the workspace address.
64
61
  /// \param[in] workspace_size Define the workspace size.
65
62
  MS_API void MSModelSetWorkspace(MSModelHandle model, void *workspace, size_t workspace_size);
66
63
 
67
64
  /// \brief Calculate the workspace size required for model inference. Only valid for Iot.
68
- ///
69
65
  /// \param[in] model Model object handle.
70
66
  MS_API size_t MSModelCalcWorkspaceSize(MSModelHandle model);
71
67
 
72
68
  /// \brief Build the model from model file buffer so that it can run on a device.
73
- ///
74
69
  /// \param[in] model Model object handle.
75
70
  /// \param[in] model_data Define the buffer read from a model file.
76
71
  /// \param[in] data_size Define bytes number of model file buffer.
77
72
  /// \param[in] model_type Define The type of model file.
78
73
  /// \param[in] model_context Define the context used to store options during execution.
79
- ///
80
74
  /// \return MSStatus.
81
75
  MS_API MSStatus MSModelBuild(MSModelHandle model, const void *model_data, size_t data_size, MSModelType model_type,
82
76
  const MSContextHandle model_context);
83
77
 
84
78
  /// \brief Load and build the model from model path so that it can run on a device.
85
- ///
86
79
  /// \param[in] model Model object handle.
87
80
  /// \param[in] model_path Define the model file path.
88
81
  /// \param[in] model_type Define The type of model file.
89
82
  /// \param[in] model_context Define the context used to store options during execution.
90
- ///
91
83
  /// \return MSStatus.
92
84
  MS_API MSStatus MSModelBuildFromFile(MSModelHandle model, const char *model_path, MSModelType model_type,
93
85
  const MSContextHandle model_context);
94
86
 
95
87
  /// \brief Resize the shapes of inputs.
96
- ///
97
88
  /// \param[in] model Model object handle.
98
89
  /// \param[in] inputs The array that includes all input tensor handles.
99
90
  /// \param[in] shape_infos Defines the new shapes of inputs, should be consistent with inputs.
100
91
  /// \param[in] shape_info_num The num of shape_infos.
101
- ///
102
92
  /// \return MSStatus.
103
93
  MS_API MSStatus MSModelResize(MSModelHandle model, const MSTensorHandleArray inputs, MSShapeInfo *shape_infos,
104
94
  size_t shape_info_num);
105
95
 
106
96
  /// \brief Inference model.
107
- ///
108
97
  /// \param[in] model Model object handle.
109
98
  /// \param[in] inputs The array that includes all input tensor handles.
110
99
  /// \param[out] outputs The array that includes all output tensor handles.
111
100
  /// \param[in] before CallBack before predict.
112
101
  /// \param[in] after CallBack after predict.
113
- ///
114
102
  /// \return MSStatus.
115
103
  MS_API MSStatus MSModelPredict(MSModelHandle model, const MSTensorHandleArray inputs, MSTensorHandleArray *outputs,
116
104
  const MSKernelCallBackC before, const MSKernelCallBackC after);
117
105
 
118
106
  /// \brief Run model by step. Only valid for Iot.
119
- ///
120
107
  /// \param[in] model Model object handle.
121
108
  /// \param[in] before CallBack before RunStep.
122
109
  /// \param[in] after CallBack after RunStep.
123
- ///
124
110
  /// \return MSStatus.
125
111
  MS_API MSStatus MSModelRunStep(MSModelHandle model, const MSKernelCallBackC before, const MSKernelCallBackC after);
126
112
 
127
113
  /// \brief Set the model running mode. Only valid for Iot.
128
- ///
129
114
  /// \param[in] model Model object handle.
130
115
  /// \param[in] train True means model runs in Train Mode, otherwise Eval Mode.
131
- ///
132
116
  /// \return Status of operation.
133
117
  MS_API MSStatus MSModelSetTrainMode(const MSModelHandle model, bool train);
134
118
 
135
119
  /// \brief Export the weights of model to the binary file. Only valid for Iot.
136
- ///
137
120
  /// \param[in] model Model object handle.
138
121
  /// \param[in] export_path Define the export weight file path.
139
- ///
140
122
  /// \return Status of operation.
141
123
  MS_API MSStatus MSModelExportWeight(const MSModelHandle model, const char *export_path);
142
124
 
143
125
  /// \brief Obtain all input tensor handles of the model.
144
- ///
145
126
  /// \param[in] model Model object handle.
146
- ///
147
127
  /// \return The array that includes all input tensor handles.
148
128
  MS_API MSTensorHandleArray MSModelGetInputs(const MSModelHandle model);
149
129
 
150
130
  /// \brief Obtain all output tensor handles of the model.
151
- ///
152
131
  /// \param[in] model Model object handle.
153
- ///
154
132
  /// \return The array that includes all output tensor handles.
155
133
  MS_API MSTensorHandleArray MSModelGetOutputs(const MSModelHandle model);
156
134
 
157
135
  /// \brief Obtain the input tensor handle of the model by name.
158
- ///
159
136
  /// \param[in] model Model object handle.
160
137
  /// \param[in] tensor_name The name of tensor.
161
- ///
162
138
  /// \return The input tensor handle with the given name, if the name is not found, an NULL is returned.
163
139
  MS_API MSTensorHandle MSModelGetInputByTensorName(const MSModelHandle model, const char *tensor_name);
164
140
 
165
141
  /// \brief Obtain the output tensor handle of the model by name.
166
- ///
167
142
  /// \param[in] model Model object handle.
168
143
  /// \param[in] tensor_name The name of tensor.
169
- ///
170
144
  /// \return The output tensor handle with the given name, if the name is not found, an NULL is returned.
171
145
  MS_API MSTensorHandle MSModelGetOutputByTensorName(const MSModelHandle model, const char *tensor_name);
172
146
 
173
147
  /// \brief Create a TrainCfg object. Only valid for Lite Train.
174
- ///
175
148
  /// \return TrainCfg object handle.
176
149
  MS_API MSTrainCfgHandle MSTrainCfgCreate();
177
150
 
178
151
  /// \brief Destroy the train_cfg object. Only valid for Lite Train.
179
- ///
180
152
  /// \param[in] train_cfg TrainCfg object handle.
181
153
  MS_API void MSTrainCfgDestroy(MSTrainCfgHandle *train_cfg);
182
154
 
183
155
  /// \brief Obtains part of the name that identify a loss kernel. Only valid for Lite Train.
184
- ///
185
156
  /// \param[in] train_cfg TrainCfg object handle.
186
157
  /// \param[in] num The num of loss_name.
187
158
  ///
@@ -189,112 +160,88 @@ MS_API void MSTrainCfgDestroy(MSTrainCfgHandle *train_cfg);
189
160
  MS_API char **MSTrainCfgGetLossName(MSTrainCfgHandle train_cfg, size_t *num);
190
161
 
191
162
  /// \brief Set part of the name that identify a loss kernel. Only valid for Lite Train.
192
- ///
193
163
  /// \param[in] train_cfg TrainCfg object handle.
194
164
  /// \param[in] loss_name define part of the name that identify a loss kernel.
195
165
  /// \param[in] num The num of loss_name.
196
166
  MS_API void MSTrainCfgSetLossName(MSTrainCfgHandle train_cfg, const char **loss_name, size_t num);
197
167
 
198
168
  /// \brief Obtains optimization level of the train_cfg. Only valid for Lite Train.
199
- ///
200
169
  /// \param[in] train_cfg TrainCfg object handle.
201
- ///
202
170
  /// \return MSOptimizationLevel.
203
171
  MS_API MSOptimizationLevel MSTrainCfgGetOptimizationLevel(MSTrainCfgHandle train_cfg);
204
172
 
205
173
  /// \brief Set optimization level of the train_cfg. Only valid for Lite Train.
206
- ///
207
174
  /// \param[in] train_cfg TrainCfg object handle.
208
175
  /// \param[in] level The optimization level of train_cfg.
209
176
  MS_API void MSTrainCfgSetOptimizationLevel(MSTrainCfgHandle train_cfg, MSOptimizationLevel level);
210
177
 
211
178
  /// \brief Build the train model from model buffer so that it can run on a device. Only valid for Lite Train.
212
- ///
213
179
  /// \param[in] model Model object handle.
214
180
  /// \param[in] model_data Define the buffer read from a model file.
215
181
  /// \param[in] data_size Define bytes number of model file buffer.
216
182
  /// \param[in] model_type Define The type of model file.
217
183
  /// \param[in] model_context Define the context used to store options during execution.
218
184
  /// \param[in] train_cfg Define the config used by training.
219
- ///
220
185
  /// \return MSStatus.
221
186
  MS_API MSStatus MSTrainModelBuild(MSModelHandle model, const void *model_data, size_t data_size, MSModelType model_type,
222
187
  const MSContextHandle model_context, const MSTrainCfgHandle train_cfg);
223
188
 
224
189
  /// \brief Build the train model from model file buffer so that it can run on a device. Only valid for Lite Train.
225
- ///
226
190
  /// \param[in] model Model object handle.
227
191
  /// \param[in] model_path Define the model path.
228
192
  /// \param[in] model_type Define The type of model file.
229
193
  /// \param[in] model_context Define the context used to store options during execution.
230
194
  /// \param[in] train_cfg Define the config used by training.
231
- ///
232
195
  /// \return MSStatus.
233
196
  MS_API MSStatus MSTrainModelBuildFromFile(MSModelHandle model, const char *model_path, MSModelType model_type,
234
197
  const MSContextHandle model_context, const MSTrainCfgHandle train_cfg);
235
198
 
236
199
  /// \brief Train model by step. Only valid for Lite Train.
237
- ///
238
200
  /// \param[in] model Model object handle.
239
201
  /// \param[in] before CallBack before predict.
240
202
  /// \param[in] after CallBack after predict.
241
- ///
242
203
  /// \return MSStatus.
243
204
  MS_API MSStatus MSRunStep(MSModelHandle model, const MSKernelCallBackC before, const MSKernelCallBackC after);
244
205
 
245
206
  /// \brief Sets the Learning Rate of the training. Only valid for Lite Train.
246
- ///
247
207
  /// \param[in] learning_rate to set.
248
- ///
249
208
  /// \return MSStatus of operation.
250
209
  MS_API MSStatus MSModelSetLearningRate(MSModelHandle model, float learning_rate);
251
210
 
252
211
  /// \brief Obtains the Learning Rate of the optimizer. Only valid for Lite Train.
253
- ///
254
212
  /// \return Learning rate. 0.0 if no optimizer was found.
255
213
  MS_API float MSModelGetLearningRate(MSModelHandle model);
256
214
 
257
215
  /// \brief Obtains all weights tensors of the model. Only valid for Lite Train.
258
- ///
259
216
  /// \param[in] model Model object handle.
260
- ///
261
217
  /// \return The vector that includes all gradient tensors.
262
218
  MS_API MSTensorHandleArray MSModelGetWeights(MSModelHandle model);
263
219
 
264
220
  /// \brief update weights tensors of the model. Only valid for Lite Train.
265
- ///
266
221
  /// \param[in] new_weights A vector new weights.
267
- ///
268
222
  /// \return MSStatus
269
223
  MS_API MSStatus MSModelUpdateWeights(MSModelHandle model, const MSTensorHandleArray new_weights);
270
224
 
271
225
  /// \brief Get the model running mode.
272
- ///
273
226
  /// \param[in] model Model object handle.
274
- ///
275
227
  /// \return Is Train Mode or not.
276
228
  MS_API bool MSModelGetTrainMode(MSModelHandle model);
277
229
 
278
230
  /// \brief Set the model running mode. Only valid for Lite Train.
279
- ///
280
231
  /// \param[in] model Model object handle.
281
232
  /// \param[in] train True means model runs in Train Mode, otherwise Eval Mode.
282
- ///
283
233
  /// \return MSStatus.
284
234
  MS_API MSStatus MSModelSetTrainMode(MSModelHandle model, bool train);
285
235
 
286
236
  /// \brief Setup training with virtual batches. Only valid for Lite Train.
287
- ///
288
237
  /// \param[in] model Model object handle.
289
238
  /// \param[in] virtual_batch_multiplier - virtual batch multiplier, use any number < 1 to disable.
290
239
  /// \param[in] lr - learning rate to use for virtual batch, -1 for internal configuration.
291
240
  /// \param[in] momentum - batch norm momentum to use for virtual batch, -1 for internal configuration.
292
- ///
293
241
  /// \return MSStatus.
294
242
  MS_API MSStatus MSModelSetupVirtualBatch(MSModelHandle model, int virtual_batch_multiplier, float lr, float momentum);
295
243
 
296
244
  /// \brief Export training model from file. Only valid for Lite Train.
297
- ///
298
245
  /// \param[in] model The model data.
299
246
  /// \param[in] model_type The model file type.
300
247
  /// \param[in] model_file The exported model file.
@@ -303,14 +250,12 @@ MS_API MSStatus MSModelSetupVirtualBatch(MSModelHandle model, int virtual_batch_
303
250
  /// \param[in] output_tensor_name The set the name of the output tensor of the exported reasoning model, default as
304
251
  /// empty, and export the complete reasoning model.
305
252
  /// \param[in] num The number of output_tensor_name.
306
- ///
307
253
  /// \return MSStatus.
308
254
  MS_API MSStatus MSExportModel(MSModelHandle model, MSModelType model_type, const char *model_file,
309
255
  MSQuantizationType quantization_type, bool export_inference_only,
310
256
  char **output_tensor_name, size_t num);
311
257
 
312
258
  /// \brief Export training model from buffer. Only valid for Lite Train.
313
- ///
314
259
  /// \param[in] model The model data.
315
260
  /// \param[in] model_type The model file type.
316
261
  /// \param[in] model_data The exported model buffer.
@@ -320,14 +265,12 @@ MS_API MSStatus MSExportModel(MSModelHandle model, MSModelType model_type, const
320
265
  /// \param[in] output_tensor_name The set the name of the output tensor of the exported reasoning model, default as
321
266
  /// empty, and export the complete reasoning model.
322
267
  /// \param[in] num The number of output_tensor_name.
323
- ///
324
268
  /// \return MSStatus.
325
269
  MS_API MSStatus MSExportModelBuffer(MSModelHandle model, MSModelType model_type, char **model_data, size_t *data_size,
326
270
  MSQuantizationType quantization_type, bool export_inference_only,
327
271
  char **output_tensor_name, size_t num);
328
272
 
329
273
  /// \brief Export model's weights, which can be used in micro only. Only valid for Lite Train.
330
- ///
331
274
  /// \param[in] model The model data.
332
275
  /// \param[in] model_type The model file type.
333
276
  /// \param[in] weight_file The path of exported weight file.
@@ -335,7 +278,6 @@ MS_API MSStatus MSExportModelBuffer(MSModelHandle model, MSModelType model_type,
335
278
  /// \param[in] enable_fp16 Float-weight is whether to be saved in float16 format.
336
279
  /// \param[in] changeable_weights_name The set the name of these weight tensors, whose shape is changeable.
337
280
  /// \param[in] num The number of changeable_weights_name.
338
- ///
339
281
  /// \return MSStatus.
340
282
  MS_API MSStatus MSExportWeightsCollaborateWithMicro(MSModelHandle model, MSModelType model_type,
341
283
  const char *weight_file, bool is_inference, bool enable_fp16,
@@ -28,115 +28,89 @@ extern "C" {
28
28
  typedef void *MSTensorHandle;
29
29
 
30
30
  /// \brief Create a tensor object.
31
- ///
32
31
  /// \param[in] name The name of the tensor.
33
32
  /// \param[in] type The data type of the tensor.
34
33
  /// \param[in] shape The shape of the tensor.
35
34
  /// \param[in] shape_num The num of the shape.
36
35
  /// \param[in] data The data pointer that points to allocated memory.
37
36
  /// \param[in] data_len The length of the memory, in bytes.
38
- ///
39
37
  /// \return Tensor object handle.
40
38
  MS_API MSTensorHandle MSTensorCreate(const char *name, MSDataType type, const int64_t *shape, size_t shape_num,
41
39
  const void *data, size_t data_len);
42
40
 
43
41
  /// \brief Destroy the tensor object.
44
- ///
45
42
  /// \param[in] tensor Tensor object handle address.
46
43
  MS_API void MSTensorDestroy(MSTensorHandle *tensor);
47
44
 
48
45
  /// \brief Obtain a deep copy of the tensor.
49
- ///
50
46
  /// \param[in] tensor Tensor object handle.
51
- ///
52
47
  /// \return Tensor object handle.
53
48
  MS_API MSTensorHandle MSTensorClone(MSTensorHandle tensor);
54
49
 
55
50
  /// \brief Set the name for the tensor.
56
- ///
57
51
  /// \param[in] tensor Tensor object handle.
58
52
  /// \param[in] name The name of the tensor.
59
53
  MS_API void MSTensorSetName(MSTensorHandle tensor, const char *name);
60
54
 
61
55
  /// \brief Obtain the name of the tensor.
62
- ///
63
56
  /// \param[in] tensor Tensor object handle.
64
- ///
65
57
  /// \return The name of the tensor.
66
58
  MS_API const char *MSTensorGetName(const MSTensorHandle tensor);
67
59
 
68
60
  /// \brief Set the data type for the tensor.
69
- ///
70
61
  /// \param[in] tensor Tensor object handle.
71
62
  /// \param[in] type The data type of the tensor.
72
63
  MS_API void MSTensorSetDataType(MSTensorHandle tensor, MSDataType type);
73
64
 
74
65
  /// \brief Obtain the data type of the tensor.
75
- ///
76
66
  /// \param[in] tensor Tensor object handle.
77
- ///
78
67
  /// \return The date type of the tensor.
79
68
  MS_API MSDataType MSTensorGetDataType(const MSTensorHandle tensor);
80
69
 
81
70
  /// \brief Set the shape for the tensor.
82
- ///
83
71
  /// \param[in] tensor Tensor object handle.
84
72
  /// \param[in] shape The shape array.
85
73
  /// \param[in] shape_num Dimension of shape.
86
74
  MS_API void MSTensorSetShape(MSTensorHandle tensor, const int64_t *shape, size_t shape_num);
87
75
 
88
76
  /// \brief Obtain the shape of the tensor.
89
- ///
90
77
  /// \param[in] tensor Tensor object handle.
91
78
  /// \param[out] shape_num Dimension of shape.
92
- ///
93
79
  /// \return The shape array of the tensor.
94
80
  MS_API const int64_t *MSTensorGetShape(const MSTensorHandle tensor, size_t *shape_num);
95
81
 
96
82
  /// \brief Set the format for the tensor.
97
- ///
98
83
  /// \param[in] tensor Tensor object handle.
99
84
  /// \param[in] format The format of the tensor.
100
85
  MS_API void MSTensorSetFormat(MSTensorHandle tensor, MSFormat format);
101
86
 
102
87
  /// \brief Obtain the format of the tensor.
103
- ///
104
88
  /// \param[in] tensor Tensor object handle.
105
- ///
106
89
  /// \return The format of the tensor.
107
90
  MS_API MSFormat MSTensorGetFormat(const MSTensorHandle tensor);
108
91
 
109
92
  /// \brief Obtain the data for the tensor.
110
- ///
111
93
  /// \param[in] tensor Tensor object handle.
112
94
  /// \param[in] data A pointer to the data of the tensor.
113
95
  MS_API void MSTensorSetData(MSTensorHandle tensor, void *data);
114
96
 
115
97
  /// \brief Obtain the data pointer of the tensor.
116
- ///
117
98
  /// \param[in] tensor Tensor object handle.
118
- ///
119
99
  /// \return The data pointer of the tensor.
120
100
  MS_API const void *MSTensorGetData(const MSTensorHandle tensor);
121
101
 
122
102
  /// \brief Obtain the mutable data pointer of the tensor. If the internal data is empty, it will allocate memory.
123
- ///
124
103
  /// \param[in] tensor Tensor object handle.
125
- ///
126
104
  /// \return The data pointer of the tensor.
127
105
  MS_API void *MSTensorGetMutableData(const MSTensorHandle tensor);
128
106
 
129
107
  /// \brief Obtain the element number of the tensor.
130
- ///
131
108
  /// \param[in] tensor Tensor object handle.
132
- ///
133
109
  /// \return The element number of the tensor.
134
110
  MS_API int64_t MSTensorGetElementNum(const MSTensorHandle tensor);
135
111
 
136
112
  /// \brief Obtain the data size fo the tensor.
137
- ///
138
113
  /// \param[in] tensor Tensor object handle.
139
- ///
140
114
  /// \return The data size of the tensor.
141
115
  MS_API size_t MSTensorGetDataSize(const MSTensorHandle tensor);
142
116
 
@@ -356,6 +356,15 @@ constexpr int32_t kMaxLegalPort = 65535;
356
356
  // Invalid OpenCV type should not be from 0 to 7 (opencv4/opencv2/core/hal/interface.h)
357
357
  constexpr uint8_t kCVInvalidType = 255;
358
358
 
359
+ constexpr size_t dimension_zero = 0;
360
+ constexpr size_t dimension_one = 1;
361
+ constexpr size_t dimension_two = 2;
362
+ constexpr size_t dimension_three = 3;
363
+ constexpr size_t size_one = 1;
364
+ constexpr size_t size_two = 2;
365
+ constexpr size_t size_three = 3;
366
+ constexpr size_t size_four = 4;
367
+
359
368
  using connection_id_type = uint64_t;
360
369
  using session_id_type = uint32_t;
361
370
  using row_id_type = int64_t;
@@ -31,7 +31,7 @@ namespace mindspore {
31
31
  namespace dataset {
32
32
  // Transform operations for performing computer vision.
33
33
  namespace vision {
34
- /* ##################################### API class ###########################################*/
34
+ /* ##################################### API class ########################################### */
35
35
 
36
36
  /// \brief Decode and resize JPEG image using the hardware algorithm of
37
37
  /// Ascend series chip DVPP module.
mindspore/jpeg62.dll CHANGED
Binary file
@@ -15,24 +15,73 @@
15
15
  """
16
16
  Cifar10 reader class.
17
17
  """
18
- import builtins
18
+ import hashlib
19
19
  import io
20
+ import os
20
21
  import pickle
21
22
  import re
22
- import os
23
23
  import numpy as np
24
24
 
25
+ from mindspore import log as logger
25
26
  from ..shardutils import check_filename
26
27
 
27
28
  __all__ = ['Cifar10']
28
29
 
29
- safe_builtins = {
30
- 'range',
31
- 'complex',
32
- 'set',
33
- 'frozenset',
34
- 'slice',
35
- }
30
+
31
+ class CifarMD5Validator:
32
+ '''
33
+ MD5 check for cifar10-batch-py files
34
+ '''
35
+ def __init__(self):
36
+ self.md5_map = {'data_batch_1': 'c99cafc152244af753f735de768cd75f',
37
+ 'data_batch_2': 'd4bba439e000b95fd0a9bffe97cbabec',
38
+ 'data_batch_3': '54ebc095f3ab1f0389bbae665268c751',
39
+ 'data_batch_4': '634d18415352ddfa80567beed471001a',
40
+ 'data_batch_5': '482c414d41f54cd18b22e5b47cb7c3cb',
41
+ 'test_batch': '40351d587109b95175f43aff81a1287e'}
42
+
43
+ @staticmethod
44
+ def calculate_md5(file_path):
45
+ """
46
+ Calculate MD5 hash of a file.
47
+
48
+ Args:
49
+ file_path (str): Path to the file to calculate MD5 for.
50
+
51
+ Returns:
52
+ MD5 hash string if successful, None otherwise.
53
+ """
54
+ try:
55
+ with open(file_path, 'rb') as f:
56
+ file_hash = hashlib.md5()
57
+ chunk = f.read(8192)
58
+ while chunk:
59
+ file_hash.update(chunk)
60
+ chunk = f.read(8192)
61
+ return file_hash.hexdigest()
62
+ except (IOError, OSError):
63
+ return None
64
+
65
+ def check(self, file_path, file_name):
66
+ """
67
+ Check if the file's MD5 matches the expected value.
68
+
69
+ Args:
70
+ file_path (str): Path to the file to check.
71
+ file_name (str): Key in md5_map to identify the expected MD5.
72
+
73
+ Returns:
74
+ True if MD5 matches, False otherwise (including if file doesn't exist).
75
+
76
+ Raises:
77
+ KeyError: If file_name is not found in md5_map.
78
+ """
79
+ expected_md5 = self.md5_map.get(file_name)
80
+ actual_md5 = CifarMD5Validator.calculate_md5(os.path.join(file_path, file_name))
81
+
82
+ if actual_md5 is None or expected_md5 is None or actual_md5 != expected_md5:
83
+ logger.warning(f"The MD5 value of {file_name} does not match the official CIFAR10 file."
84
+ "This file may pose a security risk.")
36
85
 
37
86
 
38
87
  class RestrictedUnpickler(pickle.Unpickler):
@@ -44,8 +93,6 @@ class RestrictedUnpickler(pickle.Unpickler):
44
93
  """
45
94
  def find_class(self, module, name):
46
95
  # Only allow safe classes from builtins and numpy
47
- if module == "builtins" and name in safe_builtins:
48
- return getattr(builtins, name)
49
96
  if module == "numpy.core.multiarray" and name == "_reconstruct":
50
97
  return getattr(np.core.multiarray, name)
51
98
  if module == "numpy":
@@ -89,6 +136,7 @@ class Cifar10:
89
136
  self.one_hot = one_hot
90
137
  self.images = None
91
138
  self.labels = None
139
+ self.validator = CifarMD5Validator()
92
140
 
93
141
  def load_data(self):
94
142
  """
@@ -104,12 +152,14 @@ class Cifar10:
104
152
  for file in files:
105
153
  if re.match("data_batch_*", file):
106
154
  real_file_path = os.path.realpath(self.path)
155
+ self.validator.check(real_file_path, file)
107
156
  with open(os.path.join(real_file_path, file), 'rb') as f: # load train data
108
157
  dic = restricted_loads(f.read())
109
158
  images = np.r_[images, dic[b"data"].reshape([-1, 3, 32, 32])]
110
159
  labels.append(dic[b"labels"])
111
160
  elif re.match("test_batch", file): # load test data
112
161
  real_file_path = os.path.realpath(self.path)
162
+ self.validator.check(real_file_path, file)
113
163
  with open(os.path.join(real_file_path, file), 'rb') as f:
114
164
  dic = restricted_loads(f.read())
115
165
  test_images = np.array(dic[b"data"].reshape([-1, 3, 32, 32]))
@@ -107,6 +107,11 @@ class Cifar10ToMR:
107
107
  Note:
108
108
  Please refer to the Examples of :class:`mindspore.mindrecord.Cifar10ToMR` .
109
109
 
110
+ .. warning::
111
+ `Cifar10ToMR.transform()` uses `pickle` module implicitly, which is known to be insecure.
112
+ It is possible to construct malicious pickle data which will execute arbitrary code during unpickling.
113
+ Never load data that could have come from an untrusted source, or that could have been tampered with.
114
+
110
115
  Args:
111
116
  fields (list[str], optional): A list of index fields. Default: ``None`` . For index field settings,
112
117
  please refer to :func:`mindspore.mindrecord.FileWriter.add_index` .
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file