Kullback-Leibler projections for Bayesian model selection#

Tests Coverage Black

Kulprit is under active development so use it with care. If you find any bugs or have any feature requests, please open an issue on GitHub.

Besides this documentation, we also recommend you to read Robust and efficient projection predictive inference. The paper is not about Kulprit, but introduces the theory behind Kulprit and also provides some practical advice. You may also find this guide on Cross-Validation and model selection is useful.


Kulprit requires a working Python interpreter (3.9+). We recommend installing Python and key numerical libraries using the Anaconda Distribution, which has one-click installers available on all major platforms.

Assuming a standard Python environment is installed on your machine (including pip), Kulprit itself can be installed in one line using pip:

pip install kulprit

Alternatively, if you want the bleeding edge version of the package you can install it from GitHub:

pip install git+https://github.com/bambinos/kulprit.git


Kulprit is tested on Python 3.9+. Dependencies are listed in pyproject.toml and should all be installed by the Kulprit installer; no further action should be required.


We welcome contributions from interested individuals or groups! For information about contributing to Kulrpit check out our instructions, policies, and guidelines here.


See the GitHub contributor page.


If you find Kulprit useful in your work, please cite the following paper:

    title={Robust and efficient projection predictive inference},
    author={Yann McLatchie and Sölvi Rögnvaldsson and Frank Weber and Aki Vehtari},


If you want to support Kulprit financially, you can make a donation to our sister project PyMC.