ML API for Nanopore polishing decisions. Optimizes assembly by predicting optimal polishing rounds.
1.8K
ESDP is a machine learning-powered service designed to optimize Oxford Nanopore assembly polishing workflows. It predicts the optimal number of polishing rounds (1, 3, or 5) based on assembly metrics, preventing unnecessary computational waste while ensuring high-quality results.
Run the API service with a single command:
docker run -d --name esdp-service -p 8000:8000 jimmlucas/esdp:latest
Once the container is running, you can request a prediction using curl:
curl -X POST http://localhost:8000/predict \
-H "Content-Type: application/json" \
-d '{
"sample_id": "test_sample_01",
"qv": 35.2,
"error_rate": 0.00032,
"busco_complete": 95.5,
"n50": 4500000,
"num_contigs": 12,
"coverage": 45.0,
"round": 1
}'
ML-Driven Decisions: Uses an XGBoost model trained on real genomic polishing trajectories. Domain-Aware Rules: Integrates biological heuristics (e.g., R1 quality checks and confidence thresholds) to ensure robustness. Production Ready: Built with FastAPI, structured logging, and real-time metrics. Reproducible: Bundled preprocessing (imputation + scaling) to avoid training-serving skew.
If you started the container with the name esdp-service:
# View real-time logs
docker logs -f esdp-service
# Check resource usage
docker stats esdp-service
# Stop the service
docker stop esdp-service
# Interactive debug (bash)
docker exec -it esdp-service /bin/bash
Content type
Image
Digest
sha256:f517a2183…
Size
641.8 MB
Last updated
6 months ago
docker pull jimmlucas/esdp