Metadata-Version: 2.4
Name: lens-compliance
Version: 0.1.0
Summary: EU AI Act compliance assessment for AI model explanations via IEEE 2894-2024 XAI taxonomy
Project-URL: Homepage, https://github.com/akinj/lens-compliance
Project-URL: Documentation, https://github.com/akinj/lens-compliance#readme
Project-URL: Issues, https://github.com/akinj/lens-compliance/issues
License: Apache-2.0
Keywords: AI-regulation,EU-AI-Act,IEEE-2894,LIME,SHAP,XAI,compliance,explainable-AI,transparency,trustworthy-AI
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Legal Industry
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Description-Content-Type: text/markdown

# lens-compliance

**EU AI Act compliance assessment for AI model explanations.**

Maps XAI library outputs (SHAP, LIME) through the [IEEE 2894-2024](https://standards.ieee.org/ieee/2894/11296/) architectural taxonomy to generate structured evidence for EU AI Act Article 13/14/15 requirements.

- **Standard**: IEEE 2894-2024 / EU AI Act Regulation 2024/1689
- **Deadline**: EU AI Act transparency provisions effective **August 2, 2026**
- **Penalty**: Up to €35M or 7% global turnover for non-compliance

## Installation

```bash
pip install lens-compliance
```

## Quick Start

```python
from lens_compliance import assess

# With a SHAP explanation object
report = assess(
    explanation=shap_values,          # shap.Explanation, LIME, or dict
    model_name="CreditScore-v2",
    model_version="2.3.0",
    deployment_context="Consumer credit application scoring",
    high_risk_category="credit_scoring",
)

print(report.overall_status)         # COMPLIANT / PARTIAL / NON_COMPLIANT
report.save_markdown("report.md")
report.save_json("report.json")
```

## REST API

```bash
pip install lens-compliance fastapi uvicorn
uvicorn lens_compliance.api:app --reload
```

`POST /assess` — full compliance assessment  
`GET /health` — service status  
`GET /categories` — EU AI Act Annex III high-risk categories  
`GET /articles` — covered EU AI Act articles

## EU AI Act Coverage

| Article | Requirement | Quality Dimension |
|---|---|---|
| 13(1) | Transparency — System Interpretability | Comprehensibility + Completeness |
| 13(3)(b) | Output Interpretation Guidance | Comprehensibility + Compactness |
| 14(4) | Human Oversight — Override Enablement | Faithfulness + Completeness |
| 15(1) | Robustness — Explanation Stability | Stability across similar inputs |
| 13(1) Annex III | Individual Explanation (High-Risk) | Local scope + Comprehensibility |

## IEEE 2894-2024 Taxonomy

Explanations are classified into four quadrants:

|  | Local | Global |
|---|---|---|
| **Post-hoc** | SHAP, LIME | Permutation importance |
| **Ante-hoc** | Decision tree path | Linear regression weights |

## High-Risk Categories (Annex III)

`credit_scoring` · `hiring` · `insurance` · `medical_diagnosis` · `critical_infrastructure` · `education` · `law_enforcement` · `migration` · `administration_of_justice` · `biometric`

## License

Apache 2.0
