VedantSingh-100/oumi-poseidon

Python

0

869 commits

updated Dec 20, 2024

See the code

README

Oumi Logo

Oumi: Open Universal Machine Intelligence

E2E Foundation Model Research Platform - Community-first & Enterprise-grade

PyPI version License Pre-review Tests Documentation Code style: black pre-commit

Oumi is a community-first, end-to-end platform for advanced AI research and development. It provides comprehensive support for foundation model workflows - from pretraining and post-training, to data curation, synthesis, and evaluation. Built with enterprise-grade quality and reliability, Oumi serves both researchers pushing the boundaries of AI and organizations building production-ready solutions.

Check out our docs!
↓↓↓↓↓↓
https://oumi.ai/docs
Password: c155c7d02520
↑↑↑↑↑↑

Features

Oumi is designed to be fully flexible yet easy to use:

  • Run Anywhere: Train and evaluate models seamlessly across environments - from local machines to remote clusters, with native support for Jupyter notebooks and VS Code debugging.

  • Comprehensive Training: Support for the full ML lifecycle - from pretraining to fine-tuning (SFT, LoRA, QLoRA, DPO) to evaluation. Built for both research exploration and production deployment.

  • Built for Scale: First-class support for distributed training with PyTorch DDP and FSDP. Efficiently handle models up to 405B parameters.

  • Reproducible Research: Version-controlled configurations via YAML files and CLI arguments ensure fully reproducible experiments across training and evaluation pipelines.

  • Unified Interface: One consistent interface for everything - data processing, training, evaluation, and inference. Seamlessly work with both open models and commercial APIs (OpenAI, Anthropic, Vertex AI).

  • Extensible Architecture: Easily add new models, datasets, training approaches and evaluation metrics. Built with modularity in mind.

  • Production Ready: Comprehensive test coverage, detailed documentation, and enterprise-grade support make Oumi reliable for both research and production use cases.

If there's a feature that you think is missing, let us know or join us in making it a reality by sending a feature request, or contributing directly!

For a full tour of what Oumi can do, dive into our documentation.

Getting Started

With just a couple commands you can install Oumi, train, infer, and evaluate. All it would take is something like the following:

Installation

# Clone the repository
git clone [email protected]:oumi-ai/oumi.git
cd oumi

# Install the package (CPU & NPU only)
pip install -e .  # For local development & testing

# OR, with GPU support (Requires Nvidia or AMD GPU)
pip install -e ".[gpu]"  # For GPU training

Usage

# Training
oumi train -c configs/recipes/smollm/sft/135m/train_quickstart.yaml

# Evaluation
oumi evaluate -c configs/recipes/smollm/evaluation/135m_eval_quickstart.yaml \
--lm_harness_params.tasks "[m_mmlu_en]"

# Inference
oumi infer -c configs/recipes/smollm/inference/135m_infer.yaml \
--generation.max_new_tokens 40 \
--generation.temperature 0.7 \
--interactive

For more advanced training options, see the training guide and distributed training.

Examples & Recipes

Explore our growing collection of ready-to-use configurations for state-of-the-art models and training workflows:

🦙 Llama Family

ModelExample Configurations
Llama3.1 8bLoRA • Full Finetune • QLoRA • Pre-training • Inference • Evaluation
Llama3.1 70bLoRA • Full Finetune • QLoRA • Inference • Evaluation
Llama3.1 405bLoRA • QLoRA • Full Finetune
Llama3.2 3bFull Finetune • LoRA • QLoRA • Evaluation • Inference
Llama3.2 Vision 11bSFT • Inference (SG-Lang) • Inference (vLLM) • Evaluation

🎨 Vision Models

ModelExample Configurations
Llama3.2 Vision 11bSFT • Inference (SG-Lang) • Inference (vLLM) • Evaluation
LLaVA 7bSFT • Inference
Phi3 VisionSFT
Qwen2-VL 2bSFT

🎯 Training Techniques

ModelExample Configurations
Llama3.1 8bFSDP Training • Long Context
Phi-3DPO • DPO+FSDP
FinewebDDP Pre-training • DeepSpeed • FSDP

