From 8d8cd8950f1748a2b5e65ad153e1ec5ba431e32e Mon Sep 17 00:00:00 2001 From: Enrique Barcelli Date: Mon, 1 Sep 2025 17:56:12 +0800 Subject: [PATCH] Add image generation functionality --- .gitignore | 1 + create_image.py | 33 +++++++++++++++++++++++++++++++++ output_images/__init__.py | 0 3 files changed, 34 insertions(+) create mode 100644 create_image.py create mode 100644 output_images/__init__.py diff --git a/.gitignore b/.gitignore index bef7e43..6dc59bf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ # Sensitive files config.py +*.png # ---> Python # Byte-compiled / optimized / DLL files diff --git a/create_image.py b/create_image.py new file mode 100644 index 0000000..28211c2 --- /dev/null +++ b/create_image.py @@ -0,0 +1,33 @@ +from config import * +import requests +import json +import sys +import base64 +from PIL import Image +from io import BytesIO +from datetime import datetime + +def create_image(model,prompt): + url = base_url+"images/generations" + + payload = json.dumps({ + "prompt": prompt, + "model": model + }) + headers = { + 'Content-Type': 'application/json', + 'Authorization': 'Bearer '+secret_key, + } + date_time_string = datetime.now().strftime("%Y-%m-%d-%H-%M-%S") + + response = requests.request("POST", url, headers=headers, data=payload) + decoded_bytes = base64.b64decode(response.json()["data"][0]["b64_json"]) + byte_stream = BytesIO(decoded_bytes) + image = Image.open(byte_stream) + image.save("./output_images/output-"+date_time_string+".png", "PNG") + + print("Image ./output_images/output-"+date_time_string+".png has been generated.") + + +if __name__ == '__main__': + create_image(str(sys.argv[1]),str(sys.argv[2])) diff --git a/output_images/__init__.py b/output_images/__init__.py new file mode 100644 index 0000000..e69de29