ModelCenter  by OpenBMB

Transformer library for efficient, low-resource, distributed training

created 3 years ago
258 stars

Top 98.6% on sourcepulse

GitHubView on GitHub
Project Summary

ModelCenter provides efficient, low-resource, and extendable implementations of large pre-trained language models (PLMs) for distributed training. It targets researchers and engineers working with large transformer models, offering a more memory-efficient and user-friendly alternative to frameworks like DeepSpeed and Megatron.

How It Works

ModelCenter leverages the OpenBMB/BMTrain backend, which integrates ZeRO optimization for efficient distributed training. This approach significantly reduces memory footprints, enabling larger batch sizes and better GPU utilization. The framework is designed for PyTorch-style coding, aiming for easier configuration and a more uniform development experience compared to other distributed training solutions.

Quick Start & Requirements

  • Installation: pip install model-center or from source.
  • Prerequisites: PyTorch, Python. Distributed training requires torch.distributed or torchrun.
  • Documentation: https://github.com/OpenBMB/ModelCenter

Highlighted Details

  • Supports a wide range of popular PLMs including BERT, RoBERTa, T5, GPT-2, GPT-J, Longformer, GLM, ViT, and LLaMA.
  • Features efficient memory utilization, reducing memory footprint by several times.
  • Optimized for low-resource distributed training with ZeRO optimization.
  • Includes implementations for beam search generation for models like T5 and LLaMA.

Maintenance & Community

Licensing & Compatibility

  • License: Apache 2.0 License.
  • Compatibility: Permissive license suitable for commercial use and integration with closed-source projects.

Limitations & Caveats

The project is built upon BMTrain, and its performance and feature set are closely tied to that dependency. While it supports many models, specific model implementations or advanced features might still be under active development.

Health Check
Last commit

1 year ago

Responsiveness

1 week

Pull Requests (30d)
0
Issues (30d)
0
Star History
4 stars in the last 90 days

Explore Similar Projects

Starred by Stas Bekman Stas Bekman(Author of Machine Learning Engineering Open Book; Research Engineer at Snowflake) and Zhiqiang Xie Zhiqiang Xie(Author of SGLang).

veScale by volcengine

0.1%
839
PyTorch-native framework for LLM training
created 1 year ago
updated 3 weeks ago
Starred by Stas Bekman Stas Bekman(Author of Machine Learning Engineering Open Book; Research Engineer at Snowflake) and Travis Fischer Travis Fischer(Founder of Agentic).

lingua by facebookresearch

0.1%
5k
LLM research codebase for training and inference
created 9 months ago
updated 2 weeks ago
Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n), Zhuohan Li Zhuohan Li(Author of vLLM), and
6 more.

torchtitan by pytorch

0.9%
4k
PyTorch platform for generative AI model training research
created 1 year ago
updated 22 hours ago
Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n), Stefan van der Walt Stefan van der Walt(Core Contributor to scientific Python ecosystem), and
8 more.

litgpt by Lightning-AI

0.2%
13k
LLM SDK for pretraining, finetuning, and deploying 20+ high-performance LLMs
created 2 years ago
updated 1 week ago
Feedback? Help us improve.