Spaces:
Runtime error
Runtime error
| """ | |
| MediSync: Multi-Modal Medical Analysis System - Runner Script | |
| ============================================================ | |
| This script downloads sample data and launches the MediSync application. | |
| """ | |
| import logging | |
| import sys | |
| from pathlib import Path | |
| # Set up logging | |
| logging.basicConfig( | |
| level=logging.INFO, | |
| format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", | |
| handlers=[logging.StreamHandler(), logging.FileHandler("mediSync.log")], | |
| ) | |
| logger = logging.getLogger(__name__) | |
| def main(): | |
| """ | |
| Main function to set up and run the MediSync application. | |
| """ | |
| logger.info("Starting MediSync setup") | |
| # Add the current directory to Python path | |
| current_dir = Path(__file__).resolve().parent | |
| sys.path.append(str(current_dir)) | |
| # Download sample data if needed | |
| try: | |
| logger.info("Checking for sample data") | |
| from mediSync.utils.download_samples import ( | |
| create_sample_info_file, | |
| download_sample_images, | |
| ) | |
| # Check if sample directory exists and contains images | |
| sample_dir = current_dir / "mediSync" / "data" / "sample" | |
| sample_dir.mkdir(parents=True, exist_ok=True) | |
| image_files = list(sample_dir.glob("*.jpg")) + list(sample_dir.glob("*.png")) | |
| if not image_files: | |
| logger.info("No sample images found. Downloading...") | |
| download_sample_images() | |
| create_sample_info_file() | |
| else: | |
| logger.info(f"Found {len(image_files)} existing sample images") | |
| except Exception as e: | |
| logger.error(f"Error setting up sample data: {e}") | |
| print(f"Warning: Could not set up sample data: {e}") | |
| # Launch the application | |
| try: | |
| logger.info("Launching MediSync application") | |
| from mediSync.app import create_interface | |
| create_interface() | |
| except Exception as e: | |
| logger.error(f"Error launching application: {e}") | |
| print(f"Error: Failed to launch MediSync application: {e}") | |
| return 1 | |
| return 0 | |
| if __name__ == "__main__": | |
| sys.exit(main()) | |