DeOldify Modernization Roadmap
This document tracks the remaining tasks to fully modernize the DeOldify repository, prioritized by user feedback.
π΄ Priority 1: Intel GPU Support (A-1)
Goal: Ensure robust support for Intel Arc and Data Center GPUs.
- Verify
device_id.py- Ensure
DeviceIdenum includes Intel/XPU options if necessary.
- Ensure
- Verify Integration
- Check if
visualize.pyand other scripts correctly use the_device.pymanager for Intel hardware. - Ensure fallback logic (Intel -> NVIDIA -> CPU) works as intended.
- Check if
- Intel NPU Support
- Investigate and implement NPU detection (OpenVINO/IPEX).
π΄ Priority 2: NVIDIA GPU Modernization (A-2)
Goal: Leverage latest CUDA and PyTorch features while maintaining reasonable backward compatibility.
- Verify Optimization
- Ensure
torch.backends.cudnn.benchmarkand other optimizations are correctly applied for modern NVIDIA GPUs. - Double check
environment.ymlagainst latest PyTorch/CUDA matrix.
- Ensure
- Legacy CUDA Support
- Document support for older drivers (last 5 years) where possible, or provide alternative environment files.
π Priority 3: Colab Modernization
Goal: Fix broken notebooks and improve UX.
- Fix
requirements-colab.txt- Remove
fastai==1.0.60(conflicts with new PyTorch). - Add
torch,torchvision, and other modern dependencies.
- Remove
- Update Notebooks
- Remove
import fastai. - Use
deoldify.fastai_compat.
- Remove
- UI Improvements
- Drag-and-drop, Gallery, Comparison view.
π‘ Priority 4: Documentation & Testing
Goal: Comprehensive guides and stability.
- Detailed Documentation
- Create
docs/HARDWARE_GUIDE.md(Benchmarks & Requirements). - Create
docs/DEPLOYMENT_GUIDE.md(Local serving).
- Create
- Testing
- Create
tests/directory with unit tests for device selection and compatibility layer. - Add CI/CD workflow.
- Create
π΅ Future Work: Cloud Integration
- Migrate Pretrained Weights
- Host models on GitHub Releases to ensure longevity.
- Update all notebooks and docs to point to new URLs.
- Google Cloud Platform (Vertex AI)
- Deployment scripts and containers.