Upload folder using huggingface_hub
Browse files- README.md +1 -1
- app.py +15 -5
- core/pipelines/base_pipeline.py +13 -1
- requirements.txt +2 -2
- yaml/file_list.yaml +3 -3
- yaml/model_list.yaml +2 -2
README.md
CHANGED
|
@@ -66,6 +66,7 @@ models:
|
|
| 66 |
- Eugeoter/noob-sdxl-controlnet-normal
|
| 67 |
- Eugeoter/noob-sdxl-controlnet-softedge_hed
|
| 68 |
- Eugeoter/noob-sdxl-controlnet-tile
|
|
|
|
| 69 |
- h94/IP-Adapter
|
| 70 |
- h94/IP-Adapter-FaceID
|
| 71 |
- InstantX/FLUX.1-dev-IP-Adapter
|
|
@@ -102,6 +103,5 @@ models:
|
|
| 102 |
- xinsir/controlnet-tile-sdxl-1.0
|
| 103 |
- xinsir/controlnet-union-sdxl-1.0
|
| 104 |
- XLabs-AI/flux-controlnet-collections
|
| 105 |
-
- Yevrey921/novaAnimeXL_ilV160
|
| 106 |
- zhenshipo/waiIllustriousSDXL_v170
|
| 107 |
---
|
|
|
|
| 66 |
- Eugeoter/noob-sdxl-controlnet-normal
|
| 67 |
- Eugeoter/noob-sdxl-controlnet-softedge_hed
|
| 68 |
- Eugeoter/noob-sdxl-controlnet-tile
|
| 69 |
+
- frankjoshua/novaAnimeXL_ilV180
|
| 70 |
- h94/IP-Adapter
|
| 71 |
- h94/IP-Adapter-FaceID
|
| 72 |
- InstantX/FLUX.1-dev-IP-Adapter
|
|
|
|
| 103 |
- xinsir/controlnet-tile-sdxl-1.0
|
| 104 |
- xinsir/controlnet-union-sdxl-1.0
|
| 105 |
- XLabs-AI/flux-controlnet-collections
|
|
|
|
| 106 |
- zhenshipo/waiIllustriousSDXL_v170
|
| 107 |
---
|
app.py
CHANGED
|
@@ -42,11 +42,21 @@ def apply_sage_attention_patch():
|
|
| 42 |
|
| 43 |
@spaces.GPU
|
| 44 |
def dummy_gpu_for_startup():
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 50 |
|
| 51 |
|
| 52 |
def main():
|
|
|
|
| 42 |
|
| 43 |
@spaces.GPU
|
| 44 |
def dummy_gpu_for_startup():
|
| 45 |
+
try:
|
| 46 |
+
print("--- [GPU Startup] Dummy function for startup check initiated. ---")
|
| 47 |
+
patch_result = apply_sage_attention_patch()
|
| 48 |
+
print(f"--- [GPU Startup] {patch_result} ---")
|
| 49 |
+
print("--- [GPU Startup] Startup check passed. ---")
|
| 50 |
+
return "Startup check passed."
|
| 51 |
+
except BaseException as e:
|
| 52 |
+
err_msg = str(e)
|
| 53 |
+
if "uncorrectable ECC error" in err_msg or "cudaErrorECCUncorrectable" in err_msg:
|
| 54 |
+
print("\n" + "="*80)
|
| 55 |
+
print(f"🚨 [Fatal GPU Error] Captured uncorrectable ECC error during inference: {err_msg}")
|
| 56 |
+
print("🚨 Terminating process to trigger an automatic container restart...")
|
| 57 |
+
print("="*80 + "\n")
|
| 58 |
+
os._exit(1)
|
| 59 |
+
raise e
|
| 60 |
|
| 61 |
|
| 62 |
def main():
|
core/pipelines/base_pipeline.py
CHANGED
|
@@ -5,6 +5,8 @@ import spaces
|
|
| 5 |
import tempfile
|
| 6 |
import imageio
|
| 7 |
import numpy as np
|
|
|
|
|
|
|
| 8 |
|
| 9 |
class BasePipeline(ABC):
|
| 10 |
def __init__(self):
|
|
@@ -36,7 +38,17 @@ class BasePipeline(ABC):
|
|
| 36 |
print(f"Requesting ZeroGPU for {task_name} with duration: {final_duration} seconds.")
|
| 37 |
gpu_runner = spaces.GPU(duration=final_duration)(gpu_function)
|
| 38 |
|
| 39 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 40 |
|
| 41 |
def _encode_video_from_frames(self, frames_tensor_cpu: 'torch.Tensor', fps: int, progress: gr.Progress) -> str:
|
| 42 |
progress(0.9, desc="Encoding video on CPU...")
|
|
|
|
| 5 |
import tempfile
|
| 6 |
import imageio
|
| 7 |
import numpy as np
|
| 8 |
+
import sys
|
| 9 |
+
import os
|
| 10 |
|
| 11 |
class BasePipeline(ABC):
|
| 12 |
def __init__(self):
|
|
|
|
| 38 |
print(f"Requesting ZeroGPU for {task_name} with duration: {final_duration} seconds.")
|
| 39 |
gpu_runner = spaces.GPU(duration=final_duration)(gpu_function)
|
| 40 |
|
| 41 |
+
try:
|
| 42 |
+
return gpu_runner(*args, **kwargs)
|
| 43 |
+
except BaseException as e:
|
| 44 |
+
err_msg = str(e)
|
| 45 |
+
if "uncorrectable ECC error" in err_msg or "cudaErrorECCUncorrectable" in err_msg:
|
| 46 |
+
print("\n" + "="*80)
|
| 47 |
+
print(f"🚨 [Fatal GPU Error] Captured uncorrectable ECC error during inference: {err_msg}")
|
| 48 |
+
print("🚨 Terminating process to trigger an automatic container restart...")
|
| 49 |
+
print("="*80 + "\n")
|
| 50 |
+
os._exit(1)
|
| 51 |
+
raise e
|
| 52 |
|
| 53 |
def _encode_video_from_frames(self, frames_tensor_cpu: 'torch.Tensor', fps: int, progress: gr.Progress) -> str:
|
| 54 |
progress(0.9, desc="Encoding video on CPU...")
|
requirements.txt
CHANGED
|
@@ -1,5 +1,5 @@
|
|
| 1 |
comfyui-frontend-package==1.44.19
|
| 2 |
-
comfyui-workflow-templates==0.9.
|
| 3 |
comfyui-embedded-docs==0.5.2
|
| 4 |
torch
|
| 5 |
torchsde
|
|
@@ -23,7 +23,7 @@ SQLAlchemy>=2.0.0
|
|
| 23 |
filelock
|
| 24 |
av>=16.0.0
|
| 25 |
comfy-kitchen==0.2.10
|
| 26 |
-
comfy-aimdo==0.4.
|
| 27 |
requests
|
| 28 |
simpleeval>=1.0.0
|
| 29 |
blake3
|
|
|
|
| 1 |
comfyui-frontend-package==1.44.19
|
| 2 |
+
comfyui-workflow-templates==0.9.92
|
| 3 |
comfyui-embedded-docs==0.5.2
|
| 4 |
torch
|
| 5 |
torchsde
|
|
|
|
| 23 |
filelock
|
| 24 |
av>=16.0.0
|
| 25 |
comfy-kitchen==0.2.10
|
| 26 |
+
comfy-aimdo==0.4.8
|
| 27 |
requests
|
| 28 |
simpleeval>=1.0.0
|
| 29 |
blake3
|
yaml/file_list.yaml
CHANGED
|
@@ -61,10 +61,10 @@ file:
|
|
| 61 |
source: hf
|
| 62 |
repo_id: "misri/hassakuXLIllustrious_v30"
|
| 63 |
repository_file_path: "hassakuXLIllustrious_v30.safetensors"
|
| 64 |
-
- filename: "
|
| 65 |
source: hf
|
| 66 |
-
repo_id: "
|
| 67 |
-
repository_file_path: "
|
| 68 |
- filename: "Illustrious-XL-v2.0.safetensors"
|
| 69 |
source: hf
|
| 70 |
repo_id: "OnomaAIResearch/Illustrious-XL-v2.0"
|
|
|
|
| 61 |
source: hf
|
| 62 |
repo_id: "misri/hassakuXLIllustrious_v30"
|
| 63 |
repository_file_path: "hassakuXLIllustrious_v30.safetensors"
|
| 64 |
+
- filename: "novaAnimeXL_ilV180.safetensors"
|
| 65 |
source: hf
|
| 66 |
+
repo_id: "frankjoshua/novaAnimeXL_ilV180"
|
| 67 |
+
repository_file_path: "novaAnimeXL_ilV180.safetensors"
|
| 68 |
- filename: "Illustrious-XL-v2.0.safetensors"
|
| 69 |
source: hf
|
| 70 |
repo_id: "OnomaAIResearch/Illustrious-XL-v2.0"
|
yaml/model_list.yaml
CHANGED
|
@@ -288,8 +288,8 @@ Checkpoint:
|
|
| 288 |
- display_name: "Ikena/hassaku-xl-illustrious-v3.0"
|
| 289 |
path: "hassakuXLIllustrious_v30.safetensors"
|
| 290 |
category: "Illustrious"
|
| 291 |
-
- display_name: "Crody/Nova-Anime-XL-
|
| 292 |
-
path: "
|
| 293 |
category: "Illustrious"
|
| 294 |
- display_name: "OnomaAIResearch/Illustrious-XL-v2.0"
|
| 295 |
path: "Illustrious-XL-v2.0.safetensors"
|
|
|
|
| 288 |
- display_name: "Ikena/hassaku-xl-illustrious-v3.0"
|
| 289 |
path: "hassakuXLIllustrious_v30.safetensors"
|
| 290 |
category: "Illustrious"
|
| 291 |
+
- display_name: "Crody/Nova-Anime-XL-v18.0"
|
| 292 |
+
path: "novaAnimeXL_ilV180.safetensors"
|
| 293 |
category: "Illustrious"
|
| 294 |
- display_name: "OnomaAIResearch/Illustrious-XL-v2.0"
|
| 295 |
path: "Illustrious-XL-v2.0.safetensors"
|