bizyengine 1.2.39__py3-none-any.whl → 1.2.41__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- bizyengine/bizyair_extras/nodes_wan_video.py +36 -0
- bizyengine/bizyair_extras/route_bizyair_tools.py +65 -9
- bizyengine/core/commands/servers/prompt_server.py +3 -5
- bizyengine/core/configs/models.json +2 -0
- bizyengine/core/configs/models.yaml +2 -0
- bizyengine/version.txt +1 -1
- {bizyengine-1.2.39.dist-info → bizyengine-1.2.41.dist-info}/METADATA +1 -1
- {bizyengine-1.2.39.dist-info → bizyengine-1.2.41.dist-info}/RECORD +10 -10
- {bizyengine-1.2.39.dist-info → bizyengine-1.2.41.dist-info}/WHEEL +0 -0
- {bizyengine-1.2.39.dist-info → bizyengine-1.2.41.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,42 @@
|
|
|
1
1
|
from bizyengine.core import BizyAirBaseNode
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
class WanImageToVideo(BizyAirBaseNode):
|
|
5
|
+
MAX_RESOLUTION = 960
|
|
6
|
+
|
|
7
|
+
@classmethod
|
|
8
|
+
def INPUT_TYPES(s):
|
|
9
|
+
return {
|
|
10
|
+
"required": {
|
|
11
|
+
"positive": ("CONDITIONING",),
|
|
12
|
+
"negative": ("CONDITIONING",),
|
|
13
|
+
"vae": ("VAE",),
|
|
14
|
+
"width": (
|
|
15
|
+
"INT",
|
|
16
|
+
{"default": 832, "min": 16, "max": s.MAX_RESOLUTION, "step": 16},
|
|
17
|
+
),
|
|
18
|
+
"height": (
|
|
19
|
+
"INT",
|
|
20
|
+
{"default": 480, "min": 16, "max": s.MAX_RESOLUTION, "step": 16},
|
|
21
|
+
),
|
|
22
|
+
"length": (
|
|
23
|
+
"INT",
|
|
24
|
+
{"default": 81, "min": 1, "max": s.MAX_RESOLUTION, "step": 4},
|
|
25
|
+
),
|
|
26
|
+
"batch_size": ("INT", {"default": 1, "min": 1, "max": 4096}),
|
|
27
|
+
},
|
|
28
|
+
"optional": {
|
|
29
|
+
"clip_vision_output": ("CLIP_VISION_OUTPUT",),
|
|
30
|
+
"start_image": ("IMAGE",),
|
|
31
|
+
},
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
RETURN_TYPES = ("CONDITIONING", "CONDITIONING", "LATENT")
|
|
35
|
+
RETURN_NAMES = ("positive", "negative", "latent")
|
|
36
|
+
CATEGORY = "WanI2V"
|
|
37
|
+
# FUNCTION = "encode"
|
|
38
|
+
|
|
39
|
+
|
|
4
40
|
class Wan_Model_Loader(BizyAirBaseNode):
|
|
5
41
|
@classmethod
|
|
6
42
|
def INPUT_TYPES(cls):
|
|
@@ -8,6 +8,22 @@ import bizyengine.core as bizyair
|
|
|
8
8
|
from bizyengine.core.common.env_var import BIZYAIR_DEBUG
|
|
9
9
|
from bizyengine.core.data_types import BIZYAIR_TYPE_MAP
|
|
10
10
|
|
|
11
|
+
# Invert BIZYAIR_TYPE_MAP for reverse lookup
|
|
12
|
+
INVERTED_BIZYAIR_TYPE_MAP = {v: k for k, v in BIZYAIR_TYPE_MAP.items()}
|
|
13
|
+
|
|
14
|
+
import importlib
|
|
15
|
+
import warnings
|
|
16
|
+
|
|
17
|
+
try:
|
|
18
|
+
comfy_nodes = importlib.import_module("nodes")
|
|
19
|
+
except ModuleNotFoundError:
|
|
20
|
+
warnings.warn("Importing comfyui.nodes failed!")
|
|
21
|
+
comfy_nodes = type(
|
|
22
|
+
"nodes",
|
|
23
|
+
(object,),
|
|
24
|
+
{"NODE_DISPLAY_NAME_MAPPINGS": {}, "NODE_CLASS_MAPPINGS": {}},
|
|
25
|
+
)
|
|
26
|
+
|
|
11
27
|
|
|
12
28
|
def get_bizyair_display_name(class_type: str) -> str:
|
|
13
29
|
bizyair_cls_prefix = bizyair.nodes_base.PREFIX
|
|
@@ -15,35 +31,69 @@ def get_bizyair_display_name(class_type: str) -> str:
|
|
|
15
31
|
return f"{bizyair_logo}{bizyair_cls_prefix} {bizyair.NODE_DISPLAY_NAME_MAPPINGS.get(class_type, class_type)}"
|
|
16
32
|
|
|
17
33
|
|
|
18
|
-
def
|
|
34
|
+
def revert_bizyair_display_name(class_type: str) -> str:
|
|
35
|
+
comfy_class_type = class_type[len(f"{bizyair.nodes_base.PREFIX}_") :]
|
|
36
|
+
return comfy_nodes.NODE_DISPLAY_NAME_MAPPINGS.get(
|
|
37
|
+
comfy_class_type, comfy_class_type
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def workflow_convert(inputs: dict, comfy2bizyair: bool = True):
|
|
19
42
|
nodes = inputs["nodes"]
|
|
20
43
|
for node in nodes:
|
|
21
44
|
class_type = node["type"]
|
|
22
45
|
node_inputs = node.get("inputs")
|
|
23
46
|
node_outputs = node.get("outputs")
|
|
24
|
-
bizyair_cls_type = f"{bizyair.nodes_base.PREFIX}_{class_type}"
|
|
25
47
|
is_converted = False
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
48
|
+
|
|
49
|
+
# check if the node is a bizyair node
|
|
50
|
+
new_class_type = class_type
|
|
51
|
+
if not comfy2bizyair:
|
|
52
|
+
if (
|
|
53
|
+
len(class_type) > len(f"{bizyair.nodes_base.PREFIX}_")
|
|
54
|
+
and class_type[len(f"{bizyair.nodes_base.PREFIX}_") :]
|
|
55
|
+
in comfy_nodes.NODE_CLASS_MAPPINGS
|
|
56
|
+
):
|
|
57
|
+
new_class_type = class_type[len(f"{bizyair.nodes_base.PREFIX}_") :]
|
|
58
|
+
elif (
|
|
59
|
+
comfy2bizyair
|
|
60
|
+
and f"{bizyair.nodes_base.PREFIX}_{class_type}"
|
|
61
|
+
in bizyair.NODE_CLASS_MAPPINGS
|
|
62
|
+
):
|
|
63
|
+
new_class_type = f"{bizyair.nodes_base.PREFIX}_{class_type}"
|
|
64
|
+
|
|
65
|
+
if new_class_type != class_type:
|
|
66
|
+
node["type"] = new_class_type
|
|
67
|
+
display_name = (
|
|
68
|
+
get_bizyair_display_name(class_type)
|
|
69
|
+
if comfy2bizyair
|
|
70
|
+
else revert_bizyair_display_name(class_type)
|
|
71
|
+
)
|
|
29
72
|
node["properties"]["Node name for S&R"] = display_name
|
|
73
|
+
|
|
74
|
+
type_mapping = (
|
|
75
|
+
BIZYAIR_TYPE_MAP if comfy2bizyair else INVERTED_BIZYAIR_TYPE_MAP
|
|
76
|
+
)
|
|
30
77
|
if node_inputs:
|
|
31
78
|
for input_node in node_inputs:
|
|
32
79
|
input_type = input_node["type"]
|
|
33
|
-
input_node["type"] =
|
|
80
|
+
input_node["type"] = type_mapping.get(input_type, input_type)
|
|
34
81
|
if node_outputs:
|
|
35
82
|
for output_node in node_outputs:
|
|
36
83
|
output_type = output_node["type"]
|
|
37
|
-
output_node["type"] =
|
|
84
|
+
output_node["type"] = type_mapping.get(output_type, output_type)
|
|
85
|
+
|
|
38
86
|
is_converted = True
|
|
87
|
+
|
|
39
88
|
if BIZYAIR_DEBUG:
|
|
40
89
|
pprint.pprint(
|
|
41
90
|
{
|
|
42
91
|
"original_class_type": class_type,
|
|
43
|
-
"
|
|
92
|
+
"new_class_type": new_class_type,
|
|
44
93
|
"is_converted": is_converted,
|
|
45
94
|
}
|
|
46
95
|
)
|
|
96
|
+
|
|
47
97
|
return inputs
|
|
48
98
|
|
|
49
99
|
|
|
@@ -51,7 +101,13 @@ def workflow_convert(inputs: dict):
|
|
|
51
101
|
async def convert(request):
|
|
52
102
|
try:
|
|
53
103
|
data = await request.json()
|
|
54
|
-
|
|
104
|
+
comfy2bizyair = data.get("comfy2bizyair", True)
|
|
105
|
+
ret = workflow_convert(data, comfy2bizyair=comfy2bizyair)
|
|
106
|
+
|
|
107
|
+
# remove "comfy2bizyair" key from the response
|
|
108
|
+
if "comfy2bizyair" in ret:
|
|
109
|
+
del ret["comfy2bizyair"]
|
|
110
|
+
|
|
55
111
|
return web.Response(
|
|
56
112
|
text=json.dumps(ret),
|
|
57
113
|
content_type="application/json",
|
|
@@ -189,12 +189,10 @@ class PromptServer(Command):
|
|
|
189
189
|
and result.get("query_url", None) is not None
|
|
190
190
|
)
|
|
191
191
|
|
|
192
|
-
def _get_fass_result(self, result: Dict[str, Any]) -> Dict[str, Any]:
|
|
192
|
+
def _get_fass_result(self, result: Dict[str, Any], **kwargs) -> Dict[str, Any]:
|
|
193
193
|
request_id = result.get("request_id", None)
|
|
194
194
|
query_url = f"{BIZYAIR_SERVER_ADDRESS}/supernode/status?request_id={request_id}"
|
|
195
|
-
return self._poll_fass_for_completion(
|
|
196
|
-
query_url,
|
|
197
|
-
)
|
|
195
|
+
return self._poll_fass_for_completion(query_url, **kwargs)
|
|
198
196
|
|
|
199
197
|
def _poll_fass_for_completion(self, query_url, **kwargs):
|
|
200
198
|
start_time = time.time()
|
|
@@ -228,7 +226,7 @@ class PromptServer(Command):
|
|
|
228
226
|
try:
|
|
229
227
|
if self.is_fass_task(result):
|
|
230
228
|
self.cache_manager.set(cache_key, result)
|
|
231
|
-
result = self._get_fass_result(result)
|
|
229
|
+
result = self._get_fass_result(result, **kwargs)
|
|
232
230
|
result = result.get("data", {}).get("payload", None)
|
|
233
231
|
assert result is not None, "Output payload should not be None"
|
|
234
232
|
self.cache_manager.set(cache_key, result, overwrite=True)
|
|
@@ -69,6 +69,8 @@
|
|
|
69
69
|
"shuttle-3.1-aesthetic.safetensors",
|
|
70
70
|
"wan2.2_t2v_high_noise_14B_fp8_scaled.safetensors",
|
|
71
71
|
"wan2.2_t2v_low_noise_14B_fp8_scaled.safetensors",
|
|
72
|
+
"wan2.2_i2v_low_noise_14B_fp8_scaled.safetensors",
|
|
73
|
+
"wan2.2_i2v_high_noise_14B_fp8_scaled.safetensors",
|
|
72
74
|
"flux1-dev-kontext_fp8_scaled.safetensors",
|
|
73
75
|
"flux1-dev-kontext-onediff.safetensors",
|
|
74
76
|
{
|
|
@@ -447,6 +447,8 @@ model_rules:
|
|
|
447
447
|
inputs:
|
|
448
448
|
unet_name:
|
|
449
449
|
- ^wan2.2_t2v_high_noise_14B_fp8_scaled.safetensors$
|
|
450
|
+
- ^wan2.2_i2v_high_noise_14B_fp8_scaled.safetensors$
|
|
451
|
+
- ^wan2.2_i2v_low_noise_14B_fp8_scaled.safetensors$
|
|
450
452
|
|
|
451
453
|
- mode_type: Wan2.2-T2V
|
|
452
454
|
base_model: Wan
|
bizyengine/version.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.2.
|
|
1
|
+
1.2.41
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bizyengine
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.41
|
|
4
4
|
Summary: [a/BizyAir](https://github.com/siliconflow/BizyAir) Comfy Nodes that can run in any environment.
|
|
5
5
|
Author-email: SiliconFlow <yaochi@siliconflow.cn>
|
|
6
6
|
Project-URL: Repository, https://github.com/siliconflow/BizyAir
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
bizyengine/__init__.py,sha256=GP9V-JM07fz7uv_qTB43QEA2rKdrVJxi5I7LRnn_3ZQ,914
|
|
2
|
-
bizyengine/version.txt,sha256=
|
|
2
|
+
bizyengine/version.txt,sha256=14oMCP7qyokUFWpNMA8OF-sbwiuToPwd3e8z94cw7ZM,7
|
|
3
3
|
bizyengine/bizy_server/__init__.py,sha256=SP9oSblnPo4KQyh7yOGD26YCskFAcQHAZy04nQBNRIw,200
|
|
4
4
|
bizyengine/bizy_server/api_client.py,sha256=t6cwob7hs993oy5WdFcjKtIzfi3S_eUhODdDVv_Hedo,43822
|
|
5
5
|
bizyengine/bizy_server/errno.py,sha256=1UiFmE2U7r7hCHgsw4-p_YL0VCmTJc9NyYDEbhkanaY,16336
|
|
@@ -39,8 +39,8 @@ bizyengine/bizyair_extras/nodes_ultimatesdupscale.py,sha256=-_SsLTAWAQDv4uw-4Z7I
|
|
|
39
39
|
bizyengine/bizyair_extras/nodes_upscale_model.py,sha256=lrzA1BFI2w5aEPCmNPMh07s-WDzG-xTT49uU6WCnlP8,1151
|
|
40
40
|
bizyengine/bizyair_extras/nodes_utils.py,sha256=whog_tmV-q7JvLEdb03JL3KKsC7wKe3kImzx_jPaQD8,2613
|
|
41
41
|
bizyengine/bizyair_extras/nodes_wan_i2v.py,sha256=3XwcxLHmgrihgXDEzcVOjU6VjqnZa3mErINlY014PFA,8435
|
|
42
|
-
bizyengine/bizyair_extras/nodes_wan_video.py,sha256=
|
|
43
|
-
bizyengine/bizyair_extras/route_bizyair_tools.py,sha256=
|
|
42
|
+
bizyengine/bizyair_extras/nodes_wan_video.py,sha256=aE2JBF0ZT-6BOM0bGu9R4yZ_eMeMnnjCW-YzFe4qg8Q,2804
|
|
43
|
+
bizyengine/bizyair_extras/route_bizyair_tools.py,sha256=EiP5pS6xoE3tULoNSN2hYZA29vgt7yCErsbRp34gGEg,3898
|
|
44
44
|
bizyengine/bizyair_extras/nodes_ipadapter_plus/__init__.py,sha256=ECKATm_EKi_4G47-FJI4-3rHO3iiF9FVakfSTE-pooE,36
|
|
45
45
|
bizyengine/bizyair_extras/nodes_ipadapter_plus/nodes_ipadapter_plus.py,sha256=lOKRem7oiPs8ZkA_p68HxagAgiCSvn3Rk-L4fSXIjyE,54846
|
|
46
46
|
bizyengine/bizyair_extras/nodes_kolors_mz/__init__.py,sha256=HsCCCphW8q0SrWEiFlZKK_W2lQr1T0UJIJL7gEn37ME,3729
|
|
@@ -56,15 +56,15 @@ bizyengine/core/commands/invoker.py,sha256=8wcIMd8k44o96LAvxFrIiKOlVtf1MW-AcMDXs
|
|
|
56
56
|
bizyengine/core/commands/processors/model_hosting_processor.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
57
57
|
bizyengine/core/commands/processors/prompt_processor.py,sha256=jG0EuphvtycH5Dm-frBGtlIcxkTCXiFMQ1vFMvi_Re0,4963
|
|
58
58
|
bizyengine/core/commands/servers/model_server.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
59
|
-
bizyengine/core/commands/servers/prompt_server.py,sha256=
|
|
59
|
+
bizyengine/core/commands/servers/prompt_server.py,sha256=e8JhtKRM8nw0kQwe2Ofl-zQtiVqQdbbWRxOqkFmSclM,10873
|
|
60
60
|
bizyengine/core/common/__init__.py,sha256=GicZw6YeAZk1PsKmFDt9dm1F75zPUlpia9Q_ki5vW1Y,179
|
|
61
61
|
bizyengine/core/common/caching.py,sha256=hRNsSrfNxgc1zzvBzLVjMY0iMkKqA0TBCr-iYhEpzik,6946
|
|
62
62
|
bizyengine/core/common/client.py,sha256=mP24Hxe_y20VXxVFdUz6HtLBzATUS4d8nr-rNf2KNwc,10535
|
|
63
63
|
bizyengine/core/common/env_var.py,sha256=1EAW3gOXY2bKouCqrGa583vTJRdDasQ1IsFTnzDg7Dk,3450
|
|
64
64
|
bizyengine/core/common/utils.py,sha256=bm-XmSPy83AyjD0v5EfWp6jiO6_5p7rkZ_HQAuVmgmo,3086
|
|
65
65
|
bizyengine/core/configs/conf.py,sha256=D_UWG9SSJnK5EhbrfNFryJQ8hUwwdvhOGlq1TielwpI,3830
|
|
66
|
-
bizyengine/core/configs/models.json,sha256=
|
|
67
|
-
bizyengine/core/configs/models.yaml,sha256=
|
|
66
|
+
bizyengine/core/configs/models.json,sha256=v-PpSxNuexSPAVlZbXJyn934cfzoaTC76whFSidaRks,3301
|
|
67
|
+
bizyengine/core/configs/models.yaml,sha256=Zv4H0DXlE1MBKvCFvOQrFjgYdpX1nUZIoNzS7HnbPa4,11571
|
|
68
68
|
bizyengine/core/path_utils/__init__.py,sha256=JVpqNHgaKiEtTI8_r47af8GtWHxrtOockQ6Qpzp9_MQ,260
|
|
69
69
|
bizyengine/core/path_utils/path_manager.py,sha256=tRVAcpsYvfWD-tK7khLvNCZayB0wpU9L0tRTH4ZESzM,10549
|
|
70
70
|
bizyengine/core/path_utils/utils.py,sha256=kQfPQjGU27qF9iyzRxLSRg5cMsd-VixuCUldART7cgY,2394
|
|
@@ -79,7 +79,7 @@ bizyengine/misc/route_sam.py,sha256=-bMIR2QalfnszipGxSxvDAHGJa5gPSrjkYPb5baaRg4,
|
|
|
79
79
|
bizyengine/misc/segment_anything.py,sha256=wNKYwlYPMszfwj23524geFZJjZaG4eye65SGaUnh77I,8941
|
|
80
80
|
bizyengine/misc/supernode.py,sha256=STN9gaxfTSErH8OiHeZa47d8z-G9S0I7fXuJvHQOBFM,4532
|
|
81
81
|
bizyengine/misc/utils.py,sha256=deQjBgLAkxIr-NaOMm77TcgBT3ExAp0MFm5ehUJ3CGs,6829
|
|
82
|
-
bizyengine-1.2.
|
|
83
|
-
bizyengine-1.2.
|
|
84
|
-
bizyengine-1.2.
|
|
85
|
-
bizyengine-1.2.
|
|
82
|
+
bizyengine-1.2.41.dist-info/METADATA,sha256=H3M0yCeP_Gz6s_izao-RYYhtfwhkrV8jv-UkJqZs-8w,675
|
|
83
|
+
bizyengine-1.2.41.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
84
|
+
bizyengine-1.2.41.dist-info/top_level.txt,sha256=2zapzqxX-we5cRyJkGf9bd5JinRtXp3-_uDI-xCAnc0,11
|
|
85
|
+
bizyengine-1.2.41.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|