Refactor code structure for improved readability and maintainability
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
# Inpaint worker — SDXL (`diffusers/stable-diffusion-xl-1.0-inpainting-0.1`)
|
||||
|
||||
One RunPod serverless endpoint that powers **Magic Eraser**, **Generative Fill**,
|
||||
and **Outpaint** in the photo editor. Set its `/runsync` URL as the Vercel env var
|
||||
**`RUNPOD_SD_INPAINT_URL`**.
|
||||
|
||||
## Contract
|
||||
Request `{"input": {...}}` — matches the app's `rpInpaint`:
|
||||
|
||||
| field | required | meaning |
|
||||
|---|---|---|
|
||||
| `image` | yes | base64 image (raw or `data:` URI) |
|
||||
| `mask` | yes | base64 mask — **white = regenerate, black = keep** |
|
||||
| `prompt` | no | `""` = Magic Eraser (clean fill); text = Generative Fill / Outpaint |
|
||||
| `strength` | no | 0..1 (empty prompt forces 1.0 to fully erase) |
|
||||
| `guidance_scale` | no | default 7 |
|
||||
| `num_inference_steps` | no | default 35 |
|
||||
| `negative_prompt` | no | — |
|
||||
| `seed` | no | — |
|
||||
|
||||
Response: `{"image": "<base64 PNG>"}` or `{"error": "..."}`.
|
||||
|
||||
## RunPod setup
|
||||
1. New Serverless endpoint → connect this GitHub repo → **Dockerfile path** `workers/inpaint/Dockerfile` (build context = repo root).
|
||||
2. GPU: **24 GB** (RTX 4090 / 3090). Max workers ≥ 1; optionally a network volume to cache the ~7 GB model so cold starts don't re-download.
|
||||
3. Copy the endpoint's `…/runsync` URL → Vercel `RUNPOD_SD_INPAINT_URL`, then redeploy the web app.
|
||||
|
||||
## Env knobs
|
||||
- `SD_INPAINT_MODEL` (default `diffusers/stable-diffusion-xl-1.0-inpainting-0.1`)
|
||||
- `SD_INPAINT_MAX_SIZE` (default `1024`)
|
||||
Reference in New Issue
Block a user