torusvektor commited on
Commit
9b6dfd6
·
verified ·
1 Parent(s): 5ecb817

Perfection Amateur [ILXL / Illustrious XL] - NSFW / SFW Checkpoint

Browse files

Each sample/preview image contains the used workflow. Here's a quick article: https://civitai.com/articles/17080
with simpler more beginner-friendly workflow. This is a recommended starting point.
Do not use the Normal scheduler. Use Simple or Beta!
Use euler_a, dpmpp_2m_sde or dpmpp_3m_sde as your sampler.
To use the faster low-step settings, you need to use the DMD2 LoRA. This allows you to use 8 or 16 steps and generate very fast. Remember to generate in 2 passes, either using "Hires fix" in Forge/A1111, or by creating and chaining a second sampler node in ComfyUI. A sample workflow if included in the sample images of the model. Use this as a reference.

model:
perfectionAmateurILXL_30.safetensors
https://civitai.com/models/1466262/perfection-amateur-ilxl-illustrious-xl-nsfw-sfw-checkpoint

Recommended Settings
Base Generation
• Steps: 30
• CFG-scale: 3
• Sampler: DPM++ 3M SDE
• Scheduler: Simple (beta upscale scheduler)
Upscale/Refine
• Steps: 16
• CFG-scale: 4
• Sampler: DPM++ 3M SDE
• Scheduler: Simple
• Denoise: 0.35


lora:
dmd2_sdxl_4step_lora.safetensors
https://civitai.com/models/1608870/dmd2-speed-lora-sdxl-pony-illustrious

lora:
dmd2_sdxl_4step_lora_fp16.safetensors
https://civitai.com/models/1608870?modelVersionId=1820946

dmd2_sdxl_4step_lora
Original model at Huggingface tianweiy/DMD2.
Recommended Settings
Steps: 8
LoRA weight: 0.7
Sampler: LCM
Scheduler: Normal, Simple
CFG: 1.4 - 1.8
I use similar settings on both a low resolution base image, and the upscaled refinement pass (hires fix). The settings above are my personal recommendations, but I suggest you play around with the settings to find what works for you and the model you are using.

Combining Both LoRAs
It's also been reported to perform better to use both the fp32 and fp16 at the same time at 0.5 weight each.

Recommended LoRA weight
Load the LoRA like any other. I personally recommend a weight of 0.7, but others swear it's better at 1.0 in weight.

Usage
You should be able to use it with any SDXL or similar checkpoint. Use the settings above.
You can also merge this into a checkpoint and save that, to include the result of the LoRA into the checkpoint directly. This means you no longer need to load this as a LoRA, and you can still use it with LCM and low steps for good result.
The LoRA itself doesn't add any speed improvement, it just allows you to generate at fewer steps, with better result.
If the results are washed out, desaturated or bland, try increasing the CFG. app need to have as well negative prompt, option to load model checkpoint and loras, option to save generated pictures and history of generated pictures
- Initial Deployment

