DEV.co
Open-Source Observability · NannyML

nannyml

NannyML is an open-source Python library for monitoring deployed machine learning models by estimating performance and detecting data drift without requiring ground truth labels. It supports both classification and regression tasks with novel algorithms (CBPE for classification, DLE for regression) and provides interactive visualizations for identifying when models degrade.

Source: GitHub — github.com/NannyML/nannyml
2.1k
GitHub stars
188
Forks
Python
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
RepositoryNannyML/nannyml
OwnerNannyML
Primary languagePython
LicenseApache-2.0 — OSI-approved
Stars2.1k
Forks188
Open issues1
Latest releasev0.13.1 (2025-07-12)
Last updated2025-07-12
Sourcehttps://github.com/NannyML/nannyml

What nannyml is

NannyML implements confidence-based performance estimation (CBPE) and direct loss estimation (DLE) algorithms alongside PCA-based multivariate drift detection for tabular data. It is model-agnostic, requires Python, integrates via PyPI/conda, and operates post-deployment to flag silent model failures through statistical drift monitoring.

Quickstart

Get the nannyml source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/NannyML/nannyml.gitcd nannyml# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Delayed or Missing Target Labels

When ground truth labels are unavailable or arrive weeks after predictions, use CBPE (classification) or DLE (regression) to estimate current model performance without waiting for labeled data.

Data Drift Root-Cause Analysis

Detect when feature distributions shift, understand which features changed most, and correlate drift events to performance degradation using PCA-based reconstruction error monitoring.

Production Model Observability Dashboard

Build continuous monitoring dashboards in Jupyter notebooks or integrate into MLOps pipelines to alert on silent model failure before business impact accumulates.

Implementation considerations

  • Baseline calibration: Collect sufficient reference data (reference period) from training/validation to establish normal performance and drift thresholds before monitoring live predictions.
  • Feature engineering: CBPE and DLE assume stable feature pipelines; changes to feature definitions or engineering require recalibration.
  • Computational cost: Running drift detection and performance estimation on high-cardinality or very large feature sets may require batching or sampling strategies.
  • Target label availability: While not required upfront, periodic target labels (when available) improve model retraining and validation of estimated metrics.
  • Integration with monitoring infrastructure: Decide whether to embed within Jupyter for exploration or productionize alerts via scheduled batch jobs or streaming pipelines.

When to avoid it — and what to weigh

  • Non-Tabular Data — Library explicitly supports tabular use cases only. Image, text, time-series, or graph data require alternative approaches.
  • Real-Time Inference Latency Constraints — Performance estimation and drift detection require compute resources; if sub-millisecond latency is mandatory at inference time, evaluate overhead against SLA requirements.
  • Closed-Source Model Requirements — NannyML is Apache-2.0 licensed OSS. If your environment prohibits any copyleft or open-source dependencies in production, requires commercial support guarantee, or has strict IP controls, review licensing obligations with legal.
  • Minimal Data History — Drift detection and performance estimation rely on baseline data distribution and sufficient historical samples. Inadequate calibration history or frequent model retrains may reduce algorithm accuracy.

License & commercial use

Apache License 2.0 (Apache-2.0). Permissive OSI-approved license allowing commercial use, modification, and distribution with condition of liability/warranty disclaimer and attribution of changes. No copyleft requirement.

Apache-2.0 explicitly permits commercial use in proprietary products without royalty or source code disclosure requirements. However, verify that any commercial deployment does not violate internal IP policies, and note that open-source status means no formal vendor support contract is included—reliance on community Slack, GitHub issues, and documentation is primary. Consider engaging NannyML commercial services (if available) for SLA-backed support if production criticality demands guarantees.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationStrong
License clarityClear
Deployment complexityLow
DEV.co fitStrong
Assessment confidenceHigh
Security considerations

Standard Python dependency security applies; review transitive dependencies for vulnerabilities. NannyML itself does not handle authentication, encryption, or credential management—deployment teams must secure data access, model predictions, and alert outputs. No security audit data provided; perform dependency scanning before production deployment.

Alternatives to consider

Evidently AI

Overlaps in data drift detection and model performance monitoring; offers dashboard UI and commercial managed service; requires evaluation of feature parity and hosting model fit.

WhyLabs

Closed-source SaaS for model monitoring with drift detection; includes managed infrastructure and support; appropriate if vendor-backed SLA and UI-first workflow preferred over OSS library.

Custom in-house solution

If monitoring requirements are narrow (e.g., univariate drift only, simple statistical tests), lightweight custom code may suffice; NannyML valuable if multivariate drift and novel performance estimation algorithms justify OSS dependency.

Software development agency

Build on nannyml with DEV.co software developers

Explore NannyML documentation, join the community Slack, or integrate into your MLOps pipeline today. Apache-2.0 licensed, model-agnostic, and built for production.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

nannyml FAQ

Do I need ground truth labels to use NannyML?
Not initially. CBPE and DLE estimate performance without labels. Labels are optional for validation and retraining; when available, they improve calibration and real performance tracking.
What models does NannyML support?
Model-agnostic; works with any tabular model (scikit-learn, XGBoost, LightGBM, etc.) as long as predictions and confidence scores are provided. Non-tabular (image, text) not supported.
Can I use NannyML in production?
Yes. Apache-2.0 license permits commercial use. Integrate into batch pipelines or scheduled Jupyter jobs. No SLA included; community support via Slack and GitHub.
How much baseline data do I need?
Requires sufficient reference period (typically 100s to 1000s of samples) to establish stable baseline distribution and thresholds. Exact requirement depends on feature dimensionality and drift detection sensitivity target.

Software developers & web developers for hire

DEV.co helps companies turn open-source tools like nannyml into production software. Our software development services cover the full lifecycle — architecture, web development, integration, and maintenance — delivered by software developers and web developers who ship. Engage our software development agency to implement or customize it for your open-source observability stack.

Ready to Monitor Your Models?

Explore NannyML documentation, join the community Slack, or integrate into your MLOps pipeline today. Apache-2.0 licensed, model-agnostic, and built for production.