Trying to fix basic functionality again.

This commit is contained in:
2025-03-23 11:53:47 -07:00
parent ebda48190a
commit 2141e81f42
406 changed files with 173963 additions and 69 deletions

104
DOCKER_README.md Normal file
View File

@@ -0,0 +1,104 @@
# Synthea Disease Module Generator
This package provides Docker and Nextflow integrations for Synthea to:
1. Generate disease modules using Claude AI
2. Look up existing disease modules by name
3. Run both functions in a containerized environment
## Prerequisites
- Docker
- Nextflow (will be installed automatically if not present)
- Anthropic API key (Claude)
## Setup
1. **Clone the repository and navigate to it**:
```bash
git clone https://github.com/yourusername/synthea-alldiseases.git
cd synthea-alldiseases
```
2. **Set your Anthropic API key**:
Option 1: Environment variable:
```bash
export ANTHROPIC_API_KEY=your_api_key_here
```
Option 2: You'll be prompted to enter it when you run the script if it's not set.
## Usage
### Running the Module Generator
Use the provided script:
```bash
./run_module_generator.sh --disease_name "Disease Name Here"
```
Additional options:
```
--modules_dir Path to modules directory (default: src/main/resources/modules)
--output_dir Output directory for generated modules (default: output)
--help Show help information
```
### Examples
Generate a module for Multiple Sclerosis:
```bash
./run_module_generator.sh --disease_name "Multiple Sclerosis"
```
Generate a module and save it to a custom location:
```bash
./run_module_generator.sh --disease_name "Parkinson's Disease" --output_dir ./custom_modules
```
### Using Docker Compose (Alternative)
You can also run the entire environment using Docker Compose:
```bash
docker-compose up -d
docker-compose exec synthea bash
```
Once inside the container:
```bash
./run_module_generator.sh --disease_name "Disease Name"
```
## How It Works
The pipeline follows these steps:
1. Check if a module already exists for the disease
2. Look up the disease in the disease list for ICD-10 codes and other metadata
3. If the module exists, copy it to the output directory
4. If the module doesn't exist, generate it using Claude AI
5. Save the module to the specified output directory
6. For new modules, also update the modules directory
## Modifying the Docker Configuration
If you need to customize the Docker environment:
1. Edit `Dockerfile` to add dependencies or change the configuration
2. Rebuild the Docker image:
```bash
docker build -t synthea-module-generator .
```
## Troubleshooting
- **API Key Issues**: Ensure your ANTHROPIC_API_KEY is set correctly
- **Docker Permission Issues**: You may need to run Docker commands with sudo
- **Memory Issues**: For large modules, you may need to increase Docker's memory allocation
- **Pipeline Errors**: Check execution_report.html for detailed error information
## License
This project is licensed under the same license as Synthea.