Metadata-Version: 2.1
Name: pyarmour
Version: 0.1.3
Summary: Zero-configuration adversarial robustness testing for ML models
Home-page: https://github.com/pyarmour/pyarmour
Author: PyArmour Team
Author-email: team@pyarmour.com
License: MIT
Project-URL: Bug Tracker, https://github.com/pyarmour/pyarmour/issues
Project-URL: Documentation, https://pyarmour.readthedocs.io
Project-URL: Source, https://github.com/pyarmour/pyarmour
Keywords: adversarial,machine learning,security,testing,numpy
Platform: any
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Security
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Provides-Extra: dev
License-File: LICENSE

# PyArmour

[![PyPI](https://img.shields.io/pypi/v/pyarmour.svg)](https://pypi.org/project/pyarmour/)
[![License](https://img.shields.io/github/license/pyarmour/pyarmour)](https://github.com/pyarmour/pyarmour/blob/main/LICENSE)
[![CI](https://github.com/pyarmour/pyarmour/actions/workflows/ci.yml/badge.svg)](https://github.com/pyarmour/pyarmour/actions)

Zero-configuration adversarial robustness testing for ML models using pytest.

## Installation

```bash
pip install pyarmour
```

## Quick Start

### Decorator Usage

```python
import pytest
from pyarmour import adversarial_test

@adversarial_test(model, attacks=["fgsm", "pgd"], epsilons=[0.03, 0.1])
def test_my_model(model, x, y):
    assert model(x).argmax() == y
```

### CLI Usage

```bash
pyarmour run --model-path model.pth --data-path test_data/ --output report.html
```

## Features

- Zero-configuration adversarial testing via pytest
- Pure NumPy implementation - no framework dependencies
- Built-in attacks: FGSM, PGD, DeepFool
- Visual diagnostics for vision models
- Text diff reports for NLP models

## Documentation

Full documentation available at [pyarmour.readthedocs.io](https://pyarmour.readthedocs.io)
