| negative_prompt=negative_prompt, | negative_prompt=negative_prompt, | ||||
| width=width, | width=width, | ||||
| height=height, | height=height, | ||||
| steps=steps) | |||||
| steps=steps, | |||||
| model=model) | |||||
| return self.text2img(base_url=base_url, | return self.text2img(base_url=base_url, | ||||
| lora=lora, | lora=lora, | ||||
| negative_prompt=negative_prompt, | negative_prompt=negative_prompt, | ||||
| width=width, | width=width, | ||||
| height=height, | height=height, | ||||
| steps=steps) | |||||
| steps=steps, | |||||
| model=model) | |||||
| def validate_models(self) -> Union[ToolInvokeMessage, list[ToolInvokeMessage]]: | def validate_models(self) -> Union[ToolInvokeMessage, list[ToolInvokeMessage]]: | ||||
| """ | """ | ||||
| def img2img(self, base_url: str, lora: str, image_binary: bytes, | def img2img(self, base_url: str, lora: str, image_binary: bytes, | ||||
| prompt: str, negative_prompt: str, | prompt: str, negative_prompt: str, | ||||
| width: int, height: int, steps: int) \ | |||||
| width: int, height: int, steps: int, model: str) \ | |||||
| -> Union[ToolInvokeMessage, list[ToolInvokeMessage]]: | -> Union[ToolInvokeMessage, list[ToolInvokeMessage]]: | ||||
| """ | """ | ||||
| generate image | generate image | ||||
| "sampler_name": "Euler a", | "sampler_name": "Euler a", | ||||
| "restore_faces": False, | "restore_faces": False, | ||||
| "steps": steps, | "steps": steps, | ||||
| "script_args": ["outpainting mk2"] | |||||
| "script_args": ["outpainting mk2"], | |||||
| "override_settings": {"sd_model_checkpoint": model} | |||||
| } | } | ||||
| if lora: | if lora: | ||||
| except Exception as e: | except Exception as e: | ||||
| return self.create_text_message('Failed to generate image') | return self.create_text_message('Failed to generate image') | ||||
| def text2img(self, base_url: str, lora: str, prompt: str, negative_prompt: str, width: int, height: int, steps: int) \ | |||||
| def text2img(self, base_url: str, lora: str, prompt: str, negative_prompt: str, width: int, height: int, steps: int, model: str) \ | |||||
| -> Union[ToolInvokeMessage, list[ToolInvokeMessage]]: | -> Union[ToolInvokeMessage, list[ToolInvokeMessage]]: | ||||
| """ | """ | ||||
| generate image | generate image | ||||
| draw_options['height'] = height | draw_options['height'] = height | ||||
| draw_options['steps'] = steps | draw_options['steps'] = steps | ||||
| draw_options['negative_prompt'] = negative_prompt | draw_options['negative_prompt'] = negative_prompt | ||||
| draw_options['override_settings']['sd_model_checkpoint'] = model | |||||
| try: | try: | ||||
| url = str(URL(base_url) / 'sdapi' / 'v1' / 'txt2img') | url = str(URL(base_url) / 'sdapi' / 'v1' / 'txt2img') |