A newer version of the Gradio SDK is available:
6.2.0
metadata
title: HITL Drug Discovery
emoji: π§¬
colorFrom: blue
colorTo: purple
sdk: gradio
sdk_version: 5.49.1
app_file: app.py
pinned: false
hf_oauth: true
hf_oauth_scopes:
- inference-api
license: apache-2.0
short_description: HITL Drug Discovery with AI Chat and Molecular Analysis
𧬠HITL Drug Discovery Platform
An advanced drug discovery platform combining AI-powered chat with molecular visualization and property analysis using Gradio, RDKit, and the Hugging Face Inference API.
π Quick Start
Running the Application
# Easy launcher (recommended)
python run.py
# Direct launch
python app.py
# Legacy version (backup)
python legacy/app_legacy.py
Access
Once running, open your browser to: http://localhost:7860
β¨ Key Features
- π€ AI Chat Assistant: Expert medicinal chemistry guidance and structure generation
- π¬ Molecular Analysis: Calculate drug-likeness properties and Lipinski's Rule of Five
- π¨ Interactive Visualization: High-quality molecular structure rendering with multiple styles
- π Drug Discovery Library: Curated collection of pharmaceutical compounds
- β‘ Real-time Property Calculation: Molecular weight, LogP, TPSA, hydrogen bonding, and more
- π Chemical Variations: Generate multiple visualization styles of molecular structures
- πΎ Bookmarking: Save and manage favorite molecular structures
ποΈ Project Structure
HITL_Drug_Discovery/
βββ app.py # Main entry point
βββ run.py # Easy launcher script
βββ requirements.txt # Dependencies
βββ src/ # Modular source code
β βββ app.py # Main application orchestrator
β βββ molecules/ # Molecular analysis and variations
β β βββ analysis.py # Property calculations & validation
β β βββ variations.py # Structure variation generation
β βββ ai/ # AI services
β β βββ services.py # AI chat and structure generation
β βββ ui/ # UI components and handlers
β β βββ components.py # UI component definitions
β β βββ handlers.py # Event handlers and business logic
β βββ config/ # Configuration and settings
β βββ settings.py # App configuration and styling
βββ legacy/ # Legacy monolithic version (backup)
βββ app_legacy.py
π§ Technical Architecture
Modular Design Benefits
- Maintainability: Each module has a single responsibility
- Testability: Individual modules can be tested in isolation
- Scalability: Easy to add new features without affecting existing code
- Readability: Clear separation of concerns
- Reusability: Components can be reused across different parts of the app
Key Modules
molecules/analysis.py: SMILES validation, property calculations, drug-likeness assessmentmolecules/variations.py: Generation of multiple molecular structure visualizationsai/services.py: AI-powered chat responses using Hugging Face modelsui/components.py: Reusable UI component definitions for Gradio interfaceui/handlers.py: Event handlers, business logic, and state management
π οΈ Troubleshooting
Virtual Environment Issues
# Create virtual environment
python -m venv venv
# Activate it
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
Common Issues
- Import Errors: Make sure you're in the project directory and virtual environment is activated
- Port Already in Use: The app will automatically use the next available port
- Missing Dependencies: Run
pip install -r requirements.txt
π Future Enhancements
With the modular structure, it's easy to:
- Add new molecular analysis algorithms
- Implement additional AI models
- Create new UI components
- Add database integration
- Implement user authentication
- Add API endpoints
- Create unit tests for each module