Skip to content

Commit 335cc54

Browse files
authored
Enhance documentation and add XAI Project branding
Enhance documentation and add XAI Project branding
2 parents 3ac6d47 + d9d6ba7 commit 335cc54

3 files changed

Lines changed: 196 additions & 43 deletions

File tree

README.rst

Lines changed: 163 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,193 @@
11

2-
|
3-
42
=======
53
XAI-Lib
64
=======
75

6+
.. image:: https://img.shields.io/pypi/v/XAI-Library.svg
7+
:target: https://pypi.org/project/XAI-Library/
8+
:alt: PyPI version
9+
10+
.. image:: https://img.shields.io/pypi/pyversions/XAI-Library.svg
11+
:target: https://pypi.org/project/XAI-Library/
12+
:alt: Python versions
13+
14+
.. image:: https://img.shields.io/github/license/kdd-lab/XAI-Lib.svg
15+
:target: https://github.com/kdd-lab/XAI-Lib/blob/main/LICENSE
16+
:alt: License
817

9-
An integrated library for explanation methods.
18+
|
19+
20+
**XAI-Lib** is an integrated Python library for Explainable AI (XAI) that provides a unified interface for various explanation methods. Developed to make machine learning models more interpretable and transparent, XAI-Lib simplifies the process of explaining black-box models across different data types.
1021

11-
A python library to develop explaninable machine learning models. The library provides an integrated interface to setup and execute explanation methods for black boxes.
22+
This project is part of the `XAI Project <https://xai-project.eu/>`_ - a European initiative focused on advancing explainable artificial intelligence research and applications.
1223

13-
The library is designed to be modular and extensible. It provides a simple interface to add new explanation methods and integrate them with the existing ones.
14-
The starting list of explanation methods includes:
15-
* For tabular data:
24+
|
1625
17-
* SHAP
18-
* LIME
19-
* Anchors
20-
* LORE
26+
✨ Features
27+
===========
2128

22-
* For image data:
29+
**XAI-Lib** is designed to be **modular**, **extensible**, and **easy to use**. It provides:
2330

24-
* GradCAM
25-
* LIME
26-
* SHAP
27-
* ABELE
31+
- 🔌 **Unified Interface**: Simple, consistent API for multiple explanation methods
32+
- 📊 **Multiple Data Types**: Support for tabular, image, text, and time-series data
33+
- 🧩 **Extensible Architecture**: Easy integration of new explanation methods
34+
- 🎯 **Model-Agnostic**: Works with any black-box machine learning model
35+
- 📚 **Well-Documented**: Comprehensive documentation and examples
2836

29-
* For text data:
37+
|
3038
31-
* still work-in-progress
39+
🛠️ Supported Explanation Methods
40+
==================================
3241

33-
* For time series data:
42+
Tabular Data
43+
------------
3444

35-
* still work-in-progress
45+
* **SHAP** - SHapley Additive exPlanations
46+
* **LIME** - Local Interpretable Model-agnostic Explanations
47+
* **Anchors** - High-precision model-agnostic explanations
48+
* **LORE** - LOcal Rule-based Explanations
3649

50+
Image Data
51+
----------
52+
53+
* **GradCAM** - Gradient-weighted Class Activation Mapping
54+
* **LIME** - Local Interpretable Model-agnostic Explanations
55+
* **SHAP** - SHapley Additive exPlanations
56+
* **ABELE** - Adversarial Black-box Explainer generating Latent Exemplars
57+
58+
Text Data
59+
---------
60+
61+
* 🚧 **Work in Progress** - Coming soon!
62+
63+
Time Series Data
64+
----------------
65+
66+
* 🚧 **Work in Progress** - Coming soon!
67+
68+
|
3769
38-
Getting Started
70+
📦 Installation
3971
===============
40-
The library can be installed using pip or by cloning the repository.
4172

42-
To install the library using pip, run the following command:
73+
Install from PyPI
74+
-----------------
75+
76+
The easiest way to install **XAI-Lib** is using pip:
4377

