From b0cd0bcb5b2e81c0e46483369100bdbf5c900130 Mon Sep 17 00:00:00 2001 From: yolain Date: Sat, 5 Jul 2025 00:03:12 +0800 Subject: [PATCH] Add `easy joyCaption3API` --- py/libs/api/bizyair.py | 7 ++++--- py/nodes/api.py | 44 +++++++++--------------------------------- 2 files changed, 13 insertions(+), 38 deletions(-) diff --git a/py/libs/api/bizyair.py b/py/libs/api/bizyair.py index 320ae4b..b7b4581 100644 --- a/py/libs/api/bizyair.py +++ b/py/libs/api/bizyair.py @@ -56,13 +56,14 @@ class BizyAIRAPI: f"Failed to connect to the server: {e}, if you have no key, " ) - # joycaptionTwo - def joyCaption2(self, payload, image, apikey_override=None): + # joycaption + def joyCaption(self, payload, image, apikey_override=None, API_URL='/supernode/joycaption2'): if apikey_override is not None: api_key = apikey_override else: api_key = self.getAPIKey() - url = f"{self.base_url}/supernode/joycaption2" + url = f"{self.base_url}{API_URL}" + print('Sending request to:', url) auth = f"Bearer {api_key}" headers = { "accept": "application/json", diff --git a/py/nodes/api.py b/py/nodes/api.py index 2e8702b..baee49e 100644 --- a/py/nodes/api.py +++ b/py/nodes/api.py @@ -3,37 +3,8 @@ from ..libs.api.fluxai import fluxaiAPI from ..libs.api.bizyair import bizyairAPI, encode_data from nodes import NODE_CLASS_MAPPINGS as ALL_NODE_CLASS_MAPPINGS -class fluxPromptGenAPI: - - @classmethod - def INPUT_TYPES(s): - return { - "required": { - "describe": ("STRING", {"default": "", "placeholder": "Describe your image idea (you can use any language)", "multiline": True}), - }, - "optional": { - "cookie_override": ("STRING", {"default": "", "forceInput": True}), - }, - "hidden": { - "prompt": "PROMPT", - "unique_id": "UNIQUE_ID", - "extra_pnginfo": "EXTRA_PNGINFO", - }, - } - - RETURN_TYPES = ("STRING",) - RETURN_NAMES = ("prompt",) - - FUNCTION = "generate" - OUTPUT_NODE = False - - CATEGORY = "EasyUse/API" - - def generate(self, describe, cookie_override=None, prompt=None, unique_id=None, extra_pnginfo=None): - prompt = fluxaiAPI.promptGenerate(describe, cookie_override) - return (prompt,) - class joyCaption2API: + API_URL = f"/supernode/joycaption2" @classmethod def INPUT_TYPES(s): @@ -110,12 +81,12 @@ class joyCaption2API: RETURN_TYPES = ("STRING",) RETURN_NAMES = ("caption",) - FUNCTION = "joycaption2" + FUNCTION = "joycaption" OUTPUT_NODE = False CATEGORY = "EasyUse/API" - def joycaption2( + def joycaption( self, image, do_sample, @@ -149,17 +120,20 @@ class joyCaption2API: } pbar.update_absolute(30) - caption = bizyairAPI.joyCaption2(payload, image, apikey_override) + caption = bizyairAPI.joyCaption(payload, image, apikey_override, API_URL=self.API_URL) pbar.update_absolute(100) return (caption,) +class joyCaption3API(joyCaption2API): + API_URL = f"/supernode/joycaption3" + NODE_CLASS_MAPPINGS = { - "easy fluxPromptGenAPI": fluxPromptGenAPI, "easy joyCaption2API": joyCaption2API, + "easy joyCaption3API": joyCaption3API, } NODE_DISPLAY_NAME_MAPPINGS = { - "easy fluxPromptGenAPI": "Prompt Gen (FluxAI)", "easy joyCaption2API": "JoyCaption2 (BizyAIR)", + "easy joyCaption3API": "JoyCaption3 (BizyAIR)", } \ No newline at end of file