| Feature | Description | Typical Use‑Case | |---------|-------------|------------------| | | Real‑time charts for latency, error‑rate, throughput, GPU/CPU memory, and custom KPIs. | Spot performance regressions instantly. | | Data‑Drift Detector | Statistical tests (KS, PSI, Wasserstein) + visual diff of feature distributions. | Alert when input data deviates from training distribution. | | Model‑Quality Tracker | Track accuracy, F1, ROC‑AUC, calibration, and custom loss functions per version. | Compare new releases vs. baseline. | | AI‑Explainable Anomalies (v2.3) | LLM‑powered “Why did latency spike?” narratives with root‑cause suggestions. | Reduce MTTR (Mean Time To Resolve) for incidents. | | Alert Engine | Configurable thresholds → Slack, Teams, PagerDuty, email, or custom webhook. | Automated ops hand‑off. | | Plugin SDK | Write Python or JavaScript plugins to ingest any metric (e.g., custom business KPIs). | Extend to non‑ML health checks (e.g., DB latency). | | Collaboration | Shareable dashboards with role‑based access, comment threads, and export‑to‑PDF. | Cross‑team incident post‑mortems. | | Deploy Anywhere | Docker image ( mlhbdapp/server ), Helm chart, or as a Serverless function (AWS Lambda). | Fits on‑prem, cloud, or edge environments. | Bottom line: MLHB App is the “Grafana for ML” – but with built‑in data‑drift, model‑quality, and AI‑explainability baked in. 2️⃣ Why Does It Matter Right Now? | Problem | Traditional Solution | Gap | How MLHB App Bridges It | |---------|---------------------|-----|--------------------------| | Model performance regressions | Manual log parsing, custom Grafana dashboards. | No single source of truth; high friction to add new metrics. | Auto‑discovery of common metrics + plug‑and‑play custom metrics. | | Data‑drift detection | Separate notebooks, ad‑hoc scripts. | Not real‑time; difficult to share with ops. | Live drift visualisation + alerts. | | Incident triage | Sifting through logs + contacting data‑science owners. | Slow, noisy, high MTTR. | LLM‑generated anomaly explanations + in‑app comments. | | Cross‑team visibility | Screenshots, static reports. | Stale, hard to audit. | Role‑based sharing, export, audit logs. | | Vendor lock‑in | Commercial APM (Datadog, New Relic). | Expensive, over‑kill for pure ML telemetry. | Free, open‑source, works with any cloud provider. |
🚀 MLHB Server listening on http://0.0.0.0:8080 Example : A tiny Flask inference API.
return jsonify("sentiment": sentiment, "latency_ms": latency * 1000) mlhbdapp new
app = Flask(__name__)
# app.py from flask import Flask, request, jsonify import mlhbdapp | Feature | Description | Typical Use‑Case |
(mlhbdapp) – What It Is, How It Works, and Why You’ll Want It (Published March 2026 – Updated for the latest v2.3 release) TL;DR | ✅ What you’ll learn | 📌 Quick takeaways | |----------------------|--------------------| | What the MLHB App is | A lightweight, cross‑platform “ML‑Health‑Dashboard” that lets developers and data scientists monitor model performance, data drift, and resource usage in real‑time. | | Why it matters | Turns the dreaded “model‑monitoring nightmare” into a single, shareable UI that integrates with most MLOps stacks (MLflow, Weights & Biases, Vertex AI, SageMaker). | | How to get started | Install via pip install mlhbdapp , spin up a Docker container, and connect your ML pipeline with a one‑line Python hook. | | What’s new in v2.3 | Live‑query notebooks, AI‑generated anomaly explanations, native Teams/Slack alerts, and an extensible plugin SDK. | | When to use it | Any production ML system that needs transparent, low‑latency monitoring without a full‑blown APM suite. |
volumes: mlhb-data: docker compose up -d # Wait a few seconds for the DB init... docker compose logs -f mlhbdapp-server You should see a log line like: | Alert when input data deviates from training distribution
# Install the SDK and the agent pip install mlhbdapp==2.3.0 # docker-compose.yml (copy‑paste) version: "3.9" services: mlhbdapp-server: image: mlhbdapp/server:2.3 container_name: mlhbdapp-server ports: - "8080:8080" # UI & API environment: - POSTGRES_PASSWORD=mlhb_secret - POSTGRES_DB=mlhb volumes: - mlhb-data:/var/lib/postgresql/data healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8080/health"] interval: 10s timeout: 5s retries: 5