Most ML failures originate from dataset quality, not model architecture. Featuresmith is an open-source Dataset Review Platform that brings automated code reviews, ML readiness scores, target leakage detection, and version diffing to tabular data.
The Problem
Every serious codebase has linters, formatters, static analyzers, and CI/CD tests. But machine learning datasets—which are just as load-bearing as software code—get almost none of it.
Future timestamps, target correlations, or duplicate ID columns silently artificially inflate validation scores but crash in production.
Unannounced column type changes, null spikes, or unexpected categorical distributions breaking downstream feature pipelines.
Unchecked null ratios and extreme anomalous values degrading model weights and inference accuracy without throwing runtime errors.
Quality drops between snapshot versions (v1 vs v2) going completely unnoticed before expensive model re-training runs.
Training complex neural nets or tree models on datasets plagued by constant zero-variance columns or high-cardinality noise.
Automated pre-training dataset code reviews, 0–100 ML readiness scorecards, and CI/CD gate checks to catch failures before they cost compute.
Product Workflow
Understand how Featuresmith's flagship capabilities work together in a single continuous developer loop.
CSV, Parquet, Excel, pandas/Polars
Load tabular data into a normalized contract with zero data transformations.
fs.review() / featuresmith review
10 automated reviewers evaluate schema, data types, missingness, duplicates, cardinality, feature quality, and snapshot deltas.
Explainable 0–100 Scorecard
Get a clear 0-100 score across 7 effective health dimensions with actionable fix suggestions.
6 Named Pattern Detectors
Catch target correlations, timestamp anomalies, and identifier shapes before training.
fs.diff() Snapshot Comparison
Compare dataset versions to ensure schema, missingness, and health didn't regress.
Ranked, Explainable Fixes
The Recommendation Engine merges findings into a ranked list with confidence and traceability.
fs.plan() / featuresmith plan
Compile accepted recommendations into an inspectable, deterministic Plan of transformation steps.
Current Capabilities
Featuresmith currently provides deterministic profiling, rule-based validation, comprehensive dataset reviews, snapshot diffs, and ML readiness scoring via an SDK and CLI.
Automate code reviews for your datasets before model training. 10 automated reviewers inspect schema, data types, missingness, duplicates, distributions, feature quality, and snapshot deltas.
Know whether your dataset is actually ready for machine learning with an explainable 0–100 quality scorecard across 7 effective health dimensions.
Prevent target leakage, future timestamps, and ID correlation from silently corrupting model validation scores before training.
Understand exactly what changed between two dataset snapshot versions (schema, missingness, distribution shifts, quality deltas).
Stop bad datasets in CI pipelines with deterministic exit-code gating (0 = clean, 1 = findings) and machine-readable JSON exports.
Deterministic computation powered by Polars with extensible plugin points for custom reviewers, rules, connectors, and exporters.
Positioning
Think of Featuresmith as the equivalent of Ruff or ESLint for tabular datasets.
pandas and Polars provide low-level dataframe operations. Featuresmith builds automated dataset reviews, 0–100 ML readiness scorecards, quality rules, and leakage detection on top of them.
ydata-profiling generates heavy HTML reports for manual EDA. Featuresmith is a lightweight, ultra-fast CLI & Python SDK built for automated dataset code reviews and exit-code CI/CD gates.
Great Expectations manages complex pipeline assertions. Featuresmith is a zero-config, developer-first toolkit purpose-built for ML dataset readiness, leakage detection, and version diffing.
Who it's for
Whether you are building pipelines, training models, or managing MLOps, Featuresmith streamlines dataset quality checks.
Stop target leakage and silent schema breaks before spending GPU hours on model training.
Audit raw data instantly and receive an explainable 0–100 ML readiness scorecard with actionable tips.
Prevent corrupted data drops from silently reaching feature stores and training pipelines.
Gate CI/CD pipelines with deterministic CLI exit codes and machine-readable JSON reports.
Learn production data quality best practices with transparent rationale and remediation guidance.
Code Examples
Featuresmith's API is designed to feel natural whether you're scripting from the terminal or integrating into a Python codebase.
import featuresmith as fs# 1. Load dataset (CSV, Parquet, Excel, pandas/Polars DataFrame)dataset = fs.load("examples/data/processed/titanic.csv")print(f"Loaded {dataset.row_count} rows across {len(dataset.schema.names)} columns.")# 2. Run automated dataset code review with 10 reviewersreview_res = fs.review(dataset, target_column="survived")# 3. Extract 0-100 ML Readiness Scorecardscorecard = fs.score(review_res)if scorecard: print(f"ML Readiness Score: {scorecard.overall}/100") for dim in scorecard.dimensions: print(f" - {dim.label}: {dim.score}/100 ({len(dim.contributing_findings)} findings)")# 4. Compare dataset snapshots (Dataset Diff)diff_res = fs.diff("v1.csv", "v2.csv", target_column="survived")print(f"Health Verdict: {diff_res.summary.overall_health}")# 5. Compile an inspectable remediation Plan from accepted recommendationsplan = fs.plan(review_res, accept=["rec.quality.missingness.cabin"])for item in plan.items: print(f" - {item.title} (confidence {item.confidence})")pip install featuresmith-clilatest: v0.4.0Architecture
Featuresmith is designed as a layered pipeline. Each stage builds on the last, giving you clear extension points as your needs grow.
Raw Data Source
CSV · Excel · Parquet · DataFrame
Dataset Layer
fs.load() normalized schema and connectors
Dataset Review Engine
10 automated reviewers · 0–100 ML Readiness Score · 6 Leakage detectors · Diff-aware review
CLI & SDK Interfaces
Zero business logic thin clients calling public SDK APIs
Recommendation & Plan Primitive
Ranked recommendations compiled into inspectable transformation steps
Dataset Contracts & featuresmith.lock (Phase 5+)
Versioned lockfiles, post-apply validation, CI drift-gating
AI-Assisted Planning & Chat (Phase 7+)
Natural-language plan authoring & narrative summaries over deterministic facts
Built for production ML engineering workflows. Featuresmith brings dataset review, readiness scoring, leakage detection, and snapshot diffing to your terminal and Python code.
Automate code reviews for your datasets before model training. 10 automated reviewers inspect schema, missingness, duplicates, data types, constants, cardinality, basic statistics, feature quality, target leakage, and snapshot deltas.
Know whether your dataset is actually ready for machine learning. Deterministic 0–100 score computed across 7 effective health dimensions with per-dimension breakdowns and fix suggestions.
Prevent target leakage and future information from corrupting validation scores. 6 pattern detectors merge column findings across correlation, identifier, timestamp, and duplicate targets.
Understand exactly what changed between two dataset snapshot versions. Compare via fs.diff() or inline in a review with fs.review(source, previous=...) and featuresmith review --previous.
Merge every review finding into a single ranked, explainable list. Deterministic confidence scores and full traceability back to originating findings and reviewers.
Compile accepted recommendations into an inspectable Plan of transformation steps via fs.plan() or featuresmith plan — ready for review before anything is applied.
Featuresmith is evolving toward complete Dataset State Management. While v0.4.0 ships the deterministic Review Engine, Recommendation Engine, Plan primitive, Dataset Diff, and Diff-Aware Review, the long-term architecture completes a continuous engineering loop:
Audit quality & leakage
Ranked fix suggestions
Inspectable change set
Generate sklearn/Polars code
Verify fix outcome
Compare snapshot deltas
Record transformation log
Write featuresmith.lock
Note: Featuresmith generates code for existing libraries (Polars, pandas, scikit-learn, dbt) and will never introduce a proprietary execution engine or custom transformation runtime.
Roadmap
Featuresmith is actively developed. The roadmap is public and contributions are welcome at every phase.
Open Source
Featuresmith is Apache 2.0-licensed and developed entirely in public. Every design decision, API change, and roadmap item is visible on GitHub. We believe the best tools are built with the community, not for it.
Add Featuresmith SDK and CLI to your environment.
pip install featuresmith-cliDive into installation guides, CLI details, and SDK references.
Add custom rules or connectors. View guidelines on GitHub.