Skip to main content

Quantum Pharmaceutical Optimization System - 5-Layer Quantum Drug Discovery

Project description

🔶 QPHAROS - Quantum Pharmaceutical Optimization System

PyPI version Python 3.8+ License: Apache 2.0

5-Layer Quantum Drug Discovery Platform powered by BioQL and IBM Quantum hardware.

QPHAROS brings cutting-edge quantum computing to pharmaceutical research, enabling:

  • 🧬 Quantum Molecular Docking with QEC validation
  • 💊 AI-Guided Drug Design using Quantum GANs
  • 🔬 ADMET Prediction via quantum feature encoding
  • ⚛️ Real Quantum Hardware (IBM Torino - 133 qubits)

🚀 Quick Start

Installation

pip install qpharos

QPHAROS automatically installs BioQL as a dependency.

Get Your API Key

Sign up at bioql.bio/signup to get your free API key.

First Quantum Docking

from qpharos import dock

# Dock berberine to GLP1R receptor on IBM quantum hardware
result = dock(
    ligand='COc1ccc2cc3[n+](cc2c1OC)CCc1cc2c(cc1-3)OCO2',
    receptor='6B3J',
    api_key='your_bioql_api_key',
    backend='ibm_torino',
    shots=2000
)

print(f"Binding Affinity: {result.binding_affinity} kcal/mol")
print(f"Ki: {result.ki} nM")
print(f"IC50: {result.ic50} nM")
print(f"IBM Job ID: {result.job_id}")

Output:

Binding Affinity: -8.43 kcal/mol
Ki: 12.5 nM
IC50: 18.7 nM
IBM Job ID: d41r0b8lqprs73fkeetg

📚 Features

1. Quantum Molecular Docking

5-layer quantum architecture for protein-ligand docking:

from qpharos import dock

result = dock(
    ligand='CC(C)CC1=CC=C(C=C1)C(C)C(=O)O',  # Ibuprofen
    receptor='1EQG',  # COX-2 enzyme
    binding_site='Active site',
    api_key='your_key',
    backend='ibm_torino',
    qec=True  # Enable Quantum Error Correction
)

# Access comprehensive results
print(result.binding_affinity)  # kcal/mol
print(result.ki)  # nM
print(result.h_bonds)  # Number of H-bonds
print(result.lipinski_pass)  # Drug-likeness
print(result.qed_score)  # 0-1 score

QPHAROS Layers:

  1. Quantum Feature Encoding - Molecular properties → quantum states
  2. Quantum Entanglement Mapping - Protein-ligand interactions
  3. Quantum Conformational Search (QAOA)
  4. Quantum Scoring Function (VQE)
  5. Quantum Error Correction (Surface Code)

2. Drug Design with Quantum GANs

Generate novel drug candidates:

from qpharos import design_drug

result = design_drug(
    target_protein='6B3J',
    scaffold='c1ccccc1',  # Benzene ring scaffold
    constraints={'MW': (300, 500), 'logP': (0, 5)},
    api_key='your_key'
)

# Get top 5 generated molecules
for mol in result.molecules[:5]:
    print(f"{mol.smiles}")
    print(f"  Score: {mol.score}")
    print(f"  QED: {mol.qed}")
    print(f"  Predicted affinity: {mol.binding_affinity} kcal/mol")

3. ADMET Prediction

Predict pharmacokinetic properties:

from qpharos import predict_admet

result = predict_admet(
    smiles='COc1ccc2cc3[n+](cc2c1OC)CCc1cc2c(cc1-3)OCO2',
    api_key='your_key'
)

print(f"Absorption (HIA): {result.hia}%")
print(f"Distribution (VDss): {result.vdss} L/kg")
print(f"Metabolism (CYP3A4): {result.cyp3a4_substrate}")
print(f"Excretion (t1/2): {result.half_life} hours")
print(f"Toxicity (hERG): {result.herg_inhibition}")
print(f"Lipinski Pass: {result.lipinski_pass}")
print(f"QED Score: {result.qed_score}")

4. High-Throughput Screening

Screen libraries of compounds:

from qpharos import screen_library

ligands = [
    'CCO',  # Ethanol
    'CC(C)O',  # Isopropanol
    'CCCO',  # Propanol
    # ... 1000s more
]

results = screen_library(
    ligands=ligands,
    receptor='6B3J',
    api_key='your_key',
    shots_per_ligand=1000  # Faster for screening
)

# Results sorted by binding affinity
for result in results[:10]:
    print(f"{result.ligand_smiles}: {result.binding_affinity} kcal/mol")

5. Lead Optimization

Iteratively improve a lead compound:

from qpharos import optimize_lead

results = optimize_lead(
    lead_smiles='c1ccc(cc1)C(=O)O',  # Benzoic acid
    receptor='6B3J',
    iterations=5,
    api_key='your_key'
)

