Skip to content

FlowyML 🌊

Write ML code once. Run it anywhere β€” local, Docker, GCP, AWS, Azure.
Your code stays the same. Only the infrastructure changes.
πŸ”“ Code β‰  Infra πŸ“¦ Artifact-Centric ⚑ Auto-DAG πŸ”¬ 29+ Eval Scorers ☁️ Multi-Cloud πŸ€– GenAI Observability
0Infra Rewrites
29+Eval Scorers
3Cloud Providers
0Arrows to Write
∞Plugin Ecosystem

πŸ’‘ What is FlowyML?

The open-source Python framework that completely decouples your ML code from infrastructure.

Most ML teams waste months wrestling with infrastructure instead of building models. FlowyML fixes this with three core principles:

πŸ”“ Code β‰  Infrastructure

Your ML code is completely independent of where it runs. Develop locally on a laptop, then deploy the exact same code to GCP Vertex AI, AWS SageMaker, or Azure ML. Switch clouds with one environment variable β€” zero code changes, zero rewrites, zero vendor lock-in.

πŸ“¦ Artifact-Centric DAGs

Forget manual DAG wiring. Steps declare what data they produce and consume β€” FlowyML builds the execution graph automatically. Models, Datasets, and Metrics are first-class citizens with automatic lineage, versioning, and type-safe connections.

🏭 Production from Day One

Every pipeline gets smart caching, parallel execution, drift monitoring, 29+ evaluation scorers, a beautiful dark-mode dashboard, and built-in GenAI observability. Not as add-ons β€” out of the box.

The Bottom Line

Write a Python function β†’ Add the @step decorator β†’ Get a production pipeline with caching, lineage tracking, cloud deployment, and a monitoring dashboard. No arrows. No DSLs. No YAML hell. No infrastructure rewrites.

⚑ See the Difference

❌ Traditional Orchestrator
# Airflow / Prefect style
@task
def load_data():
    data = fetch_dataset()
    save_to_s3("s3://bucket/data.csv", data)
    return "s3://bucket/data.csv"

@task
def train(data_path: str):
    data = load_from_s3(data_path)
    model = fit(data)
    save_to_s3("s3://bucket/model.pkl", model)

# Manual wiring required!
load_task = load_data()
train_task = train(load_task)
load_task >> train_task  # 😩 Arrows everywhere
βœ… FlowyML
from flowyml import Pipeline, step, Model

@step(outputs=["dataset"])
def load_data() -> list:
    return fetch_dataset()

@step(inputs=["dataset"], outputs=["model"])
def train(dataset: list) -> Model:
    return Model(fit(dataset))

# Zero arrows β€” DAG builds itself!
pipeline = Pipeline.from_steps(
    load_data, train, name="my_pipeline"
)
pipeline.run()  # πŸŽ‰ Done!

πŸ’‘ What just happened?

FlowyML auto-discovered that train depends on load_data through the dataset artifact. No >> arrows, no .set_downstream(), no manual S3 paths. Just Python.

πŸ—οΈ How FlowyML Works

1

Define Steps

Decorate functions with @step.

@step(outputs=["model"])
def train(data) -> Model:
    return fit(data)
2

Configure Infra

Switch clouds with one env var.

export FLOWYML_STACK=prod
python pipeline.py
3

Monitor & Ship

Dashboard with DAGs, metrics, and traces.

flowyml ui start

πŸ”Œ Works With the Tools You Already Use

15+ integrations across the ML ecosystem β€” from scikit-learn to LangChain, PyTorch to Vertex AI.

πŸ”¬ scikit-learn
πŸ”₯ PyTorch
🧠 TensorFlow
🎯 Keras
πŸ€— Hugging Face
🦜 LangChain
πŸ“Š MLflow
πŸ“ˆ W&B
☁️ GCP Vertex AI
🟧 AWS SageMaker
πŸ”΅ Azure ML
🐳 Docker
☸️ Kubernetes
πŸ’¬ Slack
πŸ€– OpenAI SDK
πŸ”¬ scikit-learn
πŸ”₯ PyTorch
🧠 TensorFlow
🎯 Keras
πŸ€— Hugging Face
🦜 LangChain
πŸ“Š MLflow
πŸ“ˆ W&B
☁️ GCP Vertex AI
🟧 AWS SageMaker
πŸ”΅ Azure ML
🐳 Docker
☸️ Kubernetes
πŸ’¬ Slack
πŸ€– OpenAI SDK

