Mmengine

Latest version: v0.10.7

Safety actively analyzes 714973 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 5

0.8.3

Highlights

- Support enabling `efficient_conv_bn_eval` for efficient convolution and batch normalization. See [save memory on gpu](https://mmengine.readthedocs.io/en/latest/common_usage/save_gpu_memory.html#save-memory-on-gpu) for more details
- Add [Llama2 finetune example](https://github.com/open-mmlab/mmengine/tree/main/examples/llama2)
- Support multi-node distributed training with MLU backend

New Features & Enhancements

- Enable `efficient_conv_bn_eval` for memory saving convolution and batch normalization by [youkaichao](https://github.com/youkaichao) in https://github.com/open-mmlab/mmengine/pull/1202, https://github.com/open-mmlab/mmengine/pull/1251 and https://github.com/open-mmlab/mmengine/pull/1259
- Add Llama2 example by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1264
- Compare the difference of two configs by [gachiemchiep](https://github.com/gachiemchiep) in https://github.com/open-mmlab/mmengine/pull/1260
- Enable explicit error for deepspeed not installed by [Li-Qingyun](https://github.com/Li-Qingyun) in https://github.com/open-mmlab/mmengine/pull/1240
- Support skipping initialization in `BaseModule` by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1263
- Add parameter `save_begin` to control when to save checkpoints by [KerwinKai](https://github.com/KerwinKai) in https://github.com/open-mmlab/mmengine/pull/1271
- Support multi-node distributed training with MLU backend by [josh6688](https://github.com/josh6688) in https://github.com/open-mmlab/mmengine/pull/1266
- Enhance error message thrown by Config, build function and `ConfigDict.items` by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1272, https://github.com/open-mmlab/mmengine/pull/1270 and https://github.com/open-mmlab/mmengine/pull/1088
- Add the `loop_stage` runtime information in `message_hub` by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1277
- Fix Visualizer that built `vis_backends` will not be used when `save_dir` is `None` by [Xinyu302](https://github.com/Xinyu302) in https://github.com/open-mmlab/mmengine/pull/1275

Bug fixes

- Fix scalar check in RuntimeInfoHook by [i-aki-y](https://github.com/i-aki-y) in https://github.com/open-mmlab/mmengine/pull/1250
- Move data preprocessor to target device in FSDPStrategy by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1261

Docs

- Add ecosystem in README by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1247
- Add short explanation about registry scope by [mmeendez8](https://github.com/mmeendez8) in https://github.com/open-mmlab/mmengine/pull/1114
- Add the data flow of Runner in README by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1257
- Introduce how to customize distributed training settings [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1279

New Contributors
* youkaichao made their first contribution in https://github.com/open-mmlab/mmengine/pull/1202
* mmeendez8 made their first contribution in https://github.com/open-mmlab/mmengine/pull/1114
* Xinyu302 made their first contribution in https://github.com/open-mmlab/mmengine/pull/1275

**Full Changelog**: https://github.com/open-mmlab/mmengine/compare/v0.8.2...v0.8.3

0.8.2

Bug fixes

- Fix pickling the Python style config by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1241
- Fix the logic of setting `lazy_import` by [Li-Qingyun](https://github.com/Li-Qingyun) in https://github.com/open-mmlab/mmengine/pull/1239

New Contributors
* Li-Qingyun made their first contribution in https://github.com/open-mmlab/mmengine/pull/1239

**Full Changelog**: https://github.com/open-mmlab/mmengine/compare/v0.8.1...v0.8.2

0.8.1

New Features & Enhancements

- Accelerate `Config.dump` and support converting Lazyxxx to string in `ConfigDict.to_dict`by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1232

Bug fixes

- FSDP should call `_get_ignored_modules` by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1235

Docs

- Add a document to introduce how to train a large model by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1228


**Full Changelog**: https://github.com/open-mmlab/mmengine/compare/v0.8.0...v0.8.1

0.8.0

Highlights

- Support training with [FSDP](https://pytorch.org/tutorials/intermediate/FSDP_adavnced_tutorial.html?highlight=fsdp) and [DeepSpeed](https://www.deepspeed.ai/). Refer to the [example](https://github.com/open-mmlab/mmengine/blob/main/examples/distributed_training_with_flexible_runner.py) for more detailed usages.

- Introduce the pure Python style configuration file:

- Support navigating to base configuration file in IDE
- Support navigating to base variable in IDE
- Support navigating to source code of class in IDE
- Support inheriting two configuration files containing the same field
- Load the configuration file without other third-party requirements

Refer to the [tutorial](https://mmengine.readthedocs.io/en/latest/advanced_tutorials/config.html#a-pure-python-style-configuration-file-beta) for more detailed usages.

![new-config-en](https://github.com/open-mmlab/mmengine/assets/57566630/7eb41748-9374-488f-901e-fcd7f0d3c8a1)

New Features & Enhancements

- Support training with FSDP by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1213
- Add `FlexibleRunner` and `Strategies`, and support training with DeepSpeed by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1183
- Support pure Python style configuration file by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1071
- Learning rate in log can show the base learning rate of optimizer by [AkideLiu](https://github.com/AkideLiu) in https://github.com/open-mmlab/mmengine/pull/1019
- Refine the error message when auto_scale_lr is not set correctly by [alexander-soare](https://github.com/alexander-soare) in https://github.com/open-mmlab/mmengine/pull/1181
- WandbVisBackend supports updating config by [zgzhengSEU](https://github.com/zgzhengSEU) in https://github.com/open-mmlab/mmengine/pull/977

Bug fixes

- CheckpointHook should check whether file exists before removing it by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1198
- Fix undefined variable error in Runner by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1219

Docs

- Add a document to introduce how to debug with vscode by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1212
- Update English introduction by [evdcush](https://github.com/evdcush) in https://github.com/open-mmlab/mmengine/pull/1189
- Fix parameter typing error in document by [syo093c](https://github.com/syo093c) in https://github.com/open-mmlab/mmengine/pull/1201
- Fix gpu collection during evaluation by [edkair](https://github.com/edkair) in https://github.com/open-mmlab/mmengine/pull/1208
- Fix a comment in runner tutorial by [joihn](https://github.com/joihn) in https://github.com/open-mmlab/mmengine/pull/1210

New Contributors
* alexander-soare made their first contribution in https://github.com/open-mmlab/mmengine/pull/1181
* zgzhengSEU made their first contribution in https://github.com/open-mmlab/mmengine/pull/977
* AkideLiu made their first contribution in https://github.com/open-mmlab/mmengine/pull/1019
* syo093c made their first contribution in https://github.com/open-mmlab/mmengine/pull/1201
* edkair made their first contribution in https://github.com/open-mmlab/mmengine/pull/1208
* joihn made their first contribution in https://github.com/open-mmlab/mmengine/pull/1210

**Full Changelog**: https://github.com/open-mmlab/mmengine/compare/v0.7.4...v0.8.0

0.7.4

Highlights

- Support using `ClearML` to record experiment data
- Add `Sophia` optimizers

New Features & Enhancements

- Add visualize backend for clearml by [gachiemchiep](https://github.com/gachiemchiep) in https://github.com/open-mmlab/mmengine/pull/1091
- Support Sophia optimizers by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1170
- Refactor unittest syncbuffer by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/813
- Allow `ann_file`, `data_root` is `None` for `BaseDataset` by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/850
- Enable full precision training on Ascend NPU by [Ginray](https://github.com/Ginray) in https://github.com/open-mmlab/mmengine/pull/1109
- Creating a text classification example by [TankNee](https://github.com/TankNee) in https://github.com/open-mmlab/mmengine/pull/1122
- Add option to log selected config only by [KickCellarDoor](https://github.com/KickCellarDoor) in https://github.com/open-mmlab/mmengine/pull/1159
- Add an option to control whether to show progress bar in BaseInference by [W-ZN](https://github.com/W-ZN) in https://github.com/open-mmlab/mmengine/pull/1135
- Support dipu device by [CokeDong](https://github.com/CokeDong) in https://github.com/open-mmlab/mmengine/pull/1127
- Let unit tests not affect each other by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1169
- Add support for full wandb's `define_metric` arguments by [i-aki-y](https://github.com/i-aki-y) in https://github.com/open-mmlab/mmengine/pull/1099

Bug fixes

- Fix the incorrect device of inputs in get_model_complexity_info by [CescMessi](https://github.com/CescMessi) in https://github.com/open-mmlab/mmengine/pull/1130
- Correctly saves `_metadata` of `state_dict` when saving checkpoints by [Bomsw](https://github.com/Bomsw) in https://github.com/open-mmlab/mmengine/pull/1131
- Correctly record random seed in log by [Shiyang980713](https://github.com/Shiyang980713) in https://github.com/open-mmlab/mmengine/pull/1152
- Close MLflowVisBackend only if active by [zimonitrome](https://github.com/zimonitrome) in https://github.com/open-mmlab/mmengine/pull/1151
- Fix `ProfileHook` cannot profile ddp-training by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1140
- Handle the case for Multi-Instance GPUs when using `cuda_visible_devices` by [adrianjoshua-strutt](https://github.com/adrianjoshua-strutt) in https://github.com/open-mmlab/mmengine/pull/1164
- Fix attribute error when parsing `CUDA_VISIBLE_DEVICES` in logger [Xiangxu-0103](https://github.com/Xiangxu-0103) in https://github.com/open-mmlab/mmengine/pull/1172

Docs

- Translate `infer.md` by [Hongru-Xiao](https://github.com/Hongru-Xiao) in https://github.com/open-mmlab/mmengine/pull/1121
- Fix a missing comma in `tutorials/runner.md` by [gy-7](https://github.com/gy-7) in https://github.com/open-mmlab/mmengine/pull/1146
- Fix typo in comment by [YQisme](https://github.com/YQisme) in https://github.com/open-mmlab/mmengine/pull/1154
- Translate `data_element.md` by [xin-li-67](https://github.com/xin-li-67) in https://github.com/open-mmlab/mmengine/pull/1067
- Add the usage of clearml by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1180

New Contributors
* CescMessi made their first contribution in https://github.com/open-mmlab/mmengine/pull/1130
* Bomsw made their first contribution in https://github.com/open-mmlab/mmengine/pull/1131
* Hongru-Xiao made their first contribution in https://github.com/open-mmlab/mmengine/pull/1121
* TankNee made their first contribution in https://github.com/open-mmlab/mmengine/pull/1122
* W-ZN made their first contribution in https://github.com/open-mmlab/mmengine/pull/1135
* gy-7 made their first contribution in https://github.com/open-mmlab/mmengine/pull/1146
* YQisme made their first contribution in https://github.com/open-mmlab/mmengine/pull/1154
* Shiyang980713 made their first contribution in https://github.com/open-mmlab/mmengine/pull/1152
* KickCellarDoor made their first contribution in https://github.com/open-mmlab/mmengine/pull/1159
* CokeDong made their first contribution in https://github.com/open-mmlab/mmengine/pull/1127
* zimonitrome made their first contribution in https://github.com/open-mmlab/mmengine/pull/1151
* adrianjoshua-strutt made their first contribution in https://github.com/open-mmlab/mmengine/pull/1164
* gachiemchiep made their first contribution in https://github.com/open-mmlab/mmengine/pull/1091
* i-aki-y made their first contribution in https://github.com/open-mmlab/mmengine/pull/1099

**Full Changelog**: https://github.com/open-mmlab/mmengine/compare/v0.7.3...v0.7.4

0.7.3

What's Changed

New Features & Enhancements

- Add `MLflowVisBackend` by [sh0622-kim](https://github.com/sh0622-kim) in https://github.com/open-mmlab/mmengine/pull/878
- Support customizing `worker_init_fn` in dataloader config by [shufanwu](https://github.com/shufanwu) in https://github.com/open-mmlab/mmengine/pull/1038
- Make the parameters of get_model_complexity_info() friendly by [sjiang95](https://github.com/sjiang95) in https://github.com/open-mmlab/mmengine/pull/1056
- Add torch_npu optimizer by [luomaoling](https://github.com/luomaoling) in https://github.com/open-mmlab/mmengine/pull/1079
- Support registering callable objects [C1rN09](https://github.com/C1rN09) in https://github.com/open-mmlab/mmengine/pull/595
- Complement type hint of get_model_complexity_info() by [sjiang95](https://github.com/sjiang95) in https://github.com/open-mmlab/mmengine/pull/1064
- MessageHub.get_info() supports returning a default value by [enkilee](https://github.com/enkilee) in https://github.com/open-mmlab/mmengine/pull/991
- Refactor logger hook unit test by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/797
- Support BoolTensor and LongTensor on Ascend NPU by [Ginray](https://github.com/Ginray) in https://github.com/open-mmlab/mmengine/pull/1011
- Remove useless variable declaration by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1052
- Enhance the support for MLU device by [josh6688](https://github.com/josh6688) in https://github.com/open-mmlab/mmengine/pull/1075
- Support configuring synchronization directory for BaseMetric by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1074
- Support accepting multiple `input_shape` for `get_model_complexity_info` by [sjiang95](https://github.com/sjiang95) in https://github.com/open-mmlab/mmengine/pull/1065
- Enhance docstring and error catching in `MessageHub` by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1098
- Enhance the efficiency of Visualizer.show by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1015
- Update repo list by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1108
- Enhance error message during custom import by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1102
- Support `_load_state_dict_post_hooks` in `load_state_dict` by [mzr1996](https://github.com/mzr1996) in https://github.com/open-mmlab/mmengine/pull/1103


Bug fixes

- Fix publishing multiple checkpoints when using multiple GPUs by [JunweiZheng93](https://github.com/JunweiZheng93) in https://github.com/open-mmlab/mmengine/pull/1070
- Fix error when `log_with_hierarchy` is `True` by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1085
- Call SyncBufferHook before validation in IterBasedTrainLoop by [Luo-Yihang](https://github.com/Luo-Yihang) in https://github.com/open-mmlab/mmengine/pull/982
- Fix the resuming error caused by HistoryBuffer by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1078
- Failed to remove the previous best checkpoints by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1086
- Fix using incorrect local rank by [C1rN09](https://github.com/C1rN09) in https://github.com/open-mmlab/mmengine/pull/973
- No training log when the num of iterations is smaller than the default interval by [shufanwu](https://github.com/shufanwu) in https://github.com/open-mmlab/mmengine/pull/1046
- `collate_fn` could not be a function object by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1093
- Fix `optimizer.state` could be saved in cuda:0 by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/966
- Fix building unnecessary loop during train/test/val by [HAOCHENYE](https://github.com/HAOCHENYE) in https://github.com/open-mmlab/mmengine/pull/1107

Docs

- Introduce the use of wandb and tensorboard by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/912
- Translate tutorials/evaluation.md by [LEFTeyex](https://github.com/LEFTeyex) in https://github.com/open-mmlab/mmengine/pull/1053
- Translate design/evaluation.md by [zccjjj](https://github.com/zccjjj) in https://github.com/open-mmlab/mmengine/pull/1062
- Fix three typos in runner by [jsrdcht](https://github.com/jsrdcht) in https://github.com/open-mmlab/mmengine/pull/1068
- Translate migration/hook.md to English by [SheffieldCao](https://github.com/SheffieldCao) in https://github.com/open-mmlab/mmengine/pull/1054
- Replace MMCls with MMPretrain in docs by [zhouzaida](https://github.com/zhouzaida) in https://github.com/open-mmlab/mmengine/pull/1096

New Contributors
* sh0622-kim made their first contribution in https://github.com/open-mmlab/mmengine/pull/878
* Ginray made their first contribution in https://github.com/open-mmlab/mmengine/pull/1011
* shufanwu made their first contribution in https://github.com/open-mmlab/mmengine/pull/1038
* sjiang95 made their first contribution in https://github.com/open-mmlab/mmengine/pull/1056
* JunweiZheng93 made their first contribution in https://github.com/open-mmlab/mmengine/pull/1070
* SheffieldCao made their first contribution in https://github.com/open-mmlab/mmengine/pull/1054
* jsrdcht made their first contribution in https://github.com/open-mmlab/mmengine/pull/1068
* josh6688 made their first contribution in https://github.com/open-mmlab/mmengine/pull/1075
* Luo-Yihang made their first contribution in https://github.com/open-mmlab/mmengine/pull/982
* zccjjj made their first contribution in https://github.com/open-mmlab/mmengine/pull/1062

**Full Changelog**: https://github.com/open-mmlab/mmengine/compare/v0.7.2...v0.7.3

Page 3 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.