Skip to content

Repository files navigation

Epstein Files Verifier

Open-source tool to detect deepfakes and verify claims related to the Epstein files using public DOJ documents.

License: MIT Python 3.11+ Open in GitHub Codespaces

Screenshots

Home Page

Home Page

Document Search (RAG)

Document Search Results

Deepfake Detector

Deepfake Detection Results

Provenance Check

Provenance Check Results

Why This Tool Exists

Following the release of 3.5M+ pages of Epstein files by the U.S. Department of Justice, AI-generated deepfake images falsely linking public figures to Epstein went viral (21M+ views on X alone). Fact-checkers at AP News, Bellingcat, and NewsGuard have been manually debunking these, but there's no automated open-source tool to help.

This project provides three verification tools:

  1. Document Search (RAG) - Search public DOJ documents to verify if a person or claim actually appears in the files
  2. Deepfake Detector - Analyze images to determine if they were AI-generated (94.4% accuracy)
  3. Provenance Checker - Verify image origin via EXIF metadata, C2PA Content Credentials, and known-fakes database

Quick Start

Option 1: Docker (Recommended)

git clone https://github.com/miloudbelarebia/epstein-files-verifier.git
cd epstein-files-verifier
docker compose up -d

Option 2: Local Development

# Backend
cd backend
pip install -e ".[dev]"
uvicorn app.main:app --reload

# Frontend (separate terminal)
cd frontend
npm install
npm run dev

Option 3: GitHub Codespaces

Click the "Open in GitHub Codespaces" badge above. The environment comes pre-configured with Python 3.11, Node.js 22, and all dependencies.

Option 4: Try Online (Deepfake Detector Only)

Try the deepfake detector without installing anything: Hugging Face Spaces Demo

Architecture

Frontend (Next.js :3000)  ->  Backend (FastAPI :8000)  ->  ChromaDB + ML Models

3 pages:                      3 API groups:
/search                       POST /api/search/query     (RAG)
/detect                       POST /api/detect           (Deepfake)
/verify                       POST /api/verify           (Provenance)

Document Ingestion

To populate the RAG search, ingest documents from the DOJ:

# Ingest a single data set (recommended to start)
cd backend
python -m ingestion.cli pipeline --data-set 1

# Ingest all 12 data sets (3.5M+ pages, takes 24-48h)
python -m ingestion.cli pipeline --data-set 1
# ... through data-set 12

# Check status
python -m ingestion.cli status

Data source: U.S. DOJ Epstein Library

API Usage

Deepfake Detection

curl -X POST http://localhost:8000/api/detect \
  -F "image=@suspect_photo.jpg"

Document Search

curl -X POST http://localhost:8000/api/search/query \
  -H "Content-Type: application/json" \
  -d '{"question": "flight logs", "top_k": 10}'

Provenance Check

curl -X POST http://localhost:8000/api/verify \
  -F "image=@suspect_photo.jpg"

How Detection Works

The deepfake detector combines multiple signals:

Signal Weight Description
ML Model (SigLIP) 50% Fine-tuned image classifier (94.4% accuracy)
Metadata Analysis 20% EXIF data: missing camera info, AI software signatures
C2PA Credentials 15% Content Credentials cryptographic verification
Known Fakes DB 10% Perceptual hash match against debunked images
Structural 5% Image artifact analysis (future)

Ethical Design

  • No facial recognition - The tool never collects, compares, or identifies faces
  • No image storage - Uploaded images are processed in memory and immediately discarded
  • Public documents only - Only indexes officially released DOJ documents
  • Mandatory disclaimers - Every response includes a legal disclaimer
  • Known fakes database - Stores only perceptual hashes, never actual images

Tech Stack

  • Backend: Python 3.11, FastAPI, ChromaDB, sentence-transformers, HuggingFace transformers
  • Frontend: Next.js 15, React 19, Tailwind CSS 4, TypeScript
  • ML Model: prithivMLmods/deepfake-detector-model-v1 (SigLIP-based)
  • Embedding: sentence-transformers/all-mpnet-base-v2 (768 dimensions)
  • Deployment: Docker, GitHub Codespaces, Hugging Face Spaces

Development

# Run tests
cd backend && pytest tests/ -v --cov

# Lint
cd backend && ruff check . && ruff format --check .
cd frontend && npm run lint

# Using Makefile
make install   # Install all dependencies
make test      # Run tests
make lint      # Run linters
make dev       # Start dev servers

Contributing

See CONTRIBUTING.md for guidelines.

License

MIT License - see LICENSE for details.

Disclaimer

This tool provides analysis assistance, not legal conclusions. Results are probabilistic and should always be cross-referenced with professional fact-checkers (AP News, Reuters, Bellingcat, etc.). All document data comes from publicly released U.S. Department of Justice files.

About

Open-source tool to detect deepfakes and verify claims related to the Epstein files. RAG on 3.5M+ DOJ pages, SigLIP deepfake detector, image provenance verification.

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages