Multi-user Stable Diffusion server API deployment
Top 86.1% on sourcepulse
This project provides a Django-based API server for Stable Diffusion, enabling multi-user access, load balancing across multiple GPUs, and autoscaling. It's designed for developers and researchers who need to build custom UIs or services around Stable Diffusion, offering features like queuing, model switching, and support for extensions like ControlNet.
How It Works
The core architecture involves a Django API server that interfaces with the stable-diffusion-webui
codebase. It manages user requests, queues them, and distributes them to available GPU servers via a separate load-balancing server. This load balancer automatically directs traffic to the most suitable GPU, ensuring consistent generation cycles for users. The system supports deploying multiple models on a single GPU to maximize resource utilization.
Quick Start & Requirements
django-cors-headers
, Apache (for Django API deployment), Docker (for Runpod/Replicate). GPU servers require sufficient VRAM for Stable Diffusion models.setup.sh
script handles environment setup, model downloads, and Apache configuration.Highlighted Details
txt2img
and img2img
APIs with parameters mirroring sd-webui
, including extension support.Maintenance & Community
No specific community links (Discord/Slack) or notable contributors are mentioned in the README.
Licensing & Compatibility
The README does not explicitly state a license. Compatibility for commercial use or closed-source linking is not specified.
Limitations & Caveats
The project appears to be primarily focused on Linux environments for its Django API deployment. Specific details on error handling, performance benchmarks, or tested compatibility with various Stable Diffusion extensions are not provided.
1 year ago
Inactive