Skip to main content

Explainable AI with Large Language Models

Project description

hierophant

This Python library use the power of large language models to provide intuitive, human-readable explanations for the predictions made by machine learning models.

Features

  • Support for scikit-learn and PyTorch models
  • Integration with OpenAI's language models for explanation generation
  • Works with both classification and regression models
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris

from hierophant.explainer import Explainer


iris = load_iris()
X, y = iris.data, iris.target

random_forest = RandomForestClassifier()
random_forest.fit(X, y)

# Create an explainer
explainer = Explainer(random_forest, language_model="openai/gpt-4")

explanations = explainer.explain(X)

For more detailed usage, see our Jupyter notebooks in the examples/ directory.

Contributing

We welcome contributions! See our contribution guide for more details.

License

This project is licensed under the terms of the MIT license.

TODO

  • Support for more model types: Currently, hierophant supports scikit-learn models. In the future, we aim to add support for other types of models, such as PyTorch and TensorFlow models.
  • Support for Hugging Face models: In addition to scikit-learn models, we aim to add support for Hugging Face models. This would allow hierophant to generate explanations for a wide range of state-of-the-art natural language processing models.
  • Improved explanation generation: The current explanation generation process is quite basic. We need to further refine this process to generate more detailed and useful explanations.
  • Model inspection capabilities: For more complex models, we might need to add functionality to inspect the internal workings of the model. This could involve using model interpretation techniques like LIME or SHAP.
  • Data preprocessing functionality: We may need to add functionality to preprocess the data before feeding it to the model or the explanation generation system.
  • Postprocessing of explanations: After generating the explanations, we may want to add postprocessing steps to make the explanations more readable or understandable. This could include summarization, highlighting, or conversion to other formats.
  • Testing: We need to add comprehensive testing to ensure the reliability and robustness of hierophant.
  • Documentation: While we have made a start on documentation, we need to continue to expand and improve it.
  • Examples and tutorials: We should create more example notebooks and tutorials demonstrating how to use hierophant with different types of data and models.
  • Community engagement: As an open-source project, we want to encourage community involvement. We need to continue improving our contribution guidelines and fostering an inclusive and welcoming community.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hierophant-0.1.11.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hierophant-0.1.11-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file hierophant-0.1.11.tar.gz.

File metadata

  • Download URL: hierophant-0.1.11.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.9.16 Darwin/22.6.0

File hashes

Hashes for hierophant-0.1.11.tar.gz
Algorithm Hash digest
SHA256 3ab15996192617f46446b050b3f8ecd9a8b29449465740d6ec9cfc04292ff6f6
MD5 3b24b57279b58d6529af81ff3074a2a1
BLAKE2b-256 a6ce578f024f10331f56c0fd683c9c4096763a714691f44f7d29121fdb8213ac

See more details on using hashes here.

File details

Details for the file hierophant-0.1.11-py3-none-any.whl.

File metadata

  • Download URL: hierophant-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.9.16 Darwin/22.6.0

File hashes

Hashes for hierophant-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 5c7b742e3b4242f67e2b2a418784b460627b1b68e6041fd3448e775ae39d4da5
MD5 68b6493443479e1be082b74f6feb5a1c
BLAKE2b-256 63403cbc9e7c3f417c1756952da0099c843028edf122e379b5703e91c91daa2e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page