Files changed (3) hide show
  1. README.md +7 -5
  2. index.html +290 -18
  3. prompts.txt +56 -0
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Diffusiondroid
3
- emoji: 📉
4
- colorFrom: gray
5
- colorTo: gray
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: diffusiondroid
3
+ emoji: 🐳
4
+ colorFrom: red
5
+ colorTo: blue
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,291 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  </html>
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Perfection Amateur ILXL - AI Image Generator</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link href="https://unpkg.com/[email protected]/dist/aos.css" rel="stylesheet">
9
+ <script src="https://unpkg.com/[email protected]/dist/aos.js"></script>
10
+ <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
11
+ <script src="https://unpkg.com/feather-icons"></script>
12
+ <script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.globe.min.js"></script>
13
+ <style>
14
+ .gradient-bg {
15
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
16
+ }
17
+ .glass-effect {
18
+ background: rgba(255, 255, 255, 0.1);
19
+ backdrop-filter: blur(10px);
20
+ border: 1px solid rgba(255, 255, 255, 0.2);
21
+ }
22
+ .result-grid {
23
+ display: grid;
24
+ grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
25
+ gap: 1.5rem;
26
+ }
27
+ .result-card {
28
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
29
+ }
30
+ .result-card:hover {
31
+ transform: translateY(-5px);
32
+ box-shadow: 0 10px 25px rgba(0,0,0,0.15);
33
+ }
34
+ .prompt-input {
35
+ min-height: 100px;
36
+ }
37
+ .nsfw-toggle {
38
+ position: relative;
39
+ display: inline-block;
40
+ width: 60px;
41
+ height: 30px;
42
+ }
43
+ .nsfw-toggle input {
44
+ opacity: 0;
45
+ width: 0;
46
+ height: 0;
47
+ }
48
+ .nsfw-slider {
49
+ position: absolute;
50
+ cursor: pointer;
51
+ top: 0;
52
+ left: 0;
53
+ right: 0;
54
+ bottom: 0;
55
+ background-color: #ccc;
56
+ transition: .4s;
57
+ border-radius: 34px;
58
+ }
59
+ .nsfw-slider:before {
60
+ position: absolute;
61
+ content: "";
62
+ height: 22px;
63
+ width: 22px;
64
+ left: 4px;
65
+ bottom: 4px;
66
+ background-color: white;
67
+ transition: .4s;
68
+ border-radius: 50%;
69
+ }
70
+ input:checked + .nsfw-slider {
71
+ background-color: #f56565;
72
+ }
73
+ input:checked + .nsfw-slider:before {
74
+ transform: translateX(30px);
75
+ }
76
+ </style>
77
+ </head>
78
+ <body class="min-h-screen gradient-bg" id="vanta-bg">
79
+ <div class="container mx-auto px-4 py-8">
80
+ <!-- Header -->
81
+ <header class="text-center mb-12" data-aos="fade-down">
82
+ <h1 class="text-4xl md:text-5xl font-bold text-white mb-4">Perfection Amateur ILXL</h1>
83
+ <p class="text-xl text-white opacity-90">Advanced SDXL Image Generation Interface</p>
84
+ </header>
85
+
86
+ <!-- Main Content -->
87
+ <div class="grid grid-cols-1 lg:grid-cols-3 gap-8">
88
+ <!-- Settings Panel -->
89
+ <div class="lg:col-span-1 glass-effect rounded-2xl p-6" data-aos="fade-right">
90
+ <h2 class="text-2xl font-semibold text-white mb-6">Generation Settings</h2>
91
+
92
+ <!-- Model Selection -->
93
+ <div class="mb-6">
94
+ <label class="block text-white mb-2">Checkpoint Model</label>
95
+ <select class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-4 py-2 text-white">
96
+ <option value="perfectionAmateurILXL_30">perfectionAmateurILXL_30.safetensors</option>
97
+ <option value="custom">Load Custom Model...</option>
98
+ </select>
99
+ </div>
100
+
101
+ <!-- LoRA Selection -->
102
+ <div class="mb-6">
103
+ <label class="block text-white mb-2">DMD2 LoRA</label>
104
+ <div class="space-y-2">
105
+ <label class="flex items-center text-white">
106
+ <input type="checkbox" class="mr-2" checked>
107
+ dmd2_sdxl_4step_lora.safetensors (FP32)
108
+ </label>
109
+ <label class="flex items-center text-white">
110
+ <input type="checkbox" class="mr-2" checked>
111
+ dmd2_sdxl_4step_lora_fp16.safetensors (FP16)
112
+ </label>
113
+ </div>
114
+ <div class="mt-2">
115
+ <label class="block text-white mb-2">LoRA Weight</label>
116
+ <input type="range" min="0" max="1" step="0.1" value="0.7" class="w-full">
117
+ <span class="text-white text-sm">0.7</span>
118
+ </div>
119
+ </div>
120
+
121
+ <!-- NSFW Toggle -->
122
+ <div class="mb-6">
123
+ <label class="block text-white mb-2">Content Type</label>
124
+ <label class="nsfw-toggle">
125
+ <input type="checkbox">
126
+ <span class="nsfw-slider"></span>
127
+ </label>
128
+ <span class="ml-3 text-white">NSFW Content</span>
129
+ </div>
130
+
131
+ <!-- Prompt Input -->
132
+ <div class="mb-6">
133
+ <label class="block text-white mb-2">Positive Prompt</label>
134
+ <textarea class="w-full prompt-input bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-4 py-2 text-white" placeholder="Describe your image..."></textarea>
135
+ </div>
136
+
137
+ <div class="mb-6">
138
+ <label class="block text-white mb-2">Negative Prompt</label>
139
+ <textarea class="w-full prompt-input bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-4 py-2 text-white" placeholder="What to avoid..."></textarea>
140
+ </div>
141
+
142
+ <!-- Generation Settings -->
143
+ <div class="grid grid-cols-2 gap-4 mb-6">
144
+ <div>
145
+ <label class="block text-white mb-2">Steps</label>
146
+ <input type="number" value="30" class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-4 py-2 text-white">
147
+ </div>
148
+ <div>
149
+ <label class="block text-white mb-2">CFG Scale</label>
150
+ <input type="number" value="3.0" step="0.1" class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-4 py-2 text-white">
151
+ </div>
152
+ </div>
153
+
154
+ <div class="grid grid-cols-2 gap-4 mb-6">
155
+ <div>
156
+ <label class="block text-white mb-2">Sampler</label>
157
+ <select class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-4 py-2 text-white">
158
+ <option value="dpmpp_3m_sde">DPM++ 3M SDE</option>
159
+ <option value="dpmpp_2m_sde">DPM++ 2M SDE</option>
160
+ <option value="euler_a">Euler a</option>
161
+ <option value="lcm">LCM</option>
162
+ </select>
163
+ </div>
164
+ <div>
165
+ <label class="block text-white mb-2">Scheduler</label>
166
+ <select class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-4 py-2 text-white">
167
+ <option value="simple">Simple</option>
168
+ <option value="beta">Beta</option>
169
+ <option value="normal">Normal</option>
170
+ </select>
171
+ </div>
172
+ </div>
173
+
174
+ <!-- Hi-Res Fix Settings -->
175
+ <div class="mb-6">
176
+ <label class="flex items-center text-white mb-2">
177
+ <input type="checkbox" class="mr-2" checked>
178
+ Enable Hi-Res Fix
179
+ </label>
180
+ <div class="ml-6 mt-2 space-y-2">
181
+ <div class="grid grid-cols-2 gap-2">
182
+ <div>
183
+ <label class="block text-white text-sm">Steps</label>
184
+ <input type="number" value="16" class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-2 py-1 text-white text-sm">
185
+ </div>
186
+ <div>
187
+ <label class="block text-white text-sm">CFG</label>
188
+ <input type="number" value="4.0" step="0.1" class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-2 py-1 text-white text-sm">
189
+ </div>
190
+ </div>
191
+ <div>
192
+ <label class="block text-white text-sm">Denoise</label>
193
+ <input type="number" value="0.35" step="0.05" class="w-full bg-white bg-opacity-10 border border-white border-opacity-20 rounded-lg px-2 py-1 text-white text-sm">
194
+ </div>
195
+ </div>
196
+ </div>
197
+
198
+ <!-- Generate Button -->
199
+ <button class="w-full bg-purple-600 hover:bg-purple-700 text-white font-bold py-3 px-4 rounded-lg transition-colors">
200
+ Generate Image
201
+ </button>
202
+ </div>
203
+
204
+ <!-- Results Panel -->
205
+ <div class="lg:col-span-2">
206
+ <!-- Current Generation -->
207
+ <div class="glass-effect rounded-2xl p-6 mb-8" data-aos="fade-left">
208
+ <h2 class="text-2xl font-semibold text-white mb-4">Current Generation</h2>
209
+ <div class="aspect-square bg-black bg-opacity-30 rounded-lg flex items-center justify-center">
210
+ <div class="text-center text-white opacity-70">
211
+ <i data-feather="image" class="w-16 h-16 mx-auto mb-2"></i>
212
+ <p>Image will appear here after generation</p>
213
+ </div>
214
+ </div>
215
+ <div class="flex justify-between mt-4">
216
+ <button class="bg-gray-600 hover:bg-gray-700 text-white font-bold py-2 px-4 rounded-lg transition-colors">
217
+ <i data-feather="download" class="w-4 h-4 inline mr-2"></i>
218
+ Save Image
219
+ </button>
220
+ <button class="bg-blue-600 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded-lg transition-colors">
221
+ <i data-feather="repeat" class="w-4 h-4 inline mr-2"></i>
222
+ Regenerate
223
+ </button>
224
+ </div>
225
+ </div>
226
+
227
+ <!-- Generation History -->
228
+ <div class="glass-effect rounded-2xl p-6" data-aos="fade-up">
229
+ <h2 class="text-2xl font-semibold text-white mb-4">Generation History</h2>
230
+ <div class="result-grid">
231
+ <!-- Sample history items -->
232
+ <div class="result-card glass-effect rounded-lg overflow-hidden">
233
+ <img src="http://static.photos/art/320x240/1" alt="Generated image" class="w-full h-48 object-cover">
234
+ <div class="p-3">
235
+ <p class="text-white text-sm truncate">Portrait of a woman</p>
236
+ <p class="text-white text-xs opacity-70">2 hours ago</p>
237
+ </div>
238
+ </div>
239
+ <div class="result-card glass-effect rounded-lg overflow-hidden">
240
+ <img src="http://static.photos/nature/320x240/2" alt="Generated image" class="w-full h-48 object-cover">
241
+ <div class="p-3">
242
+ <p class="text-white text-sm truncate">Fantasy landscape</p>
243
+ <p class="text-white text-xs opacity-70">5 hours ago</p>
244
+ </div>
245
+ </div>
246
+ <div class="result-card glass-effect rounded-lg overflow-hidden">
247
+ <img src="http://static.photos/abstract/320x240/3" alt="Generated image" class="w-full h-48 object-cover">
248
+ <div class="p-3">
249
+ <p class="text-white text-sm truncate">Abstract art</p>
250
+ <p class="text-white text-xs opacity-70">Yesterday</p>
251
+ </div>
252
+ </div>
253
+ </div>
254
+ </div>
255
+ </div>
256
+ </div>
257
+ </div>
258
+
259
+ <script>
260
+ // Initialize Vanta.js background
261
+ VANTA.GLOBE({
262
+ el: "#vanta-bg",
263
+ mouseControls: true,
264
+ touchControls: true,
265
+ gyroControls: false,
266
+ minHeight: 200.00,
267
+ minWidth: 200.00,
268
+ scale: 1.00,
269
+ scaleMobile: 1.00,
270
+ color: 0x764ba2,
271
+ backgroundColor: 0x667eea,
272
+ size: 0.8
273
+ });
274
+
275
+ // Initialize AOS
276
+ AOS.init({
277
+ duration: 800,
278
+ easing: 'ease-in-out',
279
+ once: true
280
+ });
281
+
282
+ // Initialize Feather Icons
283
+ feather.replace();
284
+
285
+ // Slider value display
286
+ document.querySelector('input[type="range"]').addEventListener('input', function() {
287
+ this.nextElementSibling.textContent = this.value;
288
+ });
289
+ </script>
290
+ </body>
291
  </html>
prompts.txt ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Perfection Amateur [ILXL / Illustrious XL] - NSFW / SFW Checkpoint
2
+
3
+
4
+ Each sample/preview image contains the used workflow. Here's a quick article: https://civitai.com/articles/17080
5
+ with simpler more beginner-friendly workflow. This is a recommended starting point.
6
+ Do not use the Normal scheduler. Use Simple or Beta!
7
+ Use euler_a, dpmpp_2m_sde or dpmpp_3m_sde as your sampler.
8
+ To use the faster low-step settings, you need to use the DMD2 LoRA. This allows you to use 8 or 16 steps and generate very fast. Remember to generate in 2 passes, either using "Hires fix" in Forge/A1111, or by creating and chaining a second sampler node in ComfyUI. A sample workflow if included in the sample images of the model. Use this as a reference.
9
+
10
+ model:
11
+ perfectionAmateurILXL_30.safetensors
12
+ https://civitai.com/models/1466262/perfection-amateur-ilxl-illustrious-xl-nsfw-sfw-checkpoint
13
+
14
+ Recommended Settings
15
+ Base Generation
16
+ • Steps: 30
17
+ • CFG-scale: 3
18
+ • Sampler: DPM++ 3M SDE
19
+ • Scheduler: Simple (beta upscale scheduler)
20
+ Upscale/Refine
21
+ • Steps: 16
22
+ • CFG-scale: 4
23
+ • Sampler: DPM++ 3M SDE
24
+ • Scheduler: Simple
25
+ • Denoise: 0.35
26
+
27
+
28
+ lora:
29
+ dmd2_sdxl_4step_lora.safetensors
30
+ https://civitai.com/models/1608870/dmd2-speed-lora-sdxl-pony-illustrious
31
+
32
+ lora:
33
+ dmd2_sdxl_4step_lora_fp16.safetensors
34
+ https://civitai.com/models/1608870?modelVersionId=1820946
35
+
36
+ dmd2_sdxl_4step_lora
37
+ Original model at Huggingface tianweiy/DMD2.
38
+ Recommended Settings
39
+ Steps: 8
40
+ LoRA weight: 0.7
41
+ Sampler: LCM
42
+ Scheduler: Normal, Simple
43
+ CFG: 1.4 - 1.8
44
+ I use similar settings on both a low resolution base image, and the upscaled refinement pass (hires fix). The settings above are my personal recommendations, but I suggest you play around with the settings to find what works for you and the model you are using.
45
+
46
+ Combining Both LoRAs
47
+ It's also been reported to perform better to use both the fp32 and fp16 at the same time at 0.5 weight each.
48
+
49
+ Recommended LoRA weight
50
+ Load the LoRA like any other. I personally recommend a weight of 0.7, but others swear it's better at 1.0 in weight.
51
+
52
+ Usage
53
+ You should be able to use it with any SDXL or similar checkpoint. Use the settings above.
54
+ You can also merge this into a checkpoint and save that, to include the result of the LoRA into the checkpoint directly. This means you no longer need to load this as a LoRA, and you can still use it with LCM and low steps for good result.
55
+ The LoRA itself doesn't add any speed improvement, it just allows you to generate at fewer steps, with better result.
56
+ If the results are washed out, desaturated or bland, try increasing the CFG. app need to have as well negative prompt, option to load model checkpoint and loras, option to save generated pictures and history of generated pictures