This repository contains the official implementation and datasets for our paper:
PAD/
├── 📁 data/ # Attack prompts
├── 📁 result/ # Output results
├── 📁 processed/ # Processed data files
├── 📁 corpus/ # Corpus files for retrieval
├── 📁 RetrievalBase/
├── 🐍 generate.py # Main generation script
├── 🐍 llm.py # LLM engine with PAD
├── 🐍 retriever.py # Retrieval system
├── 🐍 evaluate.py # Evaluation script
├── 🐍 utils.py
├── 📄 environment.yml
└── 📄 .gitignore
- Python: 3.9 or higher
- Conda: For environment management
-
Create and activate conda environment:
conda env create -n pad --file environment.yml conda activate pad
-
Download required datasets:
Medical Datasets:
- HealthCareMagic - Place in
corpus/ - iCliniq - Place in
corpus/
Email Dataset:
- Enron Mail - Download and extract to
corpus/
- HealthCareMagic - Place in
python generate.py \
--dataset healthcaremagic \
--model_name EleutherAI/pythia-6.9b \
--retriever_model BAAI/bge-large-en-v1.5 \
--temperature 0.2 \
--max_tokens 256 \
--output_file result/healthcaremagic/pythia/baseline.jsonpython generate.py \
--dataset healthcaremagic \
--model_name EleutherAI/pythia-6.9b \
--retriever_model BAAI/bge-large-en-v1.5 \
--temperature 0.2 \
--add_noise \
--epsilon 0.2 \
--noise_amplification 3.0 \
--min_sensitivity 0.4 \
--max_tokens 256 \
--output_file result/healthcaremagic/pythia/pad.jsonEvaluate baseline extraction attack:
python evaluate.py \
--input_file result/healthcaremagic/pythia/baseline.json \
> result/healthcaremagic/pythia/baseline.txtEvaluate PAD results:
python evaluate.py \
--input_file result/healthcaremagic/pythia/pad.json \
> result/healthcaremagic/pythia/pad.txtIf you find this work useful, please cite our paper:
@article{wang2025privacy,
title={Privacy-Aware Decoding: Mitigating Privacy Leakage of Large Language Models in Retrieval-Augmented Generation},
author={Wang, Haoran and Xu, Xiongxiao and Huang, Baixiang and Shu, Kai},
journal={arXiv preprint arXiv:2508.03098},
year={2025}
}This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.