4478
.. code-block:: bash
4579
4680
pip install XAI-Library
4781
82+
Install from Source
83+
-------------------
84+
85+
For the latest development version, clone the repository and install in editable mode:
86+
87+
.. code-block:: bash
88+
89+
git clone https://github.com/kdd-lab/XAI-Lib.git
90+
cd XAI-Lib
91+
pip install -e .
4892
49-
To have access to the latest version of the library, clone the repository and create a virtual environment. Then install the library using the following command:
93+
**Recommended**: Use a virtual environment to avoid dependency conflicts:
5094

5195
.. code-block:: bash
5296
53-
virtualenv venv
54-
source venv/bin/activate
55-
pip install -e .
97+
# Create and activate virtual environment
98+
python -m venv venv
99+
source venv/bin/activate # On Windows: venv\Scripts\activate
100+
101+
# Install XAI-Lib
102+
pip install -e .
103+
104+
|
105+
106+
🚀 Quick Start
107+
==============
108+
109+
Here's a simple example of using LIME for tabular data explanation:
110+
111+
.. code-block:: python
112+
113+
from xailib import Explainer
114+
115+
# Initialize your black-box model
116+
# model = YourModel()
117+
118+
# Create an explainer
119+
explainer = Explainer(model, method='lime')
120+
121+
# Generate explanation for a sample
122+
explanation = explainer.explain(sample_data)
123+
124+
# Visualize the explanation
125+
explainer.visualize(explanation)
126+
127+
For more examples and detailed usage, please check the `examples/ <https://github.com/kdd-lab/XAI-Lib/tree/main/examples>`_ directory.
128+
129+
|
130+
131+
📖 Documentation
132+
================
133+
134+
For detailed documentation, tutorials, and API reference, visit:
135+
136+
* **Documentation**: `https://xai-lib.readthedocs.io/ <https://xai-lib.readthedocs.io/>`_
137+
* **GitHub Repository**: `https://github.com/kdd-lab/XAI-Lib <https://github.com/kdd-lab/XAI-Lib>`_
138+
* **Issue Tracker**: `https://github.com/kdd-lab/XAI-Lib/issues <https://github.com/kdd-lab/XAI-Lib/issues>`_
139+
140+
|
141+
142+
🤝 Contributing
143+
===============
144+
145+
We welcome contributions! Please see our `Contributing Guide <CONTRIBUTING.rst>`_ for details on how to:
146+
147+
* Report bugs and request features
148+
* Submit pull requests
149+
* Improve documentation
150+
* Add new explanation methods
151+
152+
|
153+
154+
👥 Authors & Contributors
155+
==========================
156+
157+
See `AUTHORS.rst <AUTHORS.rst>`_ for a complete list of contributors to this project.
158+
159+
|
160+
161+
📄 License
162+
==========
163+
164+
This project is licensed under the MIT License - see the `LICENSE <LICENSE.txt>`_ file for details.
165+
166+
|
167+
168+
🙏 Acknowledgments
169+
==================
170+
171+
This library is developed as part of the **XAI Project** (`https://xai-project.eu/ <https://xai-project.eu/>`_), a European initiative dedicated to advancing explainable artificial intelligence.
172+
173+
The XAI Project aims to:
174+
175+
* Develop new methods for explainable AI
176+
* Create practical tools for AI transparency
177+
* Foster collaboration between research and industry
178+
* Promote responsible AI development
179+
180+
For more information about the XAI Project, visit `https://xai-project.eu/ <https://xai-project.eu/>`_.
181+
182+
|
183+
184+
📧 Contact
185+
==========
186+
187+
For questions and support:
188+
189+
* **Email**: rinzivillo@isti.cnr.it
190+
* **Issue Tracker**: `https://github.com/kdd-lab/XAI-Lib/issues <https://github.com/kdd-lab/XAI-Lib/issues>`_
191+
56192

57193

docs/index.rst

Lines changed: 30 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,26 @@
22
XAI-Lib
33
=======
44

5-
This is the documentation of **XAI-Lib**.
5+
Welcome to the documentation of **XAI-Lib** - an integrated Python library for Explainable AI (XAI).
6+
7+
**XAI-Lib** provides a unified interface for various explanation methods, making machine learning models more interpretable and transparent. The library simplifies the process of explaining black-box models across different data types.
68

79
.. note::
810

9-
This is the main page of your project's `Sphinx`_ documentation.
10-
It is formatted in `reStructuredText`_. Add additional pages
11-
by creating rst-files in ``docs`` and adding them to the `toctree`_ below.
12-
Use then `references`_ in order to link them from this page, e.g.
13-
:ref:`authors` and :ref:`changes`.
11+
This project is part of the `XAI Project <https://xai-project.eu/>`_ - a European initiative focused on advancing explainable artificial intelligence research and applications.
12+
13+
About This Documentation
14+
========================
15+
16+
This documentation is formatted in `reStructuredText`_ and built with `Sphinx`_. It provides comprehensive information about:
1417

15-
It is also possible to refer to the documentation of other Python packages
16-
with the `Python domain syntax`_. By default you can reference the
17-
documentation of `Sphinx`_, `Python`_, `NumPy`_, `SciPy`_, `matplotlib`_,
18-
`Pandas`_, `Scikit-Learn`_. You can add more by extending the
19-
``intersphinx_mapping`` in your Sphinx's ``conf.py``.
18+
- Installation and getting started
19+
- Available explanation methods
20+
- API reference
21+
- Usage examples
22+
- Contributing guidelines
2023

21-
The pretty useful extension `autodoc`_ is activated by default and lets
22-
you include documentation from docstrings. Docstrings can be written in
23-
`Google style`_ (recommended!), `NumPy style`_ and `classical style`_.
24+
The documentation uses the `autodoc`_ extension to include documentation from docstrings, which are written in `Google style`_.
2425

2526

2627
Contents
@@ -44,6 +45,21 @@ Indices and tables
4445
* :ref:`modindex`
4546
* :ref:`search`
4647

48+
49+
Acknowledgments
50+
===============
51+
52+
This library is developed as part of the **XAI Project** (`https://xai-project.eu/ <https://xai-project.eu/>`_), a European initiative dedicated to advancing explainable artificial intelligence.
53+
54+
The XAI Project aims to:
55+
56+
* Develop new methods for explainable AI
57+
* Create practical tools for AI transparency
58+
* Foster collaboration between research and industry
59+
* Promote responsible AI development
60+
61+
For more information about the XAI Project, visit `https://xai-project.eu/ <https://xai-project.eu/>`_.
62+
4763
.. _toctree: https://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html
4864
.. _reStructuredText: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html
4965
.. _references: https://www.sphinx-doc.org/en/stable/markup/inline.html

setup.cfg

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
[metadata]
77
name = XAI Library
8-
description = An integrated library for explanation methods.
8+
description = An integrated library for Explainable AI (XAI) methods - Part of the XAI Project (https://xai-project.eu/)
99
author = rinziv
1010
author_email = rinzivillo@isti.cnr.it
1111
license = MIT
@@ -17,10 +17,11 @@ url = https://github.com/kdd-lab/XAI-Lib/
1717
project_urls =
1818
Documentation = https://github.com/kdd-lab/XAI-Lib/
1919
Source = https://github.com/kdd-lab/XAI-Lib/
20+
Download = https://pypi.org/project/XAI-Library/#files
21+
XAI Project = https://xai-project.eu/
2022
# Changelog = https://pyscaffold.org/en/latest/changelog.html
2123
# Tracker = https://github.com/pyscaffold/pyscaffold/issues
2224
# Conda-Forge = https://anaconda.org/conda-forge/pyscaffold
23-
Download = https://pypi.org/project/XAI-Lib/#files
2425
# Twitter = https://twitter.com/PyScaffold
2526

2627
# Change if running only on Windows, Mac or Linux (comma-separated)

0 commit comments

Comments
 (0)