Skip to content

probabl-ai/skore

Repository files navigation

skore logo

The scikit-learn Modeling Companion

Elevate ML Development with Tracking and Built-in Recommended Practices
DocumentationCommunity


license python downloads pypi ci Discord

Why skore?

ML development is an art — blending business sense, stats knowledge, and coding skills. Brought to you by Probabl, a company co-founded by scikit-learn core developers, skore helps data scientists focus on what matters: building impactful models with hindsight and clarity.

Skore is just at the beginning of its journey, but we’re shipping fast! Frequent updates and new features are on the way as we work toward our vision of becoming a comprehensive library for data scientists, supporting every phase of the machine learning lifecycle.

⭐ Support us with a star and spread the word - it means a lot! ⭐

Key features

  • Track and Visualize Results: Capture your intermediate ML/DS results without the overhead, while gaining deeper insights through intuitive visualizations of your experiments.
  • Elevate Model Development: Avoid common pitfalls and follow recommended practices with automatic guidance and insights.
    • Enhancing key scikit-learn features with skore.CrossValidationReporter and skore.train_test_split().

GIF: short demo of skore

🚀 Quick start

Installation

With pip

We recommend using a virtual environment (venv). You need python>=3.9.

Then, you can install skore by using pip:

pip install -U skore

With conda

skore is available in conda-forge:

conda install conda-forge::skore

You can find information on the latest version here.

Get assistance when developing your ML/DS projects

  1. From your Python code, create and load a skore project:

    import skore
    my_project = skore.create("my_project", overwrite=True)

    This will create a skore project directory named my_project.skore in your current working directory.

  2. Evaluate your model using skore.CrossValidationReporter:

    from sklearn.datasets import load_iris
    from sklearn.svm import SVC
    
    X, y = load_iris(return_X_y=True)
    clf = SVC(kernel="linear", C=1, random_state=0)
    
    reporter = skore.CrossValidationReporter(clf, X, y, cv=5)
    
    # Store the results in the project
    my_project.put("cv_reporter", reporter)
    
    # Display a plot result in your notebook
    reporter.plots.scores
  3. Finally, from your shell (in the same directory), start the UI:

    skore launch "my_project"

    This will open skore-ui in a browser window.

You will automatically be able to visualize some key metrics (although you might have forgotten to specify all of them): Cross-validation screenshot

Also check out skore.train_test_split() that enhances scikit-learn. Learn more in our documentation.

Contributing

Thank you for considering contributing to skore! Join our mission to promote open-source and make machine learning development more robust and effective. Please check the contributing guidelines here.

Feedback & Community

  • Join our Discord to share ideas or get support.
  • Request a feature or report a bug via GitHub Issues.

Brought to you by

Probabl logo