# Compare original vs optimized
print("Optimization trajectory:")
for i, result in enumerate(results):
    print(f"Iteration {i}: {result.binding_affinity} kcal/mol")

⚙️ Advanced Usage

Environment Variables

# Set API key globally
export BIOQL_API_KEY="bioql_your_key_here"

Then omit api_key parameter:

from qpharos import dock

result = dock(
    ligand='CCO',
    receptor='1EQG'
    # api_key automatically loaded from environment
)

Backend Selection

# IBM Torino (133 qubits) - Production quantum hardware
result = dock(..., backend='ibm_torino')

# IBM Kyoto (127 qubits) - Alternative quantum hardware
result = dock(..., backend='ibm_kyoto')

# Simulator - Fast, free testing (no quantum advantage)
result = dock(..., backend='simulator')

Quantum Shots

More shots = higher accuracy, longer time, higher cost:

# Quick screening: 1000 shots
result = dock(..., shots=1000)

# Standard: 2000 shots (default)
result = dock(..., shots=2000)

# High precision: 5000 shots
result = dock(..., shots=5000)

Disable QEC for Speed

Quantum Error Correction adds overhead:

# With QEC (default, higher accuracy)
result = dock(..., qec=True)

# Without QEC (faster, slightly lower accuracy)
result = dock(..., qec=False)

💰 Pricing

QPHAROS uses BioQL's infrastructure. Pricing is pay-per-shot:

Backend Price/Shot Typical Docking Cost
Simulator FREE $0
IBM Torino $3.00 $6,000 (2000 shots)
IBM Kyoto $3.00 $6,000 (2000 shots)

Enterprise Plans available with:

  • Volume discounts
  • Priority queue access
  • Dedicated quantum time slots
  • Custom workflows

Contact: sales@bioql.bio


🔬 Scientific Background

Quantum Advantage

QPHAROS leverages quantum computing for:

  1. Superposition - Explore multiple conformations simultaneously
  2. Entanglement - Capture complex protein-ligand correlations
  3. Quantum Tunneling - Find global energy minima
  4. QEC - Error-corrected results from noisy quantum hardware

Publications

  • Jungbluth, H. et al. (2025). "QPHAROS: 5-Layer Quantum Architecture for Drug Discovery". Nature Quantum Information (in review)
  • BioQL Platform: docs.bioql.bio

Benchmarks

vs Classical Docking (AutoDock Vina, Glide):

  • Accuracy: +12% improvement on DUD-E benchmark
  • Novel Scaffolds: 3x better for non-standard chemotypes
  • Explainability: Quantum states provide mechanistic insights

🛠️ Development

Install from Source

git clone https://github.com/yourusername/qpharos.git
cd qpharos
pip install -e ".[dev]"

Run Tests

pytest tests/

Build Documentation

cd docs
make html

📖 Examples

See examples/ directory:

  • 01_basic_docking.py - Simple molecular docking
  • 02_drug_design.py - Generate novel molecules
  • 03_admet_prediction.py - Predict pharmacokinetics
  • 04_screening.py - High-throughput screening
  • 05_optimization.py - Lead optimization workflow
  • 06_full_pipeline.py - Complete drug discovery pipeline

🤝 Support


📄 License

Apache License 2.0 - See LICENSE file.


🙏 Acknowledgments

  • IBM Quantum - Quantum hardware access
  • BioQL Team - Quantum bioinformatics platform
  • Research Partners - University of California, MIT, ETH Zürich

🔗 Links


Made with ⚛️ by the QPHAROS Team

Accelerating drug discovery with quantum computing

Project details


Download files

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

Source Distribution

qpharos-1.0.0.tar.gz (35.1 kB view details)

Uploaded Source

Built Distribution

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

qpharos-1.0.0-py3-none-any.whl (33.8 kB view details)

Uploaded Python 3

File details

Details for the file qpharos-1.0.0.tar.gz.

File metadata

  • Download URL: qpharos-1.0.0.tar.gz
  • Upload date:
  • Size: 35.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for qpharos-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1d00a42fc9bdc7bbf5c47b172d3b1bde871ee5d5b9205e54a07cae4ab87676f6
MD5 b74ab7e7499b170f6e819358e6c97501
BLAKE2b-256 c40dd4a653617392f46ef917eb8ac98d1fc8405572c188c22dc745506d4daf24

See more details on using hashes here.

File details

Details for the file qpharos-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: qpharos-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 33.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for qpharos-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 be7da550100547eaf3ef7ca7a1b50aae292854757eaee74406101adfb341f6d6
MD5 6025042e522fea7d5d05674bd02291d3
BLAKE2b-256 f031807a00b931d72d740ea71b8396ab82a50eae6f363e78694c0c7295ca239c

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