diffuzers
A web ui and deployable API for 🤗 diffusers.
< under development, request features using issues, prs not accepted atm >
If something doesnt work as expected, or if you need some features which are not available, then create request using github issues
Features available in the app:
- text to image
- image to image
- instruct pix2pix
- textual inversion
- inpainting
- outpainting (coming soon)
- image info
- stable diffusion upscaler
- gfpgan
- clip interrogator
- more coming soon!
Features available in the api:
- text to image
- image to image
- instruct pix2pix
- textual inversion
- inpainting
- outpainting (via inpainting)
- more coming soon!
Installation
To install bleeding edge version of diffuzers, clone the repo and install it using pip.
git clone https://github.com/abhishekkrthakur/diffuzers
cd diffuzers
pip install -e .
Installation using pip:
pip install diffuzers
Usage
Web App
To run the web app, run the following command:
diffuzers app
API
To run the api, run the following command:
diffuzers api
Starting the API requires the following environment variables:
export X2IMG_MODEL=stabilityai/stable-diffusion-2-1
export DEVICE=cuda
If you want to use inpainting:
export INPAINTING_MODEL=stabilityai/stable-diffusion-2-inpainting
To use long prompt weighting, use:
export PIPELINE=lpw_stable_diffusion
If you have OUTPUT_PATH in environment variables, all generations will be saved in OUTPUT_PATH. You can also use other (or private) huggingface models. To use private models, you must login using huggingface-cli login.
API docs are available at host:port/docs. For example, with default settings, you can access docs at: 127.0.0.1:10000/docs.
All CLI Options for running the app:
❯ diffuzers app --help
usage: diffuzers <command> [<args>] app [-h] [--output OUTPUT] [--share] [--port PORT] [--host HOST]
[--device DEVICE] [--ngrok_key NGROK_KEY]
✨ Run diffuzers app
optional arguments:
-h, --help show this help message and exit
--output OUTPUT Output path is optional, but if provided, all generations will automatically be saved to this
path.
--share Share the app
--port PORT Port to run the app on
--host HOST Host to run the app on
--device DEVICE Device to use, e.g. cpu, cuda, cuda:0, mps (for m1 mac) etc.
--ngrok_key NGROK_KEY
Ngrok key to use for sharing the app. Only required if you want to share the app
All CLI Options for running the api:
❯ diffuzers api --help
usage: diffuzers <command> [<args>] api [-h] [--output OUTPUT] [--port PORT] [--host HOST] [--device DEVICE]
[--workers WORKERS]
✨ Run diffuzers api
optional arguments:
-h, --help show this help message and exit
--output OUTPUT Output path is optional, but if provided, all generations will automatically be saved to this
path.
--port PORT Port to run the app on
--host HOST Host to run the app on
--device DEVICE Device to use, e.g. cpu, cuda, cuda:0, mps (for m1 mac) etc.
--workers WORKERS Number of workers to use
Using private models from huggingface hub
If you want to use private models from huggingface hub, then you need to login using huggingface-cli login command.
Note: You can also save your generations directly to huggingface hub if your output path points to a huggingface hub dataset repo and you have access to push to that repository. Thus, you will end up saving a lot of disk space.
Metadata
Release files for diffuzers 0.3.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| diffuzers-0.3.5.tar.gz | 825.9 kB | Without provenance | Details for diffuzers-0.3.5.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| diffuzers-0.3.5-py3-none-any.whl | Python 3 | none | any | Details for diffuzers-0.3.5-py3-none-any.whl |
Total release size: 1.7 MB
Release files / diffuzers-0.3.5.tar.gz
| Download URL | diffuzers-0.3.5.tar.gz |
|---|---|
| Size | 825.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ebca88133383d70f08a499885bf8797157757cf04dca39aeb60af7f6b9d9da61
|
|
BLAKE2b-256 checksum How to use checksums |
b0be82e648e8d96a2a0f0485f8a16f8cff1e682af6ab0acf4dc3af4fc2d49b67
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.64.1 CPython/3.8.13
|
Release files / diffuzers-0.3.5-py3-none-any.whl
| Download URL | diffuzers-0.3.5-py3-none-any.whl |
|---|---|
| Size | 842.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
facfb1bc20ed5d66ee4303125f2937cc196139aeadc3435bd08e0c22e45b6b9d
|
|
BLAKE2b-256 checksum How to use checksums |
5c3c92050803bbefbeddc09b0fd5ec5eb3ee591e8fe1e5be87d82483ac954a54
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.64.1 CPython/3.8.13
|
Security for diffuzers 0.3.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.