πŸ”“ How Infrastructure Decoupling Works

Your code, FlowyML's orchestration layer, and your infrastructure are three independent layers. Swap any layer without touching the others.

🐍
Your ML Code
Pure Python. @step decorators. No infrastructure imports. Never changes.
↕️
🌊
FlowyML Orchestration Layer
Auto-DAG, artifact catalog, caching, lineage, evaluation, dashboard.
↕️
☁️
Infrastructure (Swappable via flowyml.yaml)
Local β†’ Docker β†’ Vertex AI β†’ SageMaker β†’ Azure ML. One env var to switch.

The Key Insight

Traditional frameworks mix infrastructure into your code (save_to_s3(), load_from_gcs()). FlowyML eliminates this entirely. Your steps produce artifacts by name β€” FlowyML routes them to the right infrastructure based on your stack config. Switch from local development to GCP production with export FLOWYML_STACK=production. Zero code changes.

πŸš€ Built For Every ML Workflow

πŸ‹οΈ

Model Training

End-to-end training pipelines with data loading, preprocessing, training, evaluation, and model registry. Smart caching skips unchanged steps.

Example pipeline β†’

πŸ€–

GenAI & LLM Apps

Build RAG pipelines, fine-tuning workflows, and LLM evaluation suites. Built-in tracing tracks every token, cost, and latency across LangChain, OpenAI, and more.

GenAI observability β†’

πŸ“Š

Evaluation & CI/CD

29+ built-in scorers for classification, regression, and LLM-as-a-Judge. Automatic quality gates block bad models from production.

Evaluation docs β†’

πŸ”„

Continuous Training

Scheduled re-training with drift detection, data validation, and automatic model promotion. Full experiment lineage for audit and reproducibility.

Advanced workflows β†’

🎯 Feature Highlights

πŸ”“

Decouple Code from Infrastructure

Your ML code never touches infrastructure. Develop on a laptop, deploy to Vertex AI, SageMaker, or Azure ML. Switch clouds with export FLOWYML_STACK=prod β€” zero code changes.

Learn more β†’

πŸ“¦

Artifact-Centric Pipelines

Steps declare what data they produce and consume. The DAG builds itself β€” no manual wiring. Models, Datasets, and Metrics are first-class citizens with automatic lineage.

Learn more β†’

πŸ€–

GenAI Observability

Built-in LLM tracing for LangGraph, LangChain, OpenAI SDK, or any framework. Track every token, cost, and latency. No LangSmith needed.

Learn more β†’

🎯

29+ Evaluation Scorers

Production-grade evaluation: classification, regression, and GenAI (LLM-as-a-Judge). Adapters for DeepEval, RAGAS, and Phoenix. CI/CD quality gates built in.

Learn more β†’

πŸ–₯️

Beautiful Dashboard

Dark-mode web UI with pipeline DAG visualization, experiment comparison, artifact inspection, GenAI traces, and model training curves β€” all in real-time.

Learn more β†’

⚑

Smart Caching & Performance

Content-based hashing skips unchanged steps. Parallel execution, map tasks, step grouping, and lazy evaluation keep your pipelines fast.

Learn more β†’

πŸ”€

Dynamic Workflows

Generate sub-pipelines at runtime with @dynamic. Run hyperparameter sweeps, conditional branches, and human-in-the-loop approvals.

Learn more β†’

πŸ”Œ

Plugin Ecosystem

Extensible architecture with plugins for MLflow, W&B, Slack, Docker, Kubernetes, and more. Import 50+ ZenML integrations with one line.

Learn more β†’

πŸ–₯️ The Dashboard

FlowyML ships with a full-featured web dashboard for monitoring, debugging, and managing your entire ML lifecycle.

FlowyML Pipeline Runs

Pipeline DAG β€” Real-time step status

FlowyML Model Curves

Training Curves β€” Interactive charts

FlowyML GenAI Traces

GenAI Traces β€” Token & cost monitoring

πŸ“Š How FlowyML Compares

Many ML platforms offer powerful features β€” but lock them behind paid tiers or enterprise-only editions. FlowyML's mission is to deliver enterprise-grade capabilities as 100% open-source, community-driven software. No feature walls. No upgrade prompts.

$0 All features. No "Pro" or "Enterprise" tiers.
10x Less boilerplate vs. traditional orchestrators
29+ Built-in eval scorers (vs. 0 in most frameworks)
5 min From install to first pipeline running

Feature Matrix β€” What's Included vs. What You'd Pay For Elsewhere

πŸ—οΈ Core Pipeline & Orchestration

Capability General Orchestrators ML Platforms (Free) ML Platforms (Pro / Enterprise) FlowyML (Free, Always)
Pipeline Orchestration βœ… βœ… βœ… βœ…
DAG Construction Manual wiring (>>, .after()) Manual wiring Manual wiring βœ… Auto-inferred from artifacts
Code ↔ Infra Decoupling ❌ Tightly coupled ⚠️ Partial ⚠️ Partial βœ… Complete β€” one env var to switch
Multi-Cloud Deploy ❌ Vendor-locked ⚠️ 1–2 clouds βœ… Paid add-on βœ… GCP + AWS + Azure out of the box
Smart Caching ⚠️ File-timestamp ⚠️ Basic βœ… Content-hash βœ… Content-hash (code + data + config)
Type Safety ❌ Runtime failures ⚠️ Partial ⚠️ Partial βœ… Build-time validation

πŸ“¦ Artifacts, Models & Evaluation

Capability General Orchestrators ML Platforms (Free) ML Platforms (Pro / Enterprise) FlowyML (Free, Always)
Artifact Catalog & Lineage ❌ External tools ⚠️ Basic βœ… Paid tier βœ… Built-in versioning & lineage
Model Registry ❌ Separate product ⚠️ Basic βœ… Paid tier βœ… Built-in promotion & tagging
Evaluation Scorers ❌ None ⚠️ 1–3 basic ⚠️ Limited βœ… 29+ (classification, regression, LLM-as-Judge)
Quality Gates / CI-CD ❌ Build-your-own ❌ Manual βœ… Paid tier βœ… Built-in eval-based gates
Data Drift Monitoring ❌ Separate product ❌ None ⚠️ Add-on βœ… Built-in statistical monitors
Model Leaderboard ❌ None ❌ None ⚠️ Add-on βœ… Built-in with metric ranking

πŸ€– GenAI & Observability

Capability General Orchestrators ML Platforms (Free) ML Platforms (Pro / Enterprise) FlowyML (Free, Always)
GenAI / LLM Tracing ❌ None ❌ None ⚠️ Add-on or separate product βœ… Built-in tracing, token counts, cost
LLM-as-a-Judge Evaluation ❌ None ❌ None ⚠️ Limited βœ… Built-in with arena A/B testing
Dashboard & UI ⚠️ Basic (Airflow UI) ⚠️ Basic βœ… Full (paid) βœ… Included β€” dark mode, DAGs, traces
Notebook β†’ Pipeline ❌ Manual ❌ Manual ⚠️ Limited βœ… One-click via FlowyML Notebook

🏒 Enterprise & Production

