Skip to main content

Model registry and ML pipeline orchestration for fAIr

Project description

fAIr-models

codecov

Model registry and ML pipeline orchestration for fAIr.

fair-py-ops is the Python package for building ZenML pipelines, validating STAC items, and testing locally. The models/ directory is the single source of truth for base model contributions.

Quick Start

Prerequisites: Docker, uv, just.

git clone https://github.com/hotosm/fAIr-models.git
cd fAIr-models
just setup
just example

just setup installs Python deps, brings up the full stack via Docker Compose (Postgres + MinIO + STAC + MLflow + ZenML), and registers the ZenML stack. just example runs all three reference pipelines end-to-end.

Service URL Credentials
ZenML dashboard http://localhost:8080 default / (empty)
MLflow http://localhost:5000 none
STAC API http://localhost:8082 none
MinIO console http://localhost:9001 minioadmin / minioadmin

See Getting Started for the full guide. For Kubernetes parity or production deploys, see infra/README.md.

Documentation

Examples

Three reference implementations demonstrate the full workflow for each supported task:

Example Task Model Path
Segmentation Semantic segmentation UNet (torchgeo) examples/segmentation/
Classification Binary classification ResNet18 (torchvision) examples/classification/
Detection Object detection YOLOv11n (ultralytics) examples/detection/

Commands

Run just to see all recipes.

just setup     # install deps + bring up stack + register ZenML stack
just example   # run all 3 example pipelines
just down      # stop the stack (state preserved, fast restart)
just up        # restart after `just down`
just tear      # destroy stack + volumes + local ZenML state
just lint      # ruff + ty
just test      # pytest
just validate  # validate STAC items + model pipelines
just docs      # serve documentation locally
just commit    # run pre-commit hooks + commitizen

Key Concepts

Concept Description
Base model Reusable ML blueprint (weights, code, Docker image, STAC item)
Local model Finetuned model produced by ZenML pipeline on user data
STAC catalog Model/dataset registry with MLM and Version extensions
ZenML pipeline Orchestrated training and inference workflows

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

fair_py_ops-0.3.0.tar.gz (80.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fair_py_ops-0.3.0-py3-none-any.whl (99.8 kB view details)

Uploaded Python 3

File details

Details for the file fair_py_ops-0.3.0.tar.gz.

File metadata

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

File hashes

Hashes for fair_py_ops-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7c5530f7e86dbe7c2535cdb624f8863fcd83fa2eccecf1651a0af918dce4ed40
MD5 5dfee83d064cf81829f5f7e062849889
BLAKE2b-256 123a87863266b4145fe92e4f4be83297fbafacfb3519ac18a21d8286c8bfc878

See more details on using hashes here.

File details

Details for the file fair_py_ops-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: fair_py_ops-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 99.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fair_py_ops-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 45d7c737ab330f1408df52efd4c6d59043d09b96fd7c173c2a8d75d78416bd8d
MD5 6008800d4d9448f964d56bb7b9fec5d5
BLAKE2b-256 c246f822386b258387194521e7a4365d93d26920181c9506ff77ff41122e56ca

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