aboutsummaryrefslogtreecommitdiff
path: root/modules/api/api.py
diff options
context:
space:
mode:
authorNoCrypt <57245077+NoCrypt@users.noreply.github.com>2022-11-11 21:14:10 +0700
committerGitHub <noreply@github.com>2022-11-11 21:14:10 +0700
commit6165f07e74f05543bf9039dda5d66686d18d985a (patch)
tree8b5d06daf8ed9626e2ac7f872720b87e1207bced /modules/api/api.py
parentc556d34523e8764bd66bf6a7bf97d06add420020 (diff)
parente666220ee458ae1e80a2ba12c64a0da9d68f20a2 (diff)
Merge branch 'master' into patch-1
Diffstat (limited to 'modules/api/api.py')
-rw-r--r--modules/api/api.py16
1 files changed, 14 insertions, 2 deletions
diff --git a/modules/api/api.py b/modules/api/api.py
index 688469ad..596a6616 100644
--- a/modules/api/api.py
+++ b/modules/api/api.py
@@ -15,6 +15,9 @@ from modules.sd_models import checkpoints_list
from modules.realesrgan_model import get_realesrgan_models
from typing import List
+if shared.cmd_opts.deepdanbooru:
+ from modules.deepbooru import get_deepbooru_tags
+
def upscaler_to_index(name: str):
try:
return [x.name.lower() for x in shared.sd_upscalers].index(name.lower())
@@ -220,11 +223,20 @@ class Api:
if image_b64 is None:
raise HTTPException(status_code=404, detail="Image not found")
- img = self.__base64_to_image(image_b64)
+ img = decode_base64_to_image(image_b64)
+ img = img.convert('RGB')
# Override object param
with self.queue_lock:
- processed = shared.interrogator.interrogate(img)
+ if interrogatereq.model == "clip":
+ processed = shared.interrogator.interrogate(img)
+ elif interrogatereq.model == "deepdanbooru":
+ if shared.cmd_opts.deepdanbooru:
+ processed = get_deepbooru_tags(img)
+ else:
+ raise HTTPException(status_code=404, detail="Model not found. Add --deepdanbooru when launching for using the model.")
+ else:
+ raise HTTPException(status_code=404, detail="Model not found")
return InterrogateResponse(caption=processed)