Skip to main content

Hierarchical Evaluation of Drug GEnerators tHrOugh riGorous filtration

Project description

🦔 HEDGEHOG

Hierarchical Evaluation of Drug GEnerators tHrOugh riGorous filtration

PyPI version CI License: MIT Python 3.10+

HEDGEHOG Pipeline

Comprehensive benchmark pipeline for evaluating generative models in molecular design.

Pipeline Stages:

Each stage takes the output of the previous one, progressively filtering the molecule set:

  1. Mol Prep (Datamol): salts/solvents & fragments cleanup, largest-fragment selection, metal disconnection, uncharging, tautomer canonicalization, stereochemistry removal → produces standardized “clean” molecules (molPrep folder)
  2. Molecular Descriptors: 22 physicochemical descriptors (logP, HBD/HBA, TPSA, QED, etc.) → molecules outside thresholds are removed (descriptors folder)
  3. Structural Filters: 6 criteria with ~2500 SMARTS patterns (PAINS, Glaxo, NIBR, Bredt, etc.) → flagged molecules are removed (structural filters folder)
  4. Synthesis Evaluation: SA score, SYBA score, AiZynthFinder retrosynthesis → unsynthesizable molecules are removed (synthesis folder)
  5. Molecular Docking: SMINA and/or GNINA → binding affinity scoring (docking folder)
  6. Docking Filters: post-docking pose quality filtering → poor binders are removed
  7. Final Descriptors: recalculation on the filtered set

Post-pipeline analysis: MolEval generative metrics

Setup & Run

Install from PyPI

python -m pip install hedgehog
hedgehog --help

Install from source (recommended for development)

# Clone repository
git clone https://github.com/LigandPro/hedgehog.git
cd hedgehog


# Install AiZynthFinder (for synthesis stage)
./modules/install_aizynthfinder.sh
#
# Alternatively (recommended), install via CLI:
# uv run hedgehog setup aizynthfinder --yes

# Install package with uv
uv sync

You are ready to use 🦔 HEDGEHOG for your purpose!

Usage

# Run full pipeline on a proposed small test data from `data/test/`
uv run hedgehog run

# Alternatively, using the short-name alias:
uv run hedge run

# Run specific stage
uv run hedge run --stage descriptors

# Enable live progress bar in CLI
uv run hedge run --progress

# Get help
uv run hedge --help

Terminal UI (TUI)

For interactive configuration and pipeline management, use the TUI:

cd tui
npm install
npm run tui

See tui/README.md for details.

Unified verification pipeline

Use one command entry point for local/CI checks:

# Quick local smoke (CLI + TUI build + TUI startup/quit in PTY)
uv run python scripts/check_pipeline.py --mode quick

# CI smoke profile (same checks, no full production run)
uv run python scripts/check_pipeline.py --mode ci

# Full local verification (quick checks + full production pipeline run)
uv run python scripts/check_pipeline.py --mode full

--mode full runs uv run hedgehog run with the default production config, so it can be long-running and requires external stage dependencies (for example docking/synthesis tooling) to be installed in your local environment.

Documentation Site

cd docs && pnpm install && pnpm dev

The docs site is built with Nextra and available at http://localhost:3000.

HTML Reports

After each pipeline run, an interactive HTML report is automatically generated as report.html in the results folder. The report includes:

  • Pipeline summary and molecule retention funnel
  • Per-stage statistics and visualizations
  • Descriptor distributions
  • Filter pass/fail breakdowns
  • Synthesis scores and docking results

Configure your run Edit config for each stage in configs folder based on metrics you want to calculate.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hedgehog-1.0.1.tar.gz (11.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hedgehog-1.0.1-py3-none-any.whl (11.5 MB view details)

Uploaded Python 3

File details

Details for the file hedgehog-1.0.1.tar.gz.

File metadata

  • Download URL: hedgehog-1.0.1.tar.gz
  • Upload date:
  • Size: 11.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for hedgehog-1.0.1.tar.gz
Algorithm Hash digest
SHA256 ac129cabf808f694c6e9f3c3c41c3e22004fd8c1e17b12a4569848b673294920
MD5 32a2c38a166dc9db3e5ae8b47747a354
BLAKE2b-256 6a1e689139553d22174b595feb9d339f61313741bd8d4571719d8549c28414a1

See more details on using hashes here.

File details

Details for the file hedgehog-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: hedgehog-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for hedgehog-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a5150a8aa3362a96ddc277e24801745d7144bd54cfde63715d0a75bfc772087d
MD5 cd87028102e2cef8829fc7bac75eaebc
BLAKE2b-256 b33efbbed088eedf08a8846bfca470334e8a947ae8807902a92ba638a2726795

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page