nickyreinert-vml
commited on
Commit
•
3c2eedc
1
Parent(s):
54b262a
updating readme
Browse files- Autoremoving +0 -0
- README.md +44 -1
- appConfig.json +0 -0
- config.py +0 -0
- helpers.py +0 -0
- requirements.txt +0 -0
Autoremoving
ADDED
File without changes
|
README.md
CHANGED
@@ -23,7 +23,7 @@ Then install all required libraries, preferably inside a virtual environment:
|
|
23 |
source .venv/bin/activate
|
24 |
pip install -r requirements.txt
|
25 |
|
26 |
-
Then run the web app:
|
27 |
|
28 |
python app.py
|
29 |
|
@@ -31,3 +31,46 @@ You can use Gradio to run the web app which offers a file watcher in case you ma
|
|
31 |
|
32 |
gradio app.py
|
33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
source .venv/bin/activate
|
24 |
pip install -r requirements.txt
|
25 |
|
26 |
+
Then run the web app either via Python itself or through Gradio:
|
27 |
|
28 |
python app.py
|
29 |
|
|
|
31 |
|
32 |
gradio app.py
|
33 |
|
34 |
+
# Walk-Through
|
35 |
+
|
36 |
+
## Patience is king
|
37 |
+
If you start the process for a given model the first time, it may take a while, because the backend needs to download the full model. Depending on the model, this requires **multiple GigaByte** of space on your device. This only happens **once**, except on *Huggingface*, where the server cache will be purged.
|
38 |
+
|
39 |
+
## Steps
|
40 |
+
This describes the minimal required steps to utilize this interface. Most default parameters don't need to be changed in order to work properly.
|
41 |
+
|
42 |
+
1. Select a **device**. A decent **gpu** is recommended.
|
43 |
+
2. Choose a **model**. If a fine-tuned model requires a trigger token, it will be added automatically. The **safety checker** options allows you to not render nsfw content, but in some cases this also produces black images for not harmful content.
|
44 |
+
2. You *may* select a different scheduler. The scheduler controls **quality** and **performance**.
|
45 |
+
3. Now you can define your **prompt** and **negative prompt**.
|
46 |
+
4. The value for **inference steps** controls how many iteration your generation process will run. The higher this value, the longer the process takes and the better the image quality is. You should start with a *lower value* to see how the model interpretes your prompt. As soon as you got a satisfying result, increase this value to produce high quality output.
|
47 |
+
5. The **manual seed** is a way to either force randomisastion or creation of the same output every time you run theprocess. Keep this field empty to enable random outputs.
|
48 |
+
6. Use **guidance scale** to define how strict the model interprets your prompt.
|
49 |
+
7. Hit **run**!
|
50 |
+
|
51 |
+
## Hints
|
52 |
+
The **re-run** button runs the process again and only applies changes you made to the **Inference settings** section. While the **run** button execute the whole process from the scratch.
|
53 |
+
|
54 |
+
You have two options to persist your selected configuration: Either you **copy the code** to an environment where you can execute Python code (Google Colab). Or, after every succesful run, head to the bottom of the page. There's a table containing a link to this interface containing the whole configuration.
|
55 |
+
|
56 |
+
# Areas
|
57 |
+
## Model specific settings
|
58 |
+
This allows you to select any model hosted on Huggingface. Some models are fine-tuned and require a **trigger token** to be activated, like https://huggingface.co/sd-dreambooth-library/herge-style.
|
59 |
+
|
60 |
+
**Refiner** is a way to improve the quality of your image by re-processing it a second time.
|
61 |
+
|
62 |
+
The pipeline supports a way to prevent nswf-content to be created. I figured this does not always work properly, so those to options allow you to disable this feature.
|
63 |
+
|
64 |
+
## Scheduler/Solver
|
65 |
+
|
66 |
+
This is the part of the process, that manipulates the output from the model every loop/epoch.
|
67 |
+
|
68 |
+
## Auto Encoder
|
69 |
+
The auto encoder is responsible for the encoding and decoding process from the input to the output. **VAE slicing** and **VAE tiling** are parameters to improve performance here.
|
70 |
+
|
71 |
+
## Adapters
|
72 |
+
Adapters allow you to modify or control the output, e.g. apply specific styles. This interface supports **Textual inversion** and **LoRA**
|
73 |
+
|
74 |
+
# Customization
|
75 |
+
|
76 |
+
Update the file ```appConfig.json``` to add more models. Some models need you to accept their license agreement before you can access them, like https://huggingface.co/stabilityai/stable-diffusion-3-medium.
|
appConfig.json
CHANGED
File without changes
|
config.py
CHANGED
File without changes
|
helpers.py
CHANGED
File without changes
|
requirements.txt
CHANGED
File without changes
|