Spaces:
Build error
Build error
Update app.py
Browse files
app.py
CHANGED
|
@@ -20,7 +20,6 @@ from diffusers import (
|
|
| 20 |
StableDiffusionPipeline, ControlNetModel,
|
| 21 |
DPMSolverMultistepScheduler, AutoencoderKL,
|
| 22 |
)
|
| 23 |
-
# +++ 修正点A: compel ライブラリをインポート +++
|
| 24 |
from compel import Compel
|
| 25 |
from insightface.app import FaceAnalysis
|
| 26 |
|
|
@@ -164,7 +163,7 @@ for emb in EMB_DIR.glob("*.*"):
|
|
| 164 |
print("emb skip →", emb.name)
|
| 165 |
pipe.to(device)
|
| 166 |
|
| 167 |
-
#
|
| 168 |
compel_proc = Compel(
|
| 169 |
tokenizer=pipe.tokenizer,
|
| 170 |
text_encoder=pipe.text_encoder,
|
|
@@ -192,7 +191,6 @@ except Exception as e:
|
|
| 192 |
##############################################################################
|
| 193 |
# 4. プロンプト & 生成関数
|
| 194 |
##############################################################################
|
| 195 |
-
# +++ 修正点C: 不要な <lora:...> 記述を削除 +++
|
| 196 |
BASE_PROMPT = (
|
| 197 |
"masterpiece, ultra-realistic photo of {subject}, "
|
| 198 |
"cinematic lighting, shallow depth of field, textured skin, "
|
|
@@ -207,7 +205,6 @@ NEG_PROMPT = (
|
|
| 207 |
"missing arms, missing legs, (badhandv4:0.7), BadNegAnatomyV1-neg, skin blemishes, acnes, age spot, glans"
|
| 208 |
)
|
| 209 |
|
| 210 |
-
# +++ 修正点D: generate関数全体をcompel対応版に書き換え +++
|
| 211 |
@spaces.GPU(duration=90)
|
| 212 |
def generate(
|
| 213 |
face_np, subject, add_prompt, add_neg, cfg, ip_scale, steps, w, h, upscale, up_factor,
|
|
@@ -224,9 +221,8 @@ def generate(
|
|
| 224 |
pipe.set_ip_adapter_scale(ip_scale)
|
| 225 |
img_in = Image.fromarray(face_np)
|
| 226 |
|
| 227 |
-
# compel
|
| 228 |
-
prompt_embeds = compel_proc(prompt)
|
| 229 |
-
negative_prompt_embeds = compel_proc(neg)
|
| 230 |
|
| 231 |
result = pipe(
|
| 232 |
prompt_embeds=prompt_embeds,
|
|
|
|
| 20 |
StableDiffusionPipeline, ControlNetModel,
|
| 21 |
DPMSolverMultistepScheduler, AutoencoderKL,
|
| 22 |
)
|
|
|
|
| 23 |
from compel import Compel
|
| 24 |
from insightface.app import FaceAnalysis
|
| 25 |
|
|
|
|
| 163 |
print("emb skip →", emb.name)
|
| 164 |
pipe.to(device)
|
| 165 |
|
| 166 |
+
# compel プロセッサを初期化
|
| 167 |
compel_proc = Compel(
|
| 168 |
tokenizer=pipe.tokenizer,
|
| 169 |
text_encoder=pipe.text_encoder,
|
|
|
|
| 191 |
##############################################################################
|
| 192 |
# 4. プロンプト & 生成関数
|
| 193 |
##############################################################################
|
|
|
|
| 194 |
BASE_PROMPT = (
|
| 195 |
"masterpiece, ultra-realistic photo of {subject}, "
|
| 196 |
"cinematic lighting, shallow depth of field, textured skin, "
|
|
|
|
| 205 |
"missing arms, missing legs, (badhandv4:0.7), BadNegAnatomyV1-neg, skin blemishes, acnes, age spot, glans"
|
| 206 |
)
|
| 207 |
|
|
|
|
| 208 |
@spaces.GPU(duration=90)
|
| 209 |
def generate(
|
| 210 |
face_np, subject, add_prompt, add_neg, cfg, ip_scale, steps, w, h, upscale, up_factor,
|
|
|
|
| 221 |
pipe.set_ip_adapter_scale(ip_scale)
|
| 222 |
img_in = Image.fromarray(face_np)
|
| 223 |
|
| 224 |
+
# +++ 最終修正: compelを一度に呼び出し、プロンプトとネガティブプロンプトの長さを揃える +++
|
| 225 |
+
prompt_embeds, negative_prompt_embeds = compel_proc([prompt, neg])
|
|
|
|
| 226 |
|
| 227 |
result = pipe(
|
| 228 |
prompt_embeds=prompt_embeds,
|