Skip to content

Commit 27323df

Browse files
mgrange1998facebook-github-bot
authored andcommitted
Extend README and add Changelog
Summary: This extends the README file to include more details about the library as a whole. This also adds a changelog with an initial 0.0.1 version of the library. {F1982241561} {F1982241562} Differential Revision: D83179386
1 parent f503245 commit 27323df

2 files changed

Lines changed: 96 additions & 3 deletions

File tree

CHANGELOG.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Changelog
2+
3+
The release log for PrivacyGuard.
4+
5+
6+
7+
## [0.0.1] -- Oct 1, 2025
8+
9+
#### New Features
10+
* First beta release of PrivacyGuard, an extensible library for Privacy Attacks and Analyses.
11+
* Includes a modular interface of BaseAttack and BaseAnalysisNode
12+
* Includes the following attacks implementations
13+
* Calibration Attack
14+
* LiRA Attack
15+
* Loss Attack
16+
* RMIA Attack
17+
* Text Inclusion Attack
18+
* Probabilistic Memorization Attack
19+
* Includes the following analysis implementations
20+
* Membership Inference Attack Analysis
21+
* Text Inclusion Analysis
22+
* Probabilistic Memorization Analysis from Logits
23+
* Probabilistic Memorization Analysis from Logprobs
24+
* Reference Model Comparison
25+
26+
27+
28+
29+
#### Bug Fixes
30+
31+
#### Other changes

README.md

Lines changed: 65 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,66 @@
1-
# Contributing
1+
# PrivacyGuard
2+
3+
<hr/>
4+
5+
6+
7+
[![Build Status](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
8+
9+
PrivacyGuard is a library that allows you to perform a privacy analysis (e.g., Membership Inference, Text Inclusion) of models in PyTorch or LLM models. This repo implements various privacy attacks, alongside analysis nodes to interpet the attack results. With PrivacyGuard, you can:
10+
11+
- Run an off-the-shelf analysis to approximately assess privacy leakage and data memorization in an already trained model.
12+
- Run deeper analysis to better grasp the privacy issues (for instance, SOTA shadow models attack).
13+
- Provide useful primitives for analysis such as grouped or balanced attacks and various metrics such as AUC/ROC or empirical epsilon.
14+
- Execute LLM text generation attacks and probabilistic decoding methods.
15+
16+
## Why PrivacyGuard?
17+
18+
- **Extensible API**: PrivacyGuard has an extensible API that allows for easy creation
19+
of new analyses and attacks. This makes it easy for researchers to extend the library
20+
and build off of existing Privacy attacks, reproduce the results of existing attacks on new
21+
models and datasets, and develop new attacks.
22+
23+
- **End to End Privacy Attacks out of the box**: PrivacyGuard abstracts away analysis details
24+
allowing for quick set up and execution of pragmatic and SOTA privacy attacks.
25+
26+
- **State-of-the-art methods**: PrivacyGuard implements and maintains state of the art attacks, such as
27+
LiRA Likelihood Ratio Attack and probabilistic decoding methods
28+
29+
- **Flexible:** PrivacyGuard is highly configurable, allowing researchers to plug in novel
30+
privacy attacks, models, datasets, and analyses.
31+
32+
- **Production ready:** PrivacyGuard is a reliable and well supported library with comprehensive testing
33+
and CI, ensuring the library remains in a easy to use state.
34+
35+
## Getting Started
36+
37+
To work with PrivacyGuard, we recomemend cloning the repository and installing all dependencies.
38+
39+
```
40+
git clone https://github.com/facebookresearch/PrivacyGuard.git --depth 1
41+
cd PrivacyGuard
42+
pip install -e
43+
```
44+
45+
46+
47+
## Installation
48+
49+
PrivacyGuard requires Python 3.10 or newer. A full list of PrivacyGuard's direct dependencies can be
50+
found in [setup.py](https://github.com/facebookresearch/PrivacyGuard/blob/main/pyproject.toml).
51+
52+
53+
## Join the PrivacyGuard Community
54+
55+
### Getting help
56+
57+
Please open an issue on our [issues page](https://github.com/facebookresearch/PrivacyGuard/issues)
58+
with any questions, feature requests or bug reports! If posting a bug report,
59+
please include a minimal reproducible example (as a code snippet) that we can
60+
use to reproduce and debug the problem you encountered.
61+
62+
63+
### Contributing
264

365
See the CONTRIBUTING file for how to help out.
466
When contributing to PrivacyGuard, we recommend cloning the repository and installing all optional dependencies:
@@ -10,6 +72,6 @@ pip install -e .[tutorial]
1072
The above example limits the cloned directory size via the --depth argument to git clone. If you require the entire commit history you may remove this argument.
1173

1274

13-
# License
75+
## License
1476

15-
PrivacyGuard is licensed under the MIT license.
77+
PrivacyGuard is licensed under the [MIT license](./LICENSE).

0 commit comments

Comments
 (0)