Neptune is gone. Whatever you migrated to — or wherever you are still looking — Skore is worth ten minutes of your time.
Skore is a Python library built by the scikit-learn founders. It evaluates and inspects your predictive models, structures your experiments, and stores results on your machine—so you can start without operating a separate tracking server. When you are ready, sync to Skore Hub to host experiments in the cloud and explore them in a UI built for data scientists. Open source.
Skore is a Python library to evaluate and get insights from your predictive models. It structures and stores your experiments so you can easily retrieve them later—without rebuilding the fragile glue code that hosted experiment trackers depended on.
Evaluate one or several estimators with a single train-test split or cross-validation and get a structured report from one entry point. You get an estimator report, a cross-validation report, or a comparison report—each with the same mental model so you can explore how your predictive models behave while you experiment.
Turn results into clear visualizations through rich displays, and pull the underlying tables when you need to dig deeper—so figures and numbers stay tied to the same evaluation instead of drifting across notebooks and slides.
Projects store and retrieve your reports so you can revisit insights or compare with new experiments later. Keep everything on disk locally, or use Skore Hub when you want exploration and search in a dedicated interface.
Call skore.evaluate with any scikit-learn–compatible estimator and you get a structured report. That report adapts to the kind of evaluation you want—holdout, cross-validation, or a comparison across models.
import skore, skrub from sklearn.linear_model import Ridge model = skrub.tabular_pipeline(Ridge()) report = skore.evaluate(model, df, y, splitter=0.2) report
import skore, skrub from sklearn.linear_model import Ridge model = skrub.tabular_pipeline(Ridge()) report = skore.evaluate(model, df, y, splitter=5) report
import skore, skrub from sklearn.linear_model import Ridge from sklearn.ensemble import RandomForestRegressor models = [ skrub.tabular_pipeline(Ridge()), skrub.tabular_pipeline(RandomForestRegressor()), ] comparison_report = skore.evaluate(models, df, y, splitter=5) comparison_report
Most workflows start with projects on disk: evaluate, store runs, and reopen reports without running your own tracking server. When you want experiments in a shared, hosted workspace, point the same project at Skore Hub—reports sync there and open in a UI built for data scientists (metrics, folds, figures in one place). See skore.Project for local versus hub modes.
import skore # `report` from skore.evaluate(...) project = skore.Project(name="adult_census_survey", mode="hub") project.put("ridge", report)
Whatever you migrated to, Skore adds the evaluation and diagnostic layer that those tools don't include. No ripping anything out. Just add Skore.
Push Skore reports directly into MLflow runs. Use pip install skore[mlflow] and log structured reports alongside your existing experiments.
W&B focuses on training monitoring and cloud dashboarding. Skore adds structured evaluation that runs locally first, with the option to sync reports to Skore Hub when you want them in a shared, data-science–oriented workspace.
Comet logs individual artifacts you select manually. Skore structures the evaluation around your estimator and task type — automatically.
Use Skore for evaluation and experiment storage on disk—without running your own tracking infrastructure. When your team needs a hosted UI and shared storage, connect to Skore Hub and sync what you already produced locally.
You didn't know it but we're actually pretty good friends. Join us and find out.
Probabl offers Forward Deployed Engineering engagements for teams rebuilding their ML evaluation workflow. If you want expert guidance on getting Skore integrated into your current stack, we can help.
Talk to the team