Skip to main content
Interpreto: Interpretability Toolkit for LLMs

Build status Version Python Version Downloads License: MIT

📚 Explore Interpreto docs >>
🖼️ Checkout our explanation gallery >> 📜 Read our paper >>

🚀 Quick Start

The library is available on PyPI, try pip install interpreto to install it.

Checkout the tutorials to get started:

📦 What's Included

Interpreto 🪄 provides a modular framework encompassing Attribution Methods, Lens Methods, Concept-Based Methods, and Evaluation Metrics.

🔥 Attribution Methods

Interpreto includes both inference-based and gradient-based attribution methods.

They all work seamlessly for both classification (...ForSequenceClassification) and generation (...ForCausalLM)

Inference-based Methods:

Gradient-based methods:

🔍 Lens Methods

Both methods accept a model repository ID directly or a configured AllLayersSplitter for advanced use cases.

💡 Concept-Based Methods or Mechanistic Interpretability

Concept-based explanations aim to provide high-level interpretations of latent model representations.

We propose both supervised (probes and CAVs) and unsupervised (dictionary learning) approaches.

Interpreto generalizes these methods through four core steps, the two first are common between both approaches:

  1. Split a model in two and obtain a dataset of activations
  2. Learn concepts (e.g., from latent embeddings)
  3. Interpret concepts (mapping discovered concepts to human-understandable elements)
  4. Estimate concepts importance (assessing concept relevance to model outputs)

1. Split a model in two and obtain a dataset of activations: (mainly via nnsight):

Choose any layer in any HuggingFace language model with our ModelWithSplitPoints based on nnsight. Then pass a dataset through it to obtain a dataset of activations.

2. (supervised) Train probe with the ProbeExplainer

We differentiate two families of probes:

Both can be tuned with bias_calibrator and normalization parameters.

2. (unsupervised) Dictionary Learning for Concept Discovery (mainly via overcomplete):

3. (unsupervised) Available Concept Interpretation Techniques:

Concept Interpretation Techniques Added in the future:

4. (unsupervised) Concept-to-Output Attribution:

Estimate the contribution of each concept to the model output.

Can be obtained with any concept-based explainer via MethodConcepts.concept_output_gradient().

Papers available in the future:

Thanks to this generalization encompassing all concept-based methods and our highly flexible architecture, we can easily obtain a large number of concept-based methods:

📊 Evaluation Metrics

Evaluation Metrics for Attribution

To evaluate attribution methods faithfulness, there are the Insertion and Deletion metrics.

Evaluation Metrics for Concepts

Concept-based methods have several steps that can be evaluated together via ConSim.

Or independently:

👍 Contributing

Feel free to propose your ideas or come and contribute with us on the Interpreto 🪄 toolbox! We have a specific document where we describe in a simple way how to make your first pull request.

👀 See Also

More from the DEEL project:

  • Xplique a Python library dedicated to explaining neural networks (Images, Time Series, Tabular data) on TensorFlow.
  • Puncc a Python library for predictive uncertainty quantification using conformal prediction.
  • oodeel a Python library that performs post-hoc deep Out-of-Distribution (OOD) detection on already trained neural network image classifiers.
  • deel-lip a Python library for training k-Lipschitz neural networks on TensorFlow.
  • deel-torchlip a Python library for training k-Lipschitz neural networks on PyTorch.
  • Influenciae a Python library dedicated to computing influence values for the discovery of potentially problematic samples in a dataset.
  • DEEL White paper a summary of the DEEL team on the challenges of certifiable AI and the role of data quality, representativity and explainability for this purpose.

🙏 Acknowledgments

This project received funding from the French ”Investing for the Future – PIA3” program within the Artificial and Natural Intelligence Toulouse Institute (ANITI). The authors gratefully acknowledge the support of the DEEL and the FOR projects.

👨‍🎓 Creators

Interpreto 🪄 is a project of the FOR and the DEEL teams at the IRT Saint-Exupéry in Toulouse, France.

🗞️ Citation

If you use Interpreto 🪄 as part of your workflow in a scientific publication, please consider citing 🗞️ our paper:

@article{poche2025interpreto,
    title       = {Interpreto: An Explainability Library for Transformers},
    author      = {Poch{\'e}, Antonin and Mullor, Thomas and Sarti, Gabriele and Boisnard, Fr{\'e}d{\'e}ric and Friedrich, Corentin and Claye, Charlotte and Hoofd, Fran{\c{c}}ois and Bernas, Raphael and Hudelot, C{\'e}line and Jourdan, Fanny},
    journal     = {arXiv preprint arXiv:2512.09730},
    year        = {2025}
}

📝 License

The package is released under MIT license.

Metadata

Release files for interpreto 0.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for interpreto 0.5.2
File Size Uploaded
interpreto-0.5.2.tar.gz 241.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for interpreto 0.5.2
File Interpreter ABI Platform
interpreto-0.5.2-py3-none-any.whl Python 3 none any Details

Total release size: 595.6 kB

Release files / interpreto-0.5.2.tar.gz

Download URL interpreto-0.5.2.tar.gz
Size 241.0 kB
Tags Source
SHA-256 checksum
How to use checksums
e77e3949ac0b4426f9347db107b1de071058f0bebb85fbf12c998a89b7e5f69d
BLAKE2b-256 checksum
How to use checksums
3375efb2899e728dae3cfc6c892502e1e6d749a252fece2bfa36650cf272ad45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.

Transparency log

Release files / interpreto-0.5.2-py3-none-any.whl

Download URL interpreto-0.5.2-py3-none-any.whl
Size 354.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
84fc42a9cbf1c540e1c5cdb3378c0645a85e611e9cf029df8617c232e43bec1c
BLAKE2b-256 checksum
How to use checksums
8f7fcbaca0b8c3fd2aafdaa64a6e21a5343f9e48de88d300103170b1f93e88ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page