Skip to content
Back to skills

Nannyml

ASecurity

"Use NannyML to monitor tabular ML models with performance

  • 247 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 8, 2026
devopspythongobashsqlapidatabaseperformance

Works with

  • cli
  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 20 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill nannyml --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Nannyml?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Nannyml
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-nannyml/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-nannyml)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: nannyml
description: "Use NannyML to monitor tabular ML models with performance
  estimation/calculation, drift detection, data-quality checks, chunking,
  thresholds, and CLI automation."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# NannyML

Use this repo skill when a task involves the `nannyml` Python package, the `nml` or `nannyml` CLI, post-deployment tabular model monitoring, silent model failure investigation, performance estimation without targets, realized performance monitoring, data drift detection, data-quality alerts, or NannyML YAML configuration.

NannyML is a CPU-oriented Python library for monitoring tabular classification and regression models. It supports confidence-based performance estimation (CBPE) for classification, direct loss estimation (DLE) for regression, realized performance calculation when targets arrive, univariate and multivariate drift detection, data-quality checks, summary statistics, and a configuration-driven CLI runner.

## Quick install and smoke check

```bash
python -m pip install nannyml
python - <<'PY'
import nannyml as nml
print("nannyml", nml.__version__)
print(nml.CBPE)
print(nml.UnivariateDriftCalculator)
PY
```

NannyML depends on LightGBM. If installation or import fails around LightGBM system libraries, cloud filesystem dependencies, CLI rendering, or optional database output, read [references/troubleshooting.md](references/troubleshooting.md).

For a broader local sanity check after installation, run the bundled helper:

```bash
python scripts/check_install.py --check all
```

The helper verifies imports, API signatures, built-in dataset loaders, and CLI help without requiring network access, credentials, GPUs, or external services.

## Route map

| User task or symptom | Read next |
| --- | --- |
| Estimate classification performance without analysis targets using CBPE | [sub-skills/performance-monitoring/SKILL.md](sub-skills/performance-monitoring/SKILL.md) |
| Estimate regression performance without analysis targets using DLE | [sub-skills/performance-monitoring/SKILL.md](sub-skills/performance-monitoring/SKILL.md) |
| Calculate realized performance once targets are available | [sub-skills/performance-monitoring/SKILL.md](sub-skills/performance-monitoring/SKILL.md) |
| Compare estimated and realized performance, or compare performance with drift/data-quality results | [references/results-and-plots.md](references/results-and-plots.md) and [sub-skills/performance-monitoring/SKILL.md](sub-skills/performance-monitoring/SKILL.md) |
| Detect feature, output, or target drift | [sub-skills/drift-monitoring/SKILL.md](sub-skills/drift-monitoring/SKILL.md) |
| Choose univariate drift methods or multivariate PCA/domain-classifier drift | [sub-skills/drift-monitoring/references/methods.md](sub-skills/drift-monitoring/references/methods.md) |
| Rank drifted or unhealthy columns by alert count or correlation with performance | [sub-skills/drift-monitoring/SKILL.md](sub-skills/drift-monitoring/SKILL.md) |
| Decide reference/analysis columns, chunking, thresholds, or built-in datasets | [sub-skills/data-setup/SKILL.md](sub-skills/data-setup/SKILL.md) |
| Monitor missing values, unseen values, numerical ranges, or summary statistics | [sub-skills/data-setup/SKILL.md](sub-skills/data-setup/SKILL.md) |
| Use `nml run`, write YAML config, schedule jobs, or persist calculators/results | [sub-skills/cli-and-automation/SKILL.md](sub-skills/cli-and-automation/SKILL.md) |
| Interpret `Result.filter`, `to_df`, `plot`, `compare`, writer outputs, or Plotly figures | [references/results-and-plots.md](references/results-and-plots.md) |
| Pick a bundled sample dataset for a quick example | [references/datasets.md](references/datasets.md) |
| Check whether this skill is stale for a new checkout or package release | [references/repo-provenance.md](references/repo-provenance.md) |

## Common NannyML workflow shape

Most API workflows follow this pattern:

