← all repositories
whylabs/whylogs

Log your data’s habits, not its secrets

whylogs generates compact statistical profiles so you can monitor data quality, detect drift, and enforce constraints without moving raw data around.

2.8k stars Jupyter Notebook LLMOps · EvalData Tooling
whylogs
Not currently ranked — collecting fresh signals.
star history

What it does

whylogs generates compact statistical summaries—called profiles—from any dataset. These profiles capture distributions, missing values, and custom metrics without storing raw rows, letting you track data drift, validate pipeline constraints, and audit model inputs after the fact. It runs in both Python and Java, and the profiles are designed to merge so distributed or streaming workloads can be aggregated cleanly.

The interesting bit

Instead of sampling or shipping raw data, whylogs uses mergeable statistical sketches. You can generate profiles on separate workers or time slices, fuse them into a single aggregate, and still catch training-serving skew or concept drift without centralizing sensitive rows.

Key highlights

  • Profiles capture distribution shapes, missing-value counts, and configurable custom metrics for structured or unstructured data
  • Mergeable design supports distributed logging and arbitrary time-window aggregation
  • Constraint rules can trigger failures in unit tests or CI/CD when data breaks expected ranges or formats
  • Built-in Jupyter visualizer generates interactive drift reports and profile comparisons
  • Optional WhyLabs SaaS integration turns profiles into automated monitoring alerts; a free starter tier exists

Caveats

  • Java is supported, but every example and visualizer in the README is Python-first

Verdict

A solid fit for ML teams that need offline-capable, privacy-preserving data quality monitoring without building a full observability stack. Skip it if your platform already handles drift detection and constraint checking end-to-end.

Frequently asked

What is whylabs/whylogs?
whylogs generates compact statistical profiles so you can monitor data quality, detect drift, and enforce constraints without moving raw data around.
Is whylogs open source?
Yes — whylabs/whylogs is open source, released under the Apache-2.0 license.
What language is whylogs written in?
whylabs/whylogs is primarily written in Jupyter Notebook.
How popular is whylogs?
whylabs/whylogs has 2.8k stars on GitHub.
Where can I find whylogs?
whylabs/whylogs is on GitHub at https://github.com/whylabs/whylogs.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.