MCPcopy Index your code
hub / github.com/oumi-ai/oumi

github.com/oumi-ai/oumi @v0.8 sqlite

repository ↗ · DeepWiki ↗ · release v0.8 ↗
6,946 symbols 32,479 edges 653 files 4,064 documented · 59%
README

Oumi Logo

Documentation Blog Twitter Discord PyPI version License Tests GPU Tests GitHub Repo stars Code style: black pre-commit About

Everything you need to build state-of-the-art foundation models, end-to-end

GitHub trending

🔥 News

Older updates

🔎 About

Oumi is a fully open-source platform that streamlines the entire lifecycle of foundation models - from data preparation and training to evaluation and deployment. Whether you're developing on a laptop, launching large scale experiments on a cluster, or deploying models in production, Oumi provides the tools and workflows you need.

With Oumi, you can:

  • 🚀 Train and fine-tune models from 10M to 405B parameters using state-of-the-art techniques (SFT, LoRA, QLoRA, GRPO, and more)
  • 🤖 Work with both text and multimodal models (Llama, DeepSeek, Qwen, Phi, and others)
  • 🔄 Synthesize and curate training data with LLM judges
  • ⚡️ Deploy models efficiently with popular inference engines (vLLM, SGLang)
  • 📊 Evaluate models comprehensively across standard benchmarks
  • 🌎 Run anywhere - from laptops to clusters to clouds (AWS, Azure, GCP, Lambda, and more)
  • 🔌 Integrate with both open models and commercial APIs (OpenAI, Anthropic, Vertex AI, Together, Parasail, ...)

All with one consistent API, production-grade reliability, and all the flexibility you need for research.

Learn more at oumi.ai, or jump right in with the quickstart guide.

🚀 Getting Started

Notebook Try in Colab Goal
🎯 Getting Started: A Tour Open In Colab Quick tour of core features: training, evaluation, inference, and job management
🔧 Model Finetuning Guide Open In Colab End-to-end guide to LoRA tuning with data prep, training, and evaluation
📚 Model Distillation Open In Colab Guide to distilling large models into smaller, efficient ones
📋 Model Evaluation Open In Colab Comprehensive model evaluation using Oumi's evaluation framework
☁️ Remote Training Open In Colab Launch and monitor training jobs on cloud (AWS, Azure, GCP, Lambda, etc.) platforms
📈 LLM-as-a-Judge Open In Colab Filter and curate training data with built-in judges

🔧 Usage

Installation

Choose the installation method that works best for you:

Using pip (Recommended)

# Basic installation
uv pip install oumi

# With GPU support
uv pip install 'oumi[gpu]'

# Latest development version
uv pip install git+https://github.com/oumi-ai/oumi.git

Don't have uv? Install it or use pip instead.

Using Docker

# Pull the latest image
docker pull ghcr.io/oumi-ai/oumi:latest

# Run oumi commands
docker run --gpus all -it ghcr.io/oumi-ai/oumi:latest oumi --help

# Train with a mounted config
docker run --gpus all -v $(pwd):/workspace -it ghcr.io/oumi-ai/oumi:latest \
    oumi train --config /workspace/my_config.yaml

Quick Install Script (Experimental)

Try Oumi without setting up a Python environment. This installs Oumi in an isolated environment:

curl -LsSf https://oumi.ai/install.sh | bash

For more advanced installation options, see the installation guide.

Oumi CLI

You can quickly use the oumi command to train, evaluate, and infer models using one of the existing recipes:

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

# Evaluation
oumi evaluate -c configs/recipes/smollm/evaluation/135m/quickstart_eval.yaml

# Inference
oumi infer -c configs/recipes/smollm/inference/135m_infer.yaml --interactive

For more advanced options, see the training, evaluation, inference, and llm-as-a-judge guides.

Running Jobs Remotely

You can run jobs remotely on cloud platforms (AWS, Azure, GCP, Lambda, etc.) using the oumi launch command:

# GCP
oumi launch up -c configs/recipes/smollm/sft/135m/quickstart_gcp_job.yaml

# AWS
oumi launch up -c configs/recipes/smollm/sft/135m/quickstart_gcp_job.yaml --resources.cloud aws

# Azure
oumi launch up -c configs/recipes/smollm/sft/135m/quickstart_gcp_job.yaml --resources.cloud azure

# Lambda
oumi launch up -c configs/recipes/smollm/sft/135m/quickstart_gcp_job.yaml --resources.cloud lambda

Note: Oumi is in beta and under active development. The core features are stable, but some advanced features might change as the platform improves.

💻 Why use Oumi?

If you need a comprehensive platform for training, evaluating, or deploying models, Oumi is a great choice.

Here are some of the key features that make Oumi stand out:

  • 🔧 Zero Boilerplate: Get started in minutes with ready-to-use recipes for popular models and workflows. No need to write training loops or data pipelines.
  • 🏢 Enterprise-Grade: Built and validated by teams training models at scale
  • 🎯 Research Ready: Perfect for ML research with easily reproducible experiments, and flexible interfaces for customizing each component.
  • 🌐 Broad Model Support: Works with most popular model architectures - from tiny models to the largest ones, text-only to multimodal.
  • 🚀 SOTA Performance: Native support for distributed training techniques (FSDP, DeepSpeed, DDP) and optimized inference engines (vLLM, SGLang).
  • 🤝 Community First: 100% open source with an active community. No vendor lock-in, no strings attached.

📚 Examples & Recipes

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

Note: These configurations are not an exhaustive list of what's supported, simply examples to get you started. You can find a more exhaustive list of supported models, and datasets (supervised fine-tuning, pre-training, preference tuning, and vision-language finetuning) in the oumi documentation.

Qwen Family

Model Example Configurations

Core symbols most depended-on inside this repo

get
called by 603
src/oumi/mcp/job_registry.py
infer
called by 113
src/oumi/core/inference/base_inference_engine.py
get
called by 110
src/oumi/core/registry/registry.py
finalize_and_validate
called by 93
src/oumi/core/configs/base_config.py
to_yaml
called by 87
src/oumi/core/configs/base_config.py
update
called by 77
src/oumi/mcp/job_registry.py
all
called by 68
src/oumi/mcp/job_registry.py
add
called by 57
src/oumi/mcp/job_registry.py

Shape

Function 3,839
Method 2,195
Class 676
Route 236

Languages

Python100%
TypeScript1%

Modules by API surface

tests/unit/inference/test_remote_inference_engine.py124 symbols
tests/unit/analyze/test_pipeline.py90 symbols
tests/unit/deploy/test_fireworks_client.py85 symbols
tests/unit/core/types/test_conversation.py77 symbols
tests/unit/core/synthesis/test_attribute_synthesizer.py71 symbols
tests/unit/judges/test_base_judge.py70 symbols
tests/unit/core/synthesis/test_dataset_planner.py67 symbols
src/oumi/inference/remote_inference_engine.py61 symbols
tests/unit/core/test_registry.py59 symbols
tests/unit/cli/test_cli_main.py58 symbols
tests/unit/deploy/test_utils.py56 symbols
tests/unit/core/synthesis/test_conversation_synthesizer.py56 symbols

For agents

$ claude mcp add oumi \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact