Skip to main content

Production-grade model registry for the OmniBioAI ecosystem.

Project description

OmniBioAI Model Registry

OmniBioAI Model Registry is a production-grade lifecycle management system for AI/ML models within the OmniBioAI ecosystem.

It provides:

  • Immutable model versioning (write-once versions)
  • Cryptographic integrity verification (SHA256)
  • Provenance-friendly metadata capture
  • Staged promotion workflows (latest → staging → production)
  • Deterministic resolution by stable reference (model@alias or model@version)
  • Local-first design with a clean path to future backends (S3/Azure/on-prem)

The registry is implemented as a standalone Python library and includes:

  • a CLI (omr)
  • a minimal REST service (FastAPI)

Why This Exists

Biomedical AI requires:

  • Reproducibility
  • Auditability
  • Governance
  • Offline / air-gapped deployment
  • Cross-infrastructure execution parity

Traditional ML tooling often assumes:

  • cloud-first infrastructure
  • mutable artifacts
  • weak provenance guarantees

OmniBioAI Model Registry is designed differently.

It treats AI models as scientific artifacts that must be immutable, verifiable, and reproducible across environments.


Role in the OmniBioAI Architecture

OmniBioAI follows a four-plane architecture:

Plane Responsibility
Control Plane UI, registries, metadata, governance
Compute Plane Workflow execution, HPC/cloud adapters
Data Plane Artifacts, datasets, outputs
AI Plane Reasoning, RAG, agents, interpretation

The Model Registry belongs to the Control Plane and provides:

  • AI artifact governance
  • deterministic inference references
  • promotion and audit workflows
  • infrastructure-independent model resolution

Core Design Principles

1) Immutability

Each model version is write-once:

  • no overwrites
  • no silent mutation
  • full historical trace

This guarantees scientific reproducibility.

2) Integrity Verification

Every model package includes a SHA256 manifest:

  • sha256sums.txt hashes the package contents (excluding itself)

This enables:

  • bit-level reproducibility
  • tamper detection
  • trustworthy deployment in regulated environments

3) Provenance-Friendly Metadata

Each model stores structured metadata via model_meta.json, such as:

  • training code version (git commit)
  • dataset reference (e.g., DVC / object store ref)
  • hyperparameters and preprocessing
  • creator and timestamp

4) Promotion Workflow

Models move through controlled stages:


latest → staging → production

All promotions are:

  • explicit
  • append-only
  • audited (audit/promotions.jsonl)

5) Storage Abstraction

v0.1.0 supports:

  • local filesystem backend (localfs)

Planned:

  • S3 / Azure Blob / enterprise on-prem backends

Repository Structure


omnibioai-model-registry/
├── omnibioai_model_registry/
│   ├── api.py
│   ├── config.py
│   ├── refs.py
│   ├── storage/
│   ├── package/
│   ├── audit/
│   ├── cli/
│   └── service/
├── tests/
├── pyproject.toml
└── README.md


Canonical Model Package Layout

Registered models follow a strict, portable structure:


<OMNIBIOAI_MODEL_REGISTRY_ROOT>/
tasks/<task>/models/<model_name>/
versions/<version>/
model.pt
model_genes.txt
label_map.json
model_meta.json
metrics.json
feature_schema.json
sha256sums.txt
aliases/
latest.json
staging.json
production.json
audit/
promotions.jsonl

This guarantees:

  • deterministic loading
  • integrity validation
  • cross-environment portability

Install, Build, and Use as a Python Package

1) Configure registry root

The registry requires a root directory:

export OMNIBIOAI_MODEL_REGISTRY_ROOT=~/Desktop/machine/local_registry/model_registry

2) Install (editable) for development

From this repository root:

pip install -e .

Verify:

python -c "import omnibioai_model_registry as m; print('OK', m.__file__)"
omr --help

3) Build a wheel (distribution)

Install build tooling:

pip install build

Build:

python -m build

Artifacts are written to dist/:

  • dist/omnibioai_model_registry-0.1.0-py3-none-any.whl
  • dist/omnibioai_model_registry-0.1.0.tar.gz

Install the wheel:

