Skip to main content

OneDL Model Pretraining Toolbox and Benchmark

Project description

Introduction

MMPreTrain is an open source pre-training toolbox based on PyTorch.

Major features

  • Various backbones and pretrained models
  • Rich training strategies (supervised learning, self-supervised learning, multi-modality learning etc.)
  • Bag of training tricks
  • Large-scale training configs
  • High efficiency and extensibility
  • Powerful toolkits for model analysis and experiments
  • Various out-of-box inference tasks.
    • Image Classification
    • Image Caption
    • Visual Question Answering
    • Visual Grounding
    • Retrieval (Image-To-Image, Text-To-Image, Image-To-Text)

https://github.com/vbti-development/onedl-mmpretrain/assets/26739999/e4dcd3a2-f895-4d1b-a351-fbc74a04e904

What's new

The VBTI development team is forking MMLabs code, making it work with newer pytorch versions and fixing bugs. We are only a small team, so your help is appreciated.

🌟 v1.2.0 was released in 04/01/2023

  • Support LLaVA 1.5.
  • Implement of RAM with a gradio interface.

🌟 v1.1.0 was released in 12/10/2023

  • Support Mini-GPT4 training and provide a Chinese model (based on Baichuan-7B)
  • Support zero-shot classification based on CLIP.

🌟 v1.0.0 was released in 04/07/2023

🌟 Upgrade from MMClassification to MMPreTrain

  • Integrated Self-supervised learning algorithms from MMSelfSup, such as MAE, BEiT, etc.
  • Support RIFormer, a simple but effective vision backbone by removing token mixer.
  • Refactor dataset pipeline visualization.
  • Support LeViT, XCiT, ViG, ConvNeXt-V2, EVA, RevViT, EfficientnetV2, CLIP, TinyViT and MixMIM backbones.

This release introduced a brand new and flexible training & test engine, but it's still in progress. Welcome to try according to the documentation.

And there are some BC-breaking changes. Please check the migration tutorial.

Please refer to changelog for more details and other release history.

Installation

Below are quick steps for installation:

uv pip install
conda create -n onedl-lab python=3.10 pytorch==2.8.0 torchvision==0.23.0 cudatoolkit=12.9 -c pytorch -y
conda activate onedl-lab
pip install onedl-mim
git clone https://github.com/VBTI-development/onedl-mmpretrain.git
cd onedl-mmpretrain
mim install -e .

Please refer to installation documentation for more detailed installation and dataset preparation.

For multi-modality models support, please install the extra dependencies by:

mim install -e ".[multimodal]"

User Guides

We provided a series of tutorials about the basic usage of MMPreTrain for new users:

For more information, please refer to our documentation.

Model zoo

Results and models are available in the model zoo.

Overview
Supported Backbones Self-supervised Learning Multi-Modality Algorithms Others
Image Retrieval Task: Training&Test Tips: Regression Heads:

Contributing

We appreciate all contributions to improve MMPreTrain. Please refer to CONTRUBUTING for the contributing guideline.

Acknowledgement

MMPreTrain is an open source project that is contributed by researchers and engineers from various colleges and companies. We appreciate all the contributors who implement their methods or add new features, as well as users who give valuable feedbacks. We wish that the toolbox and benchmark could serve the growing research community by providing a flexible toolkit to reimplement existing methods and supporting their own academic research.

Citation

If you find this project useful in your research, please consider cite:

@misc{2023mmpretrain,
    title={OneDL Pre-training Toolbox and Benchmark},
    author={OneDL-MMPreTrain Contributors},
    howpublished = {\url{https://github.com/vbti-development/onedl-mmpretrain}},
    year={2025}
}

License

This project is released under the Apache 2.0 license.

Projects in VBTI-development

  • MMEngine: Foundational library for training deep learning models.
  • MMCV: Foundational library for computer vision.
  • MMPreTrain: Pre-training toolbox and benchmark.
  • MMDetection: Detection toolbox and benchmark.
  • MMRotate: Rotated object detection toolbox and benchmark.
  • MMSegmentation: Semantic segmentation toolbox and benchmark.
  • MMDeploy: Model deployment framework.
  • MIM: MIM installs VBTI packages.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

onedl_mmpretrain-1.3.2.tar.gz (963.1 kB view details)

Uploaded Source

File details

Details for the file onedl_mmpretrain-1.3.2.tar.gz.

File metadata

  • Download URL: onedl_mmpretrain-1.3.2.tar.gz
  • Upload date:
  • Size: 963.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for onedl_mmpretrain-1.3.2.tar.gz
Algorithm Hash digest
SHA256 1dd112fa60f077501d461471efec8112f37f888ba930329b0a7a42110b18f418
MD5 06d0ed171181d147b2b127e962146d80
BLAKE2b-256 b6a3f7c6bd82766200c66b4e4fcecccb49e1990f06bd8fb1c53f3a8092a1b9c6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page