Update app.py
Browse files
app.py
CHANGED
@@ -32,13 +32,13 @@ app.add_middleware(CORSMiddleware, allow_origins=["*"], allow_credentials=True,
|
|
32 |
# ThreadPoolExecutor for managing image processing threads
|
33 |
executor = ThreadPoolExecutor()
|
34 |
|
35 |
-
#
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
device = "cpu"
|
41 |
-
|
42 |
|
43 |
# Load model from Huggingface Hub
|
44 |
huggingface_token = os.getenv("HUGGINGFACE_TOKEN")
|
@@ -60,14 +60,15 @@ logger.info("Model downloaded to: %s", model_path)
|
|
60 |
|
61 |
# Load pipeline
|
62 |
logger.info('Loading ControlNet model.')
|
|
|
63 |
controlnet = FluxControlNetModel.from_pretrained(
|
64 |
-
"jasperai/Flux.1-dev-Controlnet-Upscaler", torch_dtype=torch.
|
65 |
).to(device)
|
66 |
logger.info("ControlNet model loaded successfully.")
|
67 |
|
68 |
logger.info('Loading pipeline.')
|
69 |
pipe = FluxControlNetPipeline.from_pretrained(
|
70 |
-
model_path, controlnet=controlnet, torch_dtype=torch.
|
71 |
).to(device)
|
72 |
logger.info("Pipeline loaded successfully.")
|
73 |
|
|
|
32 |
# ThreadPoolExecutor for managing image processing threads
|
33 |
executor = ThreadPoolExecutor()
|
34 |
|
35 |
+
#Determine the device (GPU or CPU)
|
36 |
+
if torch.cuda.is_available():
|
37 |
+
device = "cuda"
|
38 |
+
logger.info("CUDA is available. Using GPU.")
|
39 |
+
else:
|
40 |
+
device = "cpu"
|
41 |
+
logger.info("CUDA is not available. Using CPU.")
|
42 |
|
43 |
# Load model from Huggingface Hub
|
44 |
huggingface_token = os.getenv("HUGGINGFACE_TOKEN")
|
|
|
60 |
|
61 |
# Load pipeline
|
62 |
logger.info('Loading ControlNet model.')
|
63 |
+
cache_dir = "./model_cache" # Customize your cache directory
|
64 |
controlnet = FluxControlNetModel.from_pretrained(
|
65 |
+
"jasperai/Flux.1-dev-Controlnet-Upscaler", torch_dtype=torch.float16,cache_dir=cache_dir, low_cpu_mem_usage=True
|
66 |
).to(device)
|
67 |
logger.info("ControlNet model loaded successfully.")
|
68 |
|
69 |
logger.info('Loading pipeline.')
|
70 |
pipe = FluxControlNetPipeline.from_pretrained(
|
71 |
+
model_path, controlnet=controlnet, torch_dtype=torch.float16,cache_dir=cache_dir, low_cpu_mem_usage=True
|
72 |
).to(device)
|
73 |
logger.info("Pipeline loaded successfully.")
|
74 |
|