diff --git a/api/onnx_web/chain/result.py b/api/onnx_web/chain/result.py index 2ef5ff4d..d2b8cd00 100644 --- a/api/onnx_web/chain/result.py +++ b/api/onnx_web/chain/result.py @@ -252,6 +252,30 @@ class ImageMetadata: return output_size + def with_args( + self, + params: Optional[ImageParams] = None, + size: Optional[Size] = None, + upscale: Optional[UpscaleParams] = None, + border: Optional[Border] = None, + highres: Optional[HighresParams] = None, + inversions: Optional[List[NetworkMetadata]] = None, + loras: Optional[List[NetworkMetadata]] = None, + models: Optional[List[NetworkMetadata]] = None, + ancestors: Optional[List["ImageMetadata"]] = None, + ) -> "ImageMetadata": + return ImageMetadata( + params or self.params, + size or self.size, + upscale=upscale or self.upscale, + border=border or self.border, + highres=highres or self.highres, + inversions=inversions or self.inversions, + loras=loras or self.loras, + models=models or self.models, + ancestors=ancestors or self.ancestors, + ) + @staticmethod def from_exif(input: str) -> "ImageMetadata": lines = input.splitlines() diff --git a/api/onnx_web/diffusers/run.py b/api/onnx_web/diffusers/run.py index 33b02c57..d5b514f1 100644 --- a/api/onnx_web/diffusers/run.py +++ b/api/onnx_web/diffusers/run.py @@ -86,6 +86,11 @@ def add_thumbnail_output( thumbnail = cover.copy() thumbnail.thumbnail((server.thumbnail_size, server.thumbnail_size)) + metadata = images.metadata[0] + metadata = metadata.copy( + size=Size(server.thumbnail_size, server.thumbnail_size) + ) + images.insert_image(0, thumbnail, images.metadata[0])