Spaces:
Running
Running
from typing import Any | |
from app_settings import Settings | |
from models.interface_types import InterfaceType | |
from backend.lcm_text_to_image import LCMTextToImage | |
from time import time | |
from backend.image_saver import ImageSaver | |
from pprint import pprint | |
class Context: | |
def __init__( | |
self, | |
interface_type: InterfaceType, | |
device="cpu", | |
): | |
self.interface_type = interface_type | |
self.lcm_text_to_image = LCMTextToImage(device) | |
def generate_text_to_image( | |
self, | |
settings: Settings, | |
reshape: bool = False, | |
device: str = "cpu", | |
) -> Any: | |
tick = time() | |
pprint(settings.lcm_diffusion_setting.model_dump()) | |
self.lcm_text_to_image.init( | |
settings.lcm_diffusion_setting.lcm_model_id, | |
settings.lcm_diffusion_setting.use_openvino, | |
device, | |
settings.lcm_diffusion_setting.use_offline_model, | |
) | |
images = self.lcm_text_to_image.generate( | |
settings.lcm_diffusion_setting, | |
reshape, | |
) | |
elapsed = time() - tick | |
# ImageSaver.save_images( | |
# settings.results_path, | |
# images=images, | |
# lcm_diffusion_setting=settings.lcm_diffusion_setting, | |
# ) | |
print(f"Elapsed time : {elapsed:.2f} seconds") | |
return images | |