Capability General Orchestrators ML Platforms (Free) ML Platforms (Pro / Enterprise) FlowyML (Free, Always)
REST API (Pipeline Triggers) ⚠️ Limited ❌ None βœ… Paid tier βœ… 121 endpoints β€” execute, query, manage
API Token Authentication ❌ None ❌ None βœ… Paid tier βœ… Built-in with per-token permissions
Project Separation ❌ None ❌ None βœ… Paid tier βœ… Built-in β€” isolate teams & experiments
On-Premises Deployment ⚠️ Self-host ⚠️ Limited βœ… Enterprise license βœ… Full self-hosted β€” no license needed
Model Serving & Inference ❌ Separate product ❌ None βœ… Paid add-on βœ… Built-in one-click model deployment
Pipeline Scheduling (Cron) βœ… ⚠️ Basic βœ… Full βœ… Built-in daily, hourly, cron, interval
WebSocket Live Streaming ❌ None ❌ None ⚠️ Limited βœ… Built-in real-time run updates
Notifications (Slack, Email) ⚠️ Plugin ⚠️ Plugin βœ… Included βœ… Built-in multi-channel
Developer Experience YAML configs, rigid DSLs Python SDK Python SDK βœ… Pure Python β€” no DSLs, no YAML

πŸ’‘ Our Philosophy

We believe ML infrastructure should be democratized. Every data scientist β€” whether at a startup or in a research lab β€” deserves enterprise-grade tooling without enterprise-grade pricing. FlowyML ships 121 API endpoints, project isolation, token-based auth, model serving, and full on-premises deployment in one pip install β€” with no upsell, no license keys, and no feature gates. Ever.

πŸ”„ How Artifacts Flow Through Infrastructure

FlowyML automatically routes artifacts to your configured infrastructure based on their type.

graph TB
    subgraph "Your Code"
        S1["@step β†’ Model"] --> A1["πŸ€– Model Artifact"]
        S2["@step β†’ Metrics"] --> A2["πŸ“Š Metrics Dict"]
        S3["@step β†’ Dataset"] --> A3["πŸ“‹ Dataset"]
    end

    subgraph "flowyml.yaml Routing"
        A1 -->|"model_registry"| REG["🏷️ Model Registry"]
        A1 -->|"artifact_store"| GCS["☁️ Cloud Storage"]
        A2 -->|"experiment_tracker"| MLF["πŸ”¬ MLflow / W&B"]
        A3 -->|"artifact_store"| GCS
    end

The Golden Rule

No stack configured? β†’ Artifacts saved locally. Stack configured? β†’ Artifacts auto-routed to cloud based on type. Zero code changes.

🌊 FlowyML Notebook β€” The Reactive Notebook That Ships to Production

FlowyML Notebook is a companion reactive notebook environment that replaces Jupyter for ML workflows. Write Python cells with automatic dependency tracking, then promote directly to FlowyML pipelines with one click.

πŸ”„ Reactive DAG πŸ“ Pure .py Files πŸš€ One-Click Deploy πŸ€– AI Assistant 🧾 43 Recipes

Key features: SmartPrep Advisor Β· Algorithm Matchmaker Β· GitHub Integration Β· SQL First-Class Β· App Mode Β· Rich Data Exploration

pip install flowyml-notebook
fml-notebook dev  # πŸ”₯ Launch with hot-reload

Learn more about FlowyML Notebook GitHub

πŸ—ΊοΈ Explore the Documentation

  • πŸš€ Getting Started --- Build your first pipeline in 5 minutes. Install, create, run, and monitor.

  • πŸ“¦ Core Concepts --- Master Pipelines, Steps, Context, and Artifact Lineage β€” the heart of FlowyML.

  • ✨ Features Explorer --- Deep dive into 20+ features: evaluations, caching, drift detection, templates, and more.

  • 🎨 GUI Dashboard --- Visual tour of the web dashboard: DAGs, metrics, traces, and deployments.

  • πŸ”Œ Plugins & Stacks --- Multi-cloud deployment, artifact routing, and the extensible plugin architecture.

  • 🌐 Ecosystem --- FlowyML Notebook, UnicoLab Keras tools, and the full integration landscape.

πŸ“¦ Installation

pip install flowyml
pip install "flowyml[all]"
pip install "flowyml[gcp]"    # Google Cloud
pip install "flowyml[aws]"    # Amazon Web Services
pip install "flowyml[azure]"  # Microsoft Azure

Ready to stop plumbing?

Focus on the ML. We'll handle the flow.