pip install dist/*.whl

CLI Usage (omr)

Register a model package

omr register \
  --task celltype_sc \
  --model human_pbmc \
  --version 2026-02-14_001 \
  --artifacts /tmp/model_pkg \
  --set-alias latest

Resolve a model reference

omr resolve --task celltype_sc --ref human_pbmc@latest

Promote a version to production

omr promote --task celltype_sc --model human_pbmc --version 2026-02-14_001 --alias production

Verify integrity

omr verify --task celltype_sc --ref human_pbmc@production

Show metadata

omr show --task celltype_sc --ref human_pbmc@production --json

Python API Usage

from omnibioai_model_registry import register_model, resolve_model, promote_model

register_model(
    task="celltype_sc",
    model_name="human_pbmc",
    version="2026-02-14_001",
    artifacts_dir="/tmp/model_pkg",
    metadata={
        "framework": "pytorch",
        "model_type": "classifier",
        "provenance": {
            "git_commit": "abc123",
            "training_data_ref": "s3://bucket/datasets/pbmc_v1",
            "trainer_version": "0.1.0",
        },
    },
    set_alias="latest",
    actor="manish",
    reason="initial training",
)

# Resolve by alias (or version)
path = resolve_model("celltype_sc", "human_pbmc@latest", verify=True)
print("Resolved model dir:", path)

# Promote to production
promote_model(
    task="celltype_sc",
    model_name="human_pbmc",
    alias="production",
    version="2026-02-14_001",
    actor="manish",
    reason="validated metrics",
)

Minimal REST Service (FastAPI)

Run locally

pip install -r omnibioai_model_registry/service/requirements.txt
uvicorn omnibioai_model_registry.service.app.main:app --host 0.0.0.0 --port 8095

Test:

curl -s http://127.0.0.1:8095/health | python -m json.tool

Endpoints:

  • POST /v1/register
  • GET /v1/resolve
  • POST /v1/promote
  • POST /v1/verify
  • GET /v1/show

Testing

pip install -e ".[dev]"
pytest -q

Relationship to OmniBioAI Ecosystem

This registry is a control-plane component of OmniBioAI.

Companion repositories:

  • omnibioai → AI-powered bioinformatics workbench
  • omnibioai-tes → execution orchestration across local/HPC/cloud
  • omnibioai-rag → reasoning and literature intelligence
  • omnibioai-lims → laboratory data management
  • omnibioai-workflow-bundles → reproducible pipelines
  • omnibioai-sdk → Python client access

The Model Registry provides the AI artifact governance layer shared by all.


Roadmap

Near Term

  • additional storage backends (S3 / Azure)
  • expanded metadata validation + schemas
  • model listing and metadata search APIs

Mid Term

  • RBAC and governance controls
  • richer registry service APIs (auth, pagination, filtering)
  • comparison and promotion policies

Long Term

  • enterprise biomedical AI governance platform
  • regulatory-ready audit and lineage
  • deeper integration with experiment tracking and clinical pipelines

Status

  • ✅ Immutable and verifiable model storage
  • ✅ Audit-ready promotion workflow
  • ✅ CLI + minimal REST service
  • ✅ Local-first, cloud-ready design

OmniBioAI Model Registry establishes the foundation for trustworthy, reproducible biomedical AI deployment.

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

omnibioai_model_registry-0.1.0.tar.gz (18.2 kB view details)

Uploaded Source

Built Distribution

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

omnibioai_model_registry-0.1.0-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file omnibioai_model_registry-0.1.0.tar.gz.

File metadata

  • Download URL: omnibioai_model_registry-0.1.0.tar.gz
  • Upload date:
  • Size: 18.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for omnibioai_model_registry-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b34445c384c67b7122ac3b4ad1959a28badbbf8bf8c2fe0d9fedacb12796d1ec
MD5 55034f2a6a285325dc093c42b181c476
BLAKE2b-256 4aee1e88b4f5c684f4cf9d53b9ec3fcfa5bf85b8fa5757e4b43bb64a878a44e9

See more details on using hashes here.

File details

Details for the file omnibioai_model_registry-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for omnibioai_model_registry-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6f8fe155ef6207182a939c09187946335979e27e9bf30b00d29705222f09b6e8
MD5 1e8b333290d9396a58aca85add8deb72
BLAKE2b-256 4a53ca6e3779a6b2418bd844aaa1637519c748e72e8a83038ee832cf0d1824a4

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