- Fix
_is_builtin_module
. by @HAOCHENYE in #1571
- Support custom
artifact_location
in MLflowVisBackend. by @daavoo in #1505 - Add the supported pytorch versions in README by @zhouzaida in #1512
- Perform evaluation upon training completion by @LZHgrla in #1529
- Enable
exclude_frozen_parameters
forDeepSpeedEngine._zero3_consolidated_16bit_state_dict
by @LZHgrla in #1517
- Fix warning capture by @fanqiNO1 in #1494
- Remove codeowners file by @zhouzaida in #1496
- Fix config of readthedocs by @zhouzaida in #1511
- Delete frozen parameters when using
paramwise_cfg
by @LZHgrla in #1441
- Refine mmengine intro by @zhouzaida in #1479
- Fix typo by @zhouzaida in #1481
- Fix typos and remove fullwidth unicode chars by @evdcush in #1488
- Fix docstring of Config by @MambaWong in #1506
- Fix typo by @hiramf in #1532
- Add the support for musa device support by @hanhaowen-mt in #1453
- Support
save_optimizer=False
for DeepSpeed by @LZHgrla in #1474 - Update visualizer.py by @Anm-pinellia in #1476
- Fix
Config.to_dict
by @HAOCHENYE in #1465 - Fix the resume of iteration by @LZHgrla in #1471
- Fix
dist.collect_results
to keep all ranks' elements by @LZHgrla in #1469
- Add the usage of ProfilerHook by @zhouzaida in #1466
- Fix the nnodes in the doc of ddp training by @XiwuChen in #1462
- Support multi-node distributed training with NPU backend by @shun001 in #1459
- Use
ImportError
to coverModuleNotFoundError
by @del-zhenwu in #1438
- Fix bug in
load_model_state_dict
ofBaseStrategy
by @SCZwangxiao in #1447 - Fix placement policy in ColossalAIStrategy by @fanqiNO1 in #1440
A total of 4 developers contributed to this release. Thanks @shun001, @del-zhenwu, @SCZwangxiao, @fanqiNO1
A total of 1 developers contributed to this release. Thanks @fanqiNO1
- Support for installing mmengine without opencv by @fanqiNO1 in #1429
- Support
exclude_frozen_parameters
forDeepSpeedStrategy
'sresume
by @LZHgrla in #1424
- Fix bugs in colo optimwrapper by @HIT-cwh in #1426
- Fix
scale_lr
inSingleDeviceStrategy
by @fanqiNO1 in #1428 - Fix CI for torch2.1.0 by @fanqiNO1 in #1418
A total of 3 developers contributed to this release. Thanks @HIT-cwh, @LZHgrla, @fanqiNO1
- Support slurm distributed training for mlu devices by @POI-WX in #1396
- Add torch 2.1.0 checking in CI by @YiyaoYang1 in #1389
- Add
exclude_frozen_parameters
forDeepSpeedStrategy
by @LZHgrla in #1415 - Enhance inputs_to_half in DeepSpeedStrategy by @fanqiNO1 in #1400
- Fix new config in visualizer by @HAOCHENYE in #1390
- Fix func params using without init in OneCycleLR (#1401) by @whlook in #1403
- Fix a bug when module is missing in low version of bitsandbytes by @Ben-Louis in #1388
- Fix ConcatDataset raising error when metainfo is np.array by @jonbakerfish in #1407
- Rename master to main by @zhouzaida in #1397
A total of 9 developers contributed to this release. Thanks @POI-WX, @whlook, @jonbakerfish, @LZHgrla, @Ben-Louis, @YiyaoYang1, @fanqiNO1, @HAOCHENYE, @zhouzaida
- Support training with ColossalAI. Refer to the Training Large Models for more detailed usages.
- Support gradient checkpointing. Refer to the Save Memory on GPU for more details.
- Supports multiple visualization backends, including
NeptuneVisBackend
,DVCLiveVisBackend
andAimVisBackend
. Refer to Visualization Backends for more details.
- Add a text translation example by @Desjajja in #1283
- Add
NeptuneVisBackend
by @wangerlie in #1311 - Add ColossalAI strategy by @HAOCHENYE in #1299
- Add collect_results support for Ascend NPU by @xuuyangg in #1309
- Unify the parameter style of DeepSpeedStrategy by @LZHgrla in #1320
- Add progressbar rich by @Dominic23331 in #1157
- Support using other file handlers by @KevinNuNu in #1188
- Refine error message by @zhouzaida in #1338
- Implement gradient checkpointing by @zeyuanyin in #1319
- Add
DVCLiveVisBackend
by @RangeKing in #1336 - Add
AimVisBackend
by @RangeKing in #1347 - Support bitsandbytes by @okotaku in #1357
- Support
Adafactor
Optimizer by @okotaku in #1361 - Add unit tests for autocast with Ascend device by @6Vvv in #1363
- Support metainfo of dataset can be a generic dict-like Mapping by @hiyyg in #1378
- Support for installing minimal runtime dependencies by @HAOCHENYE in #1362
- Support setting the number of iterations in
Runner
for each epoch by @ShuRaymond in #1292 - Support using gradient checkpointing in FSDP by @HAOCHENYE in #1382
- Add README for examples by @zhouzaida in #1295
- Add a new ecosystem in README by @zhouzaida in #1296
- Fix typo by @zhouzaida in #1298
- Add an image for Neptune by @zhouzaida in #1312
- Fix docs of ColossalAI by @HAOCHENYE in #1315
- Update QRCode by @crazysteeaam in #1328
- Add activation checkpointing usage by @zhouzaida in #1341
- Fix typo by @zhouzaida in #1348
- Update the usage of bitsandbytes in Chinese documents by @zhouzaida in #1359
- Fix doc typo our_dir in LoggerHook by @wangg12 in #1373
- Add the contributing doc in pr template by @zhouzaida in #1380
- Update the version info by @fanqiNO1 in #1383
- Fix typo by @fanqiNO1 in #1385
- Ignore examples in CI by @zhouzaida in #1297
- Fix multi-card issue in PyTorch v2.1 on Ascend by @LRJKD in #1321
- Fix get
optimizer_cls
by @HAOCHENYE in #1324 - Fix ndarray metainfo check in ConcatDataset by @NrealLzx in #1333
- Adapt to PyTorch v2.1 on Ascend by @LRJKD in #1332
- Fix the type check of tasks in progress bar by @zhouzaida in #1340
- The keyword mode appears nested multiple times in the log by @huaibovip in #1305
- Fix pydantic version to fix mlflow unit tests by @zhouzaida in #1351
- Fix get class attribute from a string by @HAOCHENYE in #1345
- Delete yapf verify by @okotaku in #1365
- Ensure from_cfg of Runner have the same defaults values as its init by @YinAoXiong in #1368
- Fix docs building error caused by deepspeed by @HAOCHENYE in #1379
A total of 21 developers contributed to this release. Thanks @LZHgrla, @wangerlie, @wangg12, @RangeKing, @hiyyg, @LRJKD, @KevinNuNu, @zeyuanyin, @Desjajja, @ShuRaymond, @okotaku, @crazysteeaam, @6Vvv, @NrealLzx, @YinAoXiong, @huaibovip, @xuuyangg, @Dominic23331, @fanqiNO1, @HAOCHENYE, @zhouzaida
- Skip adding
vis_backends
whensave_dir
is not set by @HAOCHENYE in #1289 - Fix dumping pure python style config in colab by @HAOCHENYE in #1290
- Find unused parameters by @zhouzaida in #1288
A total of 3 developers contributed to this release. Thanks @HAOCHENYE, @zhouzaida, @LZHgrla
- Support enabling
efficient_conv_bn_eval
for efficient convolution and batch normalization. See save memory on gpu for more details - Add Llama2 finetune example
- Support multi-node distributed training with MLU backend
- Enable
efficient_conv_bn_eval
for memory saving convolution and batch normalization by @youkaichao in #1202, #1251 and #1259 - Add Llama2 example by @HAOCHENYE in #1264
- Compare the difference of two configs by @gachiemchiep in #1260
- Enable explicit error for deepspeed not installed by @Li-Qingyun in #1240
- Support skipping initialization in
BaseModule
by @HAOCHENYE in #1263 - Add parameter
save_begin
to control when to save checkpoints by @KerwinKai in #1271 - Support multi-node distributed training with MLU backend by @josh6688 in #1266
- Enhance error message thrown by Config, build function and
ConfigDict.items
by @HAOCHENYE in #1272, #1270 and #1088 - Add the
loop_stage
runtime information inmessage_hub
by @zhouzaida in #1277 - Fix Visualizer that built
vis_backends
will not be used whensave_dir
isNone
by @Xinyu302 in #1275
- Fix scalar check in RuntimeInfoHook by @i-aki-y in #1250
- Move data preprocessor to target device in FSDPStrategy by @HAOCHENYE in #1261
- Add ecosystem in README by @zhouzaida in #1247
- Add short explanation about registry scope by @mmeendez8 in #1114
- Add the data flow of Runner in README by @zhouzaida in #1257
- Introduce how to customize distributed training settings by @zhouzaida in #1279
A total of 9 developers contributed to this release. Thanks @HAOCHENYE, @youkaichao, @josh6688, @i-aki-y, @mmeendez8, @zhouzaida, @gachiemchiep, @KerwinKai, @Li-Qingyun
- Fix pickling the Python style config by @HAOCHENYE in #1241
- Fix the logic of setting
lazy_import
by @Li-Qingyun in #1239
- Accelerate
Config.dump
and support converting Lazyxxx to string inConfigDict.to_dict
by @HAOCHENYE in #1232
- FSDP should call
_get_ignored_modules
by @HAOCHENYE in #1235
- Add a document to introduce how to train a large model by @zhouzaida in #1228
-
Support training with FSDP and DeepSpeed. Refer to the example 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 for more detailed usages.
- Support training with FSDP by @HAOCHENYE in #1213
- Add
FlexibleRunner
andStrategies
, and support training with DeepSpeed by @zhouzaida in #1183 - Support pure Python style configuration file by @HAOCHENYE in #1071
- Learning rate in log can show the base learning rate of optimizer by @AkideLiu in #1019
- Refine the error message when auto_scale_lr is not set correctly by @alexander-soare in #1181
- WandbVisBackend supports updating config by @zgzhengSEU in #977
- CheckpointHook should check whether file exists before removing it by @zhouzaida in #1198
- Fix undefined variable error in Runner by @HAOCHENYE in #1219
- Add a document to introduce how to debug with vscode by @zhouzaida in #1212
- Update English introduction by @evdcush in #1189
- Fix parameter typing error in document by @syo093c in #1201
- Fix gpu collection during evaluation by @edkair in #1208
- Fix a comment in runner tutorial by @joihn in #1210
A total of 9 developers contributed to this release. Thanks @evdcush, @zhouzaida, @AkideLiu, @joihn, @HAOCHENYE, @edkair, @alexander-soare, @syo093c, @zgzhengSEU
- Support using
ClearML
to record experiment data - Add
Sophia
optimizers
- Add visualize backend for clearml by @gachiemchiep in #1091
- Support Sophia optimizers by @zhouzaida in #1170
- Refactor unittest syncbuffer by @HAOCHENYE in #813
- Allow
ann_file
,data_root
isNone
forBaseDataset
by @HAOCHENYE in #850 - Enable full precision training on Ascend NPU by @Ginray in #1109
- Creating a text classification example by @TankNee in #1122
- Add option to log selected config only by @KickCellarDoor in #1159
- Add an option to control whether to show progress bar in BaseInference by @W-ZN in #1135
- Support dipu device by @CokeDong in #1127
- Let unit tests not affect each other by @zhouzaida in #1169
- Add support for full wandb's
define_metric
arguments by @i-aki-y in #1099
- Fix the incorrect device of inputs in get_model_complexity_info by @CescMessi in #1130
- Correctly saves
_metadata
ofstate_dict
when saving checkpoints by @Bomsw in #1131 - Correctly record random seed in log by @Shiyang980713 in #1152
- Close MLflowVisBackend only if active by @zimonitrome in #1151
- Fix
ProfileHook
cannot profile ddp-training by @HAOCHENYE in #1140 - Handle the case for Multi-Instance GPUs when using
cuda_visible_devices
by @adrianjoshua-strutt in #1164 - Fix attribute error when parsing
CUDA_VISIBLE_DEVICES
in logger @Xiangxu-0103 in #1172
- Translate
infer.md
by @Hongru-Xiao in #1121 - Fix a missing comma in
tutorials/runner.md
by @gy-7 in #1146 - Fix typo in comment by @YQisme in #1154
- Translate
data_element.md
by @xin-li-67 in #1067 - Add the usage of clearml by @zhouzaida in #1180
A total of 19 developers contributed to this release. Thanks @Hongru-Xiao @i-aki-y @Bomsw @KickCellarDoor @zhouzaida @YQisme @gachiemchiep @CescMessi @W-ZN @Ginray @adrianjoshua-strutt @CokeDong @xin-li-67 @Xiangxu-0103 @HAOCHENYE @Shiyang980713 @TankNee @zimonitrome @gy-7
- Support using MLflow to record experiment data
- Support registering callable objects to the registry
- Add
MLflowVisBackend
by @sh0622-kim in #878 - Support customizing
worker_init_fn
in dataloader config by @shufanwu in #1038 - Make the parameters of get_model_complexity_info() friendly by @sjiang95 in #1056
- Add torch_npu optimizer by @luomaoling in #1079
- Support registering callable objects @C1rN09 in #595
- Complement type hint of get_model_complexity_info() by @sjiang95 in #1064
- MessageHub.get_info() supports returning a default value by @enkilee in #991
- Refactor logger hook unit test by @HAOCHENYE in #797
- Support BoolTensor and LongTensor on Ascend NPU by @Ginray in #1011
- Remove useless variable declaration by @HAOCHENYE in #1052
- Enhance the support for MLU device by @josh6688 in #1075
- Support configuring synchronization directory for BaseMetric by @HAOCHENYE in #1074
- Support accepting multiple
input_shape
forget_model_complexity_info
by @sjiang95 in #1065 - Enhance docstring and error catching in
MessageHub
by @HAOCHENYE in #1098 - Enhance the efficiency of Visualizer.show by @HAOCHENYE in #1015
- Update repo list by @HAOCHENYE in #1108
- Enhance error message during custom import by @HAOCHENYE in #1102
- Support
_load_state_dict_post_hooks
inload_state_dict
by @mzr1996 in #1103
- Fix publishing multiple checkpoints when using multiple GPUs by @JunweiZheng93 in #1070
- Fix error when
log_with_hierarchy
isTrue
by @HAOCHENYE in #1085 - Call SyncBufferHook before validation in IterBasedTrainLoop by @Luo-Yihang in #982
- Fix the resuming error caused by HistoryBuffer by @HAOCHENYE in #1078
- Failed to remove the previous best checkpoints by @HAOCHENYE in #1086
- Fix using incorrect local rank by @C1rN09 in #973
- No training log when the num of iterations is smaller than the default interval by @shufanwu in #1046
collate_fn
could not be a function object by @zhouzaida in #1093- Fix
optimizer.state
could be saved in cuda:0 by @HAOCHENYE in #966 - Fix building unnecessary loop during train/test/val by @HAOCHENYE in #1107
- Introduce the use of wandb and tensorboard by @zhouzaida in #912
- Translate tutorials/evaluation.md by @LEFTeyex in #1053
- Translate design/evaluation.md by @zccjjj in #1062
- Fix three typos in runner by @jsrdcht in #1068
- Translate migration/hook.md to English by @SheffieldCao in #1054
- Replace MMCls with MMPretrain in docs by @zhouzaida in #1096
A total of 17 developers contributed to this release. Thanks @enkilee, @JunweiZheng93, @sh0622-kim, @jsrdcht, @SheffieldCao, @josh6688, @mzr1996, @zhouzaida, @shufanwu, @Luo-Yihang, @C1rN09, @LEFTeyex, @zccjjj, @Ginray, @HAOCHENYE, @sjiang95, @luomaoling
- Align the evaluation result in log by @kitecats in #1034
- Update the logic to calculate the
repeat_factors
inClassBalancedDataset
by @BIGWangYuDong in #1048 - Initialize sub-modules in
DistributedDataParallel
that defineinit_weights
during initialization by @HAOCHENYE in #1045 - Refactor checkpointhook unittest by @HAOCHENYE in #789
A total of 3 developers contributed to this release. Thanks @kitecats, @BIGWangYuDong, @HAOCHENYE
- Support compiling the model and enabling mixed-precision training at the same time
- Fix the bug where the logs cannot be properly saved to the log file after calling
torch.compile
- Add
mmpretrain
to theMODULE2PACKAGE
. by @mzr1996 in #1002 - Support using
get_device
in the compiled model by @C1rN09 in #1004 - Make sure the FileHandler still alive after
torch.compile
by @HAOCHENYE in #1021 - Unify the use of
print_log
andlogger.info(warning)
by @LEFTeyex in #997 - Publish models after training if published_keys is set in CheckpointHook by @KerwinKai in #987
- Enhance the error catching in registry by @HAOCHENYE in #1010
- Do not print config if it is empty by @zhouzaida in #1028
- Fix there is no space between
data_time
and metric in logs by @HAOCHENYE in #1025
A total of 7 developers contributed to this release. Thanks @LEFTeyex, @KerwinKai, @mzr1996, @evdcush, @C1rN09, @HAOCHENYE, @zhouzaida
- Support PyTorch 2.0! Accelerate training by compiling models. See the tutorial Model Compilation for details
- Add
EarlyStoppingHook
to stop training when the metric does not improve
- Add configurations to support
torch.compile
in Runner by @C1rN09 in #976 - Support
EarlyStoppingHook
by @nijkah in #739 - Disable duplicated warning during distributed training by @HAOCHENYE in #961
- Add
FUNCTIONS
root Registry by @HAOCHENYE in #983 - Save the "memory" field to visualization backends by @enkilee in #974
- Enable bf16 in
AmpOptimWrapper
by @C1rN09 in #960 - Support writing data to
vis_backend
with prefix by @HAOCHENYE in #972 - Support exporting logs of different ranks in debug mode by @HAOCHENYE in #968
- Silence error when
ManagerMixin
built instance with duplicate name. by @HAOCHENYE in #990
- Fix optim_wrapper unittest for
pytorch < 1.10.0
by @C1rN09 in #975 - Support calculating the flops of
matmul
with single dimension matrix by @HAOCHENYE in #970 - Fix repeated warning by @HAOCHENYE in #992
- Fix lint by @zhouzaida in #993
- Fix AMP in Ascend and support using NPUJITCompile environment by @luomaoling in #994
- Fix inferencer gets wrong configs path by @HAOCHENYE in #996
- Translate "Debug Tricks" to English by @enkilee in #953
- Translate "Model Analysis" document to English by @enkilee in #956
- Translate "Model Complexity Analysis" to Chinese. by @VoyagerXvoyagerx in #969
- Add a document about setting interval by @YuetianW in #964
- Translate "how to set random seed" by @xin-li-67 in #930
- Fix typo by @zhouzaida in #965
- Fix typo in hook document by @acdart in #980
- Fix changelog date by @HAOCHENYE in #986
A total of 10 developers contributed to this release. Thanks @xin-li-67, @acdart, @enkilee, @YuetianW, @luomaoling, @nijkah, @VoyagerXvoyagerx, @zhouzaida, @HAOCHENYE, @C1rN09
- Support
Apex
withApexOptimWrapper
- Support analyzing model complexity.
- Add
Lion
optimizer. - Support using environment variables in the config file.
- Support model complexity computation by @tonysy in #779
- Add Lion optimizer by @zhouzaida in #952
- Support
Apex
withApexOptimWrapper
by @xcnick in #742 - Support using environment variable in config file. by @jbwang1997 in #744
- Improve registry infer_scope by @zhouzaida in #334
- Support configuring
timeout
in dist configuration by @apacha in #877 - Beautify the print result of the registry by @Eiuyc in #922
- Refine the style of table by @zhouzaida in #941
- Refine the
repr
of Registry by @zhouzaida in #942 - Feature NPUProfilerHook by @luomaoling in #925
- Refactor hooks unittest by @HAOCHENYE in #946
- Temporarily fix
collect_env
raise errors and stops programs by @C1rN09 in #944 - Make sure Tensors to broadcast is contiguous by @XWHtorrentx in #948
- Clean the UT warning caused by pytest by @zhouzaida in #947
- Backend_args should not be modified by get_file_backend by @zhouzaida in #897
- Support update
np.ScalarType
data in message_hub by @HAOCHENYE in #898 - Support rendering Chinese character in
Visualizer
by @KevinNuNu in #887 - Fix the bug of
DefaultOptimWrapperConstructor
when the shared parameters do not require the grad by @HIT-cwh in #903
- Add the document for the transition between IterBasedTraining and EpochBasedTraining by @HAOCHENYE in #926
- Introduce how to set random seed by @zhouzaida in #914
- Count FLOPs and parameters by @zhouzaida in #939
- Enhance README by @Xiangxu-0103 in #835
- Add a document about debug tricks by @zhouzaida in #938
- Refine the format of changelog and visualization document by @zhouzaida in #906
- Move examples to a new directory by @zhouzaida in #911
- Resolve warnings in sphinx build by @C1rN09 in #915
- Fix docstring by @zhouzaida in #913
- How to set the interval parameter by @zhouzaida in #917
- Temporarily skip errors in building pdf docs at readthedocs by @C1rN09 in #928
- Add the links of twitter, discord, medium, and youtube by @vansin in #924
- Fix typo
shedule
by @Dai-Wenxun in #936 - Fix failed URL by @zhouzaida in #943
A total of 15 developers contributed to this release. Thanks @Eiuyc, @xcnick, @KevinNuNu, @XWHtorrentx, @tonysy, @zhouzaida, @Xiangxu-0103, @Dai-Wenxun, @jbwang1997, @apacha, @C1rN09, @HIT-cwh, @vansin, @HAOCHENYE, @luomaoling.
- Add
BaseInferencer
to provide a general inference interface - Provide
ReduceOnPlateauParamScheduler
to adjust learning rate by metric - Deprecate support for Python3.6
- Deprecate support for Python3.6 by @HAOCHENYE in #863
- Support non-scalar type metric value by @mzr1996 in #827
- Remove unnecessary calls and lazily import to speed import performance by @zhouzaida in #837
- Support
ReduceOnPlateauParamScheduler
by @LEFTeyex in #819 - Disable warning of subprocess launched by dataloader by @HAOCHENYE in #870
- Add
BaseInferencer
to provide general interface by @HAOCHENYE in #874
- Fix support for Ascend device by @wangjiangben-hw in #847
- Fix
Config
cannot parse base config when there is.
in tmp path, etc.tmp/a.b/c
by @HAOCHENYE in #856 - Fix unloaded weights will not be initialized when using
PretrainedIinit
by @HAOCHENYE in #764 - Fix error package name defined in
PKG2PROJECT
by @HAOCHENYE in #872
- Fix typos in
advanced_tutorials/logging.md
by @RangeKing in #861 - Translate CN
train_a_gan
to EN by @yaqi0510 in #860 - Update
fileio.md
by @Xiangxu-0103 in #869 - Add Chinese documentation for
inferencer
. by @HAOCHENYE in #884
A total of 8 developers contributed to this release. Thanks @LEFTeyex, @RangeKing, @yaqi0510, @Xiangxu-0103, @wangjiangben-hw, @mzr1996, @zhouzaida, @HAOCHENYE.
- Registry supports importing modules automatically
- Upgrade the documentation and provide the English documentation
- Provide
ProfileHook
to profile the running process
- Add
conf_path
in PetrelBackend by @sunyc11 in #774 - Support multiple
--cfg-options
. by @mzr1996 in #759 - Support passing arguments to
OptimWrapper.update_params
by @twmht in #796 - Make
get_torchvision_model
compatible with torch 1.13 by @HAOCHENYE in #793 - Support
flat_decay_mult
and fixbias_decay_mult
of depth-wise-conv inDefaultOptimWrapperConstructor
by @RangiLyu in #771 - Registry supports importing modules automatically. by @RangiLyu in #643
- Add profiler hook functionality by @BayMaxBHL in #768
- Make TTAModel compatible with FSDP. by @HAOCHENYE in #611
hub.get_model
fails on some MMCls models by @C1rN09 in #784- Fix
BaseModel.to
andBaseDataPreprocessor.to
to make them consistent withtorch.nn.Module
by @C1rN09 in #783 - Fix creating a new logger at PretrainedInit by @xiexinch in #791
- Fix
ZeroRedundancyOptimizer
ambiguous error with param groups when PyTorch < 1.12.0 by @C1rN09 in #818 - Fix MessageHub set resumed key repeatedly by @HAOCHENYE in #839
- Add
progress
argument toload_from_http
by @austinmw in #770 - Ensure metrics is not empty when saving best checkpoint by @zhouzaida in #849
- Add
contributing.md
by @HAOCHENYE in #754 - Add gif to 15 min tutorial by @HAOCHENYE in #748
- Refactor documentations and translate them to English by @zhouzaida in #786
- Fix document link by @MambaWong in #775
- Fix typos in EN
contributing.md
by @RangeKing in #792 - Translate data transform docs. by @mzr1996 in #737
- Replace markdown table with html table by @HAOCHENYE in #800
- Fix wrong example in
Visualizer.draw_polygons
by @lyviva in #798 - Fix docstring format and rescale the images by @zhouzaida in #802
- Fix failed link in registry by @zhouzaida in #811
- Fix typos by @shanmo in #814
- Fix wrong links and typos in docs by @shanmo in #815
- Translate
save_gpu_memory.md
by @xin-li-67 in #803 - Translate the documentation of hook design by @zhouzaida in #780
- Fix docstring format by @zhouzaida in #816
- Translate
registry.md
by @xin-li-67 in #817 - Update docstring of
BaseDataElement
by @Xiangxu-0103 in #836 - Fix typo by @Xiangxu-0103 in #841
- Update docstring of
structures
by @Xiangxu-0103 in #840 - Translate
optim_wrapper.md
by @xin-li-67 in #833 - Fix link error in initialize tutorial. by @HAOCHENYE in #843
- Fix table in
initialized.md
by @HAOCHENYE in #844
A total of 16 developers contributed to this release. Thanks @BayMaxBHL, @RangeKing, @Xiangxu-0103, @xin-li-67, @twmht, @shanmo, @sunyc11, @lyviva, @austinmw, @xiexinch, @mzr1996, @RangiLyu, @MambaWong, @C1rN09, @zhouzaida, @HAOCHENYE
- Send git errors to subprocess.PIPE by @austinmw in #717
- Add a common
TestRunnerTestCase
to build a Runner instance. by @HAOCHENYE in #631 - Align the log by @HAOCHENYE in #436
- Log the called order of hooks during training process by @songyuc in #672
- Support setting
eta_min_ratio
inCosineAnnealingParamScheduler
by @cir7 in #725 - Enhance compatibility of
revert_sync_batchnorm
by @HAOCHENYE in #695
- Fix
distributed_training.py
in examples by @PingHGao in #700 - Format the log of
CheckpointLoader.load_checkpoint
by @HAOCHENYE in #685 - Fix bug of CosineAnnealingParamScheduler by @fangyixiao18 in #735
- Fix
add_graph
is not called bug by @shenmishajing in #632 - Fix .pre-commit-config-zh-cn.yaml pyupgrade-repo github->gitee by @BayMaxBHL in #756
- Add English docs of BaseDataset by @GT9505 in #713
- Fix
BaseDataset
typo about lazy initialization by @MengzhangLI in #733 - Fix typo by @zhouzaida in #734
- Translate visualization docs by @xin-li-67 in #692
- Fix error when saving best checkpoint in ddp-training
- Replace
print
withprint_log
for those functions called by runner by @HAOCHENYE in #686
- Fix error when saving best checkpoint in ddp-training by @HAOCHENYE in #682
- Refine Chinese tutorials by @Xiangxu-0103 in #694
- Add MMEval in README by @sanbuphy in #669
- Fix error URL in runner docstring by @HAOCHENYE in #668
- Fix error evaluator type name in
evaluator.md
by @sanbuphy in #675 - Fix typo in
utils.md
@sanbuphy in #702
- Support running on Ascend chip by @wangjiangben-hw in #572
- Support torch
ZeroRedundancyOptimizer
by @nijkah in #551 - Add non-blocking feature to
BaseDataPreprocessor
by @shenmishajing in #618 - Add documents for
clip_grad
, and support clip grad by value. by @HAOCHENYE in #513 - Add ROCm info when collecting env by @zhouzaida in #633
- Add a function to mark the deprecated function. by @HAOCHENYE in #609
- Call
register_all_modules
inRegistry.get()
by @HAOCHENYE in #541 - Deprecate
_save_to_state_dict
implemented in mmengine by @HAOCHENYE in #610 - Add
ignore_keys
in ConcatDataset by @BIGWangYuDong in #556
- Fix cannot show
changelog.md
in chinese documents. by @HAOCHENYE in #606 - Fix Chinese docs whitespaces by @C1rN09 in #521
- Translate installation and 15_min by @xin-li-67 in #629
- Refine chinese doc by @Tau-J in #516
- Add MMYOLO link in README by @Xiangxu-0103 in #634
- Add MMEngine logo in docs by @zhouzaida in #641
- Fix docstring of
BaseDataset
by @HAOCHENYE in #656 - Fix docstring and documentation used for
hub.get_model
by @zengyh1900 in #659 - Fix typo in
docs/zh_cn/advanced_tutorials/visualization.md
by @MambaWong in #616 - Fix typo docstring of
DefaultOptimWrapperConstructor
by @triple-Mu in #644 - Fix typo in advanced tutorial by @cxiang26 in #650
- Fix typo in
Config
docstring by @sanbuphy in #654 - Fix typo in
docs/zh_cn/tutorials/config.md
by @Xiangxu-0103 in #596 - Fix typo in
docs/zh_cn/tutorials/model.md
by @C1rN09 in #598
- Fix error calculation of
eta_min
inCosineRestartParamScheduler
by @Z-Fran in #639 - Fix
BaseDataPreprocessor.cast_data
could not handle string data by @HAOCHENYE in #602 - Make
autocast
compatible with mps by @HAOCHENYE in #587 - Fix error format of log message by @HAOCHENYE in #508
- Fix error implementation of
is_model_wrapper
by @HAOCHENYE in #640 - Fix
VisBackend.add_config
is not called by @shenmishajing in #613 - Change
strict_load
of EMAHook to False by default by @HAOCHENYE in #642 - Fix
open
encoding problem of Config in Windows by @sanbuphy in #648 - Fix the total number of iterations in log is a float number. by @jbwang1997 in #604
- Fix
pip upgrade
CI by @HAOCHENYE in #622
- @shenmishajing made their first contribution in #618
- @Xiangxu-0103 made their first contribution in #596
- @Tau-J made their first contribution in #516
- @wangjiangben-hw made their first contribution in #572
- @triple-Mu made their first contribution in #644
- @sanbuphy made their first contribution in #648
- @Z-Fran made their first contribution in #639
- @BIGWangYuDong made their first contribution in #556
- @zengyh1900 made their first contribution in #659
- Add SMDDP backend and support running on AWS by @austinmw in #579
- Refactor
FileIO
but without breaking bc by @zhouzaida in #533 - Add test time augmentation base model by @HAOCHENYE in #538
- Use
torch.lerp\_()
to speed up EMA by @RangiLyu in #519 - Support converting
BN
toSyncBN
by config by @HAOCHENYE in #506 - Support defining metric name in wandb backend by @okotaku in #509
- Add dockerfile by @zhouzaida in #347
- Fix API files of English documentation by @zhouzaida in #525
- Fix typo in
instance_data.py
by @Dai-Wenxun in #530 - Fix the docstring of the model sub-package by @zhouzaida in #573
- Fix a spelling error in docs/zh_cn by @cxiang26 in #548
- Fix typo in docstring by @MengzhangLI in #527
- Update
config.md
by @Zhengfei-0311 in #562
- Fix
LogProcessor
does not smooth loss if the name of loss doesn't start withloss
by @liuyanyi in #539 - Fix failed to enable
detect_anomalous_params
inMMSeparateDistributedDataParallel
by @HAOCHENYE in #588 - Fix CheckpointHook behavior unexpected if given
filename_tmpl
argument by @C1rN09 in #518 - Fix error argument sequence in
FSDP
by @HAOCHENYE in #520 - Fix uploading image in wandb backend @okotaku in #510
- Fix loading state dictionary in
EMAHook
by @okotaku in #507 - Fix circle import in
EMAHook
by @HAOCHENYE in #523 - Fix unit test could fail caused by
MultiProcessTestCase
by @HAOCHENYE in #535 - Remove unnecessary "if statement" in
Registry
by @MambaWong in #536 - Fix
_save_to_state_dict
by @HAOCHENYE in #542 - Support comparing NumPy array dataset meta in
Runner.resume
by @HAOCHENYE in #511 - Use
get
instead ofpop
to dumprunner_type
inbuild_runner_from_cfg
by @nijkah in #549 - Upgrade pre-commit hooks by @zhouzaida in #576
- Delete the error comment in
registry.md
by @vansin in #514 - Fix Some out-of-date unit tests by @C1rN09 in #586
- Fix typo in
MMFullyShardedDataParallel
by @yhna940 in #569 - Update Github Action CI and CircleCI by @zhouzaida in #512
- Fix unit test in windows by @HAOCHENYE in #515
- Fix merge ci & multiprocessing unit test by @HAOCHENYE in #529
- @okotaku made their first contribution in #510
- @MengzhangLI made their first contribution in #527
- @MambaWong made their first contribution in #536
- @cxiang26 made their first contribution in #548
- @nijkah made their first contribution in #549
- @Zhengfei-0311 made their first contribution in #562
- @austinmw made their first contribution in #579
- @yhna940 made their first contribution in #569
- @liuyanyi made their first contribution in #539