🚀 Inference

ModelExample Configurations
Llama3.1 8bNative • vLLM • SG-Lang
Llama3.1 70bNative • vLLM • SG-Lang
Llama3.2 Vision 11bvLLM • SG-Lang
GPT-2Native
MistralBulk Inference

Example Notebooks

Comprehensive tutorials and guides to help you master Oumi:

TutorialDescription
🎯 Getting Started: A TourComprehensive overview of Oumi's architecture and core capabilities
Model Training & Finetuning
🔧 Model Finetuning GuideStep-by-step guide to efficient model finetuning techniques
🦙 Advanced Llama TrainingIn-depth walkthrough of Llama model training and optimization
Deployment & Infrastructure
🚀 Distributed InferenceGuide to scaling inference across multiple compute nodes
🔄 vLLM Inference EngineHigh-performance inference using vLLM
☁️ Remote TrainingGuide to running jobs on cloud platforms
🖥️ Custom ClustersSetting up and using custom compute clusters
Datasets & Evaluation
📊 Dataset ManagementBest practices for dataset preparation and processing
⚖️ Custom JudgeCreating custom evaluation metrics and judges
📈 Oumi JudgeUsing Oumi's built-in evaluation framework

Documentation

See the Oumi documentation to learn more about all the platform's capabilities.

Contributing

Did we mention that this is a community-first effort? All contributions are welcome!

Please check the CONTRIBUTING.md file for guidelines on how to contribute to the project.

If you want to contribute but you are short of ideas, please reach out ([email protected])!

Acknowledgements

Oumi makes use of several libraries and tools from the open-source community. We would like to acknowledge and deeply thank the contributors of these projects! 🚀

Citation

If you find Oumi useful in your research, please consider citing it using the following entry:

@software{oumi2024,
  author = {Oumi Community},
  title = {Oumi: an Open, Collaborative Platform for Training Large Foundation Models},
  month = {November},
  year = {2024},
  url = {https://github.com/oumi-ai/oumi}
}

License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.

VedantSingh-100/oumi-poseidon

Python

0

869 commits

updated Dec 20, 2024

See the code

README

Oumi Logo

Oumi: Open Universal Machine Intelligence

E2E Foundation Model Research Platform - Community-first & Enterprise-grade

PyPI version License Pre-review Tests Documentation Code style: black pre-commit

Oumi is a community-first, end-to-end platform for advanced AI research and development. It provides comprehensive support for foundation model workflows - from pretraining and post-training, to data curation, synthesis, and evaluation. Built with enterprise-grade quality and reliability, Oumi serves both researchers pushing the boundaries of AI and organizations building production-ready solutions.

Check out our docs!
↓↓↓↓↓↓
https://oumi.ai/docs
Password: c155c7d02520
↑↑↑↑↑↑

Features

Oumi is designed to be fully flexible yet easy to use:

  • Run Anywhere: Train and evaluate models seamlessly across environments - from local machines to remote clusters, with native support for Jupyter notebooks and VS Code debugging.

  • Comprehensive Training: Support for the full ML lifecycle - from pretraining to fine-tuning (SFT, LoRA, QLoRA, DPO) to evaluation. Built for both research exploration and production deployment.

  • Built for Scale: First-class support for distributed training with PyTorch DDP and FSDP. Efficiently handle models up to 405B parameters.

  • Reproducible Research: Version-controlled configurations via YAML files and CLI arguments ensure fully reproducible experiments across training and evaluation pipelines.

  • Unified Interface: One consistent interface for everything - data processing, training, evaluation, and inference. Seamlessly work with both open models and commercial APIs (OpenAI, Anthropic, Vertex AI).

  • Extensible Architecture: Easily add new models, datasets, training approaches and evaluation metrics. Built with modularity in mind.

  • Production Ready: Comprehensive test coverage, detailed documentation, and enterprise-grade support make Oumi reliable for both research and production use cases.

If there's a feature that you think is missing, let us know or join us in making it a reality by sending a feature request, or contributing directly!

For a full tour of what Oumi can do, dive into our documentation.

Getting Started

With just a couple commands you can install Oumi, train, infer, and evaluate. All it would take is something like the following:

Installation

# Clone the repository
git clone [email protected]:oumi-ai/oumi.git
cd oumi

# Install the package (CPU & NPU only)
pip install -e .  # For local development & testing

# OR, with GPU support (Requires Nvidia or AMD GPU)
pip install -e ".[gpu]"  # For GPU training

Usage

# Training
oumi train -c configs/recipes/smollm/sft/135m/train_quickstart.yaml

# Evaluation
oumi evaluate -c configs/recipes/smollm/evaluation/135m_eval_quickstart.yaml \
--lm_harness_params.tasks "[m_mmlu_en]"

# Inference
oumi infer -c configs/recipes/smollm/inference/135m_infer.yaml \
--generation.max_new_tokens 40 \
--generation.temperature 0.7 \
--interactive

For more advanced training options, see the training guide and distributed training.

Examples & Recipes

Explore our growing collection of ready-to-use configurations for state-of-the-art models and training workflows:

🦙 Llama Family

ModelExample Configurations
Llama3.1 8bLoRA • Full Finetune • QLoRA • Pre-training • Inference • Evaluation
Llama3.1 70bLoRA • Full Finetune • QLoRA • Inference • Evaluation
Llama3.1 405bLoRA • QLoRA • Full Finetune
Llama3.2 3bFull Finetune • LoRA • QLoRA • Evaluation • Inference
Llama3.2 Vision 11bSFT • Inference (SG-Lang) • Inference (vLLM) • Evaluation

🎨 Vision Models

ModelExample Configurations
Llama3.2 Vision 11bSFT • Inference (SG-Lang) • Inference (vLLM) • Evaluation
LLaVA 7bSFT • Inference
Phi3 VisionSFT
Qwen2-VL 2bSFT

🎯 Training Techniques

ModelExample Configurations
Llama3.1 8bFSDP Training • Long Context
Phi-3DPO • DPO+FSDP
FinewebDDP Pre-training • DeepSpeed • FSDP

🚀 Inference

ModelExample Configurations
Llama3.1 8bNative • vLLM • SG-Lang
Llama3.1 70bNative • vLLM • SG-Lang
Llama3.2 Vision 11bvLLM • SG-Lang
GPT-2Native
MistralBulk Inference

Example Notebooks

Comprehensive tutorials and guides to help you master Oumi:

TutorialDescription
🎯 Getting Started: A TourComprehensive overview of Oumi's architecture and core capabilities
Model Training & Finetuning
🔧 Model Finetuning GuideStep-by-step guide to efficient model finetuning techniques
🦙 Advanced Llama TrainingIn-depth walkthrough of Llama model training and optimization
Deployment & Infrastructure
🚀 Distributed InferenceGuide to scaling inference across multiple compute nodes
🔄 vLLM Inference EngineHigh-performance inference using vLLM
☁️ Remote TrainingGuide to running jobs on cloud platforms
🖥️ Custom ClustersSetting up and using custom compute clusters
Datasets & Evaluation
📊 Dataset ManagementBest practices for dataset preparation and processing
⚖️ Custom JudgeCreating custom evaluation metrics and judges
📈 Oumi JudgeUsing Oumi's built-in evaluation framework

Documentation

See the Oumi documentation to learn more about all the platform's capabilities.

Contributing

Did we mention that this is a community-first effort? All contributions are welcome!

Please check the CONTRIBUTING.md file for guidelines on how to contribute to the project.

If you want to contribute but you are short of ideas, please reach out ([email protected])!

Acknowledgements

Oumi makes use of several libraries and tools from the open-source community. We would like to acknowledge and deeply thank the contributors of these projects! 🚀

Citation

If you find Oumi useful in your research, please consider citing it using the following entry:

@software{oumi2024,
  author = {Oumi Community},
  title = {Oumi: an Open, Collaborative Platform for Training Large Foundation Models},
  month = {November},
  year = {2024},
  url = {https://github.com/oumi-ai/oumi}
}

License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.