```python
import nannyml as nml

reference_df, analysis_df, analysis_targets_df = nml.load_synthetic_car_loan_dataset()

calculator_or_estimator = ...  # choose from the route map
calculator_or_estimator = calculator_or_estimator.fit(reference_df)
result = calculator_or_estimator.calculate(analysis_df)  # calculators
# or: result = calculator_or_estimator.estimate(analysis_df)  # estimators

result_df = result.filter(period='analysis').to_df(multilevel=False)
figure = result.filter(period='analysis').plot()
```

Use the reference period to establish the baseline and the analysis period to monitor future or production-like records. Targets are required in reference data for performance estimation and in analysis data only when calculating realized performance or target drift.

## Key public entry points

- `nml.CBPE`: classification performance estimation without analysis targets.
- `nml.DLE`: regression performance estimation without analysis targets.
- `nml.PerformanceCalculator`: realized performance calculation with targets.
- `nml.UnivariateDriftCalculator`: feature, output, or target univariate drift.
- `nml.DataReconstructionDriftCalculator`: multivariate PCA reconstruction-error drift.
- `nml.DomainClassifierCalculator`: multivariate domain-classifier AUROC drift.
- `nml.MissingValuesCalculator`, `nml.UnseenValuesCalculator`, `nml.NumericalRangeCalculator`: data-quality monitors.
- `nml.SummaryStatsAvgCalculator`, `SummaryStatsMedianCalculator`, `SummaryStatsRowCountCalculator`, `SummaryStatsStdCalculator`, `SummaryStatsSumCalculator`: summary-statistic monitors.
- `nml.ConstantThreshold`, `nml.StandardDeviationThreshold`: custom alert thresholds.
- `nml.SizeBasedChunker`, `nml.CountBasedChunker`, `nml.PeriodBasedChunker`, `nml.DefaultChunker`: chunking control.
- `nml.AlertCountRanker`, `nml.CorrelationRanker`: ranking and prioritization.
- `nml.RawFilesWriter`, `nml.PickleFileWriter`, `nml.DatabaseWriter`: output writers; `DatabaseWriter` requires the optional `nannyml[db]` extra.
- `nml` / `nannyml` CLI: configuration-driven monitoring runs.

## Boundaries and non-goals

- This skill is for using NannyML as a monitoring package, not for training the user's original predictive model.
- NannyML workflows are tabular and model-agnostic. Route image, text, LLM, time-series forecasting, and deep-learning training tasks to a package-specific skill for that stack unless the task is explicitly about monitoring tabular model outputs with NannyML.
- Database output is optional. Treat SQLAlchemy-compatible exports as requiring `pip install 'nannyml[db]'` and valid database credentials/connection strings.
- The generated skill is self-contained. Do not require future users to open NannyML's original source checkout or run source-repo tests/examples as part of ordinary runtime use.

Files in this skill

  • SKILL.md6.7 KB
  • references/datasets.md5.1 KB
  • references/repo-provenance.md3 KB
  • references/repo-routing-metadata.json304 B
  • references/results-and-plots.md5.5 KB
  • references/troubleshooting.md6 KB
  • scripts/check_install.py7.4 KB
  • sub-skills/cli-and-automation/SKILL.md3.7 KB
  • sub-skills/cli-and-automation/references/cli-reference.md1.7 KB
  • sub-skills/cli-and-automation/references/configuration.md4.9 KB
  • sub-skills/cli-and-automation/references/io-and-store.md3.3 KB
  • sub-skills/cli-and-automation/references/troubleshooting.md3.8 KB
  • sub-skills/data-setup/SKILL.md5.4 KB
  • sub-skills/data-setup/references/chunking-and-thresholds.md5.3 KB
  • sub-skills/data-setup/references/data-quality.md5.7 KB
  • sub-skills/data-setup/references/data-requirements.md4.8 KB
  • sub-skills/data-setup/references/summary-stats.md5 KB
  • sub-skills/data-setup/references/troubleshooting.md3.6 KB
  • sub-skills/drift-monitoring/SKILL.md5.7 KB
  • sub-skills/drift-monitoring/references/methods.md6.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.