Instructions to use Hadimeeee/pixel-art-lora-sdxl with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Inference
- Notebooks
- Google Colab
- Kaggle
Download runpod_handler.py from Hadimeeee/pixel-art-lora-sdxl: direct link, hf CLI and curl.
- Browser
- Download file 1.73 kB
-
https://huggingface.co/Hadimeeee/pixel-art-lora-sdxl/resolve/main/runpod_handler.py
- Command line
-
hf download hf://Hadimeeee/pixel-art-lora-sdxl/runpod_handler.py
-
curl -L -o runpod_handler.py https://huggingface.co/Hadimeeee/pixel-art-lora-sdxl/resolve/main/runpod_handler.py
1.73 kB
| import base64 | |
| import io | |
| import os | |
| import runpod | |
| from PIL import Image | |
| from pipeline import load_pipeline | |
| PIPELINE = load_pipeline(os.getenv("LORA_PATH", ".")) | |
| def _as_bool(value, default: bool = True) -> bool: | |
| if value is None: | |
| return default | |
| if isinstance(value, bool): | |
| return value | |
| if isinstance(value, str): | |
| return value.lower() in {"1", "true", "yes", "on"} | |
| return bool(value) | |
| def _decode_image(data: str) -> Image.Image: | |
| if data.startswith("data:image"): | |
| data = data.split(",", 1)[1] | |
| return Image.open(io.BytesIO(base64.b64decode(data))).convert("RGB") | |
| def _encode_png(image: Image.Image) -> str: | |
| buffer = io.BytesIO() | |
| image.save(buffer, format="PNG") | |
| return base64.b64encode(buffer.getvalue()).decode("utf-8") | |
| def handler(event): | |
| payload = event.get("input", {}) | |
| image_b64 = payload.get("image") | |
| if not image_b64: | |
| return {"error": "Missing input.image base64 PNG/JPEG data."} | |
| image = _decode_image(image_b64) | |
| seed = payload.get("seed") | |
| if seed is not None: | |
| seed = int(seed) | |
| output = PIPELINE( | |
| image=image, | |
| num_inference_steps=int(payload.get("num_inference_steps", 50)), | |
| guidance_scale=float(payload.get("guidance_scale", 7.5)), | |
| controlnet_conditioning_scale=float(payload.get("controlnet_conditioning_scale", 0.8)), | |
| strength=float(payload.get("strength", 0.75)), | |
| quantize=_as_bool(payload.get("quantize"), True), | |
| n_colors=int(payload.get("n_colors", 32)), | |
| seed=seed, | |
| ) | |
| return { | |
| "image": _encode_png(output["image"]), | |
| "rembg_ok": output["rembg_ok"], | |
| } | |
| runpod.serverless.start({"handler": handler}) | |