fix: complete ComfyUI workflow schema validation
Fix all 20 production workflows to comply with ComfyUI schema requirements: - Add missing 'flags', 'order', 'mode', 'properties', 'size' fields to all nodes - Update deprecated node names: - AnimateDiffLoader → AnimateDiffLoaderV1 - VHSVideoCombine → VHS_VideoCombine - IPAdapterApply → IPAdapter - IPAdapterApplyFace → IPAdapterFaceID - Remove deprecated nodes: PreviewVideo, SaveVideo - Add fix_workflows.py script for future maintenance Changes: - 16 workflows updated with complete schema - 4 workflows (FLUX, SD3.5) were already valid - All workflows now pass zod schema validation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,21 +1,134 @@
|
||||
{
|
||||
"last_node_id": 6,
|
||||
"nodes": [
|
||||
{"id": 1, "type": "MusicGenLoader", "pos": [50, 100], "widgets_values": ["facebook/musicgen-large"], "title": "MusicGen Large Loader"},
|
||||
{"id": 2, "type": "MusicGenTextEncode", "pos": [400, 100], "widgets_values": ["Upbeat electronic dance music"], "title": "API Music Prompt"},
|
||||
{"id": 3, "type": "MusicGenSampler", "pos": [750, 100], "widgets_values": [42, "fixed", 30.0, 250, 3.0], "title": "MusicGen Sampler"},
|
||||
{"id": 4, "type": "AudioSave", "pos": [1100, 100], "widgets_values": ["musicgen_large_output", "wav"], "title": "API Audio Output"}
|
||||
{
|
||||
"id": 1,
|
||||
"type": "MusicGenLoader",
|
||||
"pos": [
|
||||
50,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"facebook/musicgen-large"
|
||||
],
|
||||
"title": "MusicGen Large Loader",
|
||||
"flags": {},
|
||||
"order": 0,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenLoader"
|
||||
},
|
||||
"size": {
|
||||
"0": 350,
|
||||
"1": 100
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"type": "MusicGenTextEncode",
|
||||
"pos": [
|
||||
400,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"Upbeat electronic dance music"
|
||||
],
|
||||
"title": "API Music Prompt",
|
||||
"flags": {},
|
||||
"order": 1,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenTextEncode"
|
||||
},
|
||||
"size": {
|
||||
"0": 400,
|
||||
"1": 200
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"type": "MusicGenSampler",
|
||||
"pos": [
|
||||
750,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
42,
|
||||
"fixed",
|
||||
30.0,
|
||||
250,
|
||||
3.0
|
||||
],
|
||||
"title": "MusicGen Sampler",
|
||||
"flags": {},
|
||||
"order": 2,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenSampler"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 474
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"type": "AudioSave",
|
||||
"pos": [
|
||||
1100,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"musicgen_large_output",
|
||||
"wav"
|
||||
],
|
||||
"title": "API Audio Output",
|
||||
"flags": {},
|
||||
"order": 3,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "AudioSave"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 100
|
||||
}
|
||||
}
|
||||
],
|
||||
"extra": {
|
||||
"workflow_info": {
|
||||
"name": "MusicGen Large Text-to-Music",
|
||||
"version": "1.0.0",
|
||||
"category": "text-to-music",
|
||||
"tags": ["musicgen", "large", "t2m"],
|
||||
"requirements": {"models": ["musicgen-large"], "custom_nodes": ["comfyui-sound-lab"], "vram_min": "16GB"},
|
||||
"parameters": {"prompt": {"node_id": 2, "type": "string"}, "duration": {"node_id": 3, "default": 30.0}},
|
||||
"performance": {"avg_generation_time": "45-70 seconds", "vram_usage": "~14-16GB"}
|
||||
"tags": [
|
||||
"musicgen",
|
||||
"large",
|
||||
"t2m"
|
||||
],
|
||||
"requirements": {
|
||||
"models": [
|
||||
"musicgen-large"
|
||||
],
|
||||
"custom_nodes": [
|
||||
"comfyui-sound-lab"
|
||||
],
|
||||
"vram_min": "16GB"
|
||||
},
|
||||
"parameters": {
|
||||
"prompt": {
|
||||
"node_id": 2,
|
||||
"type": "string"
|
||||
},
|
||||
"duration": {
|
||||
"node_id": 3,
|
||||
"default": 30.0
|
||||
}
|
||||
},
|
||||
"performance": {
|
||||
"avg_generation_time": "45-70 seconds",
|
||||
"vram_usage": "~14-16GB"
|
||||
}
|
||||
}
|
||||
},
|
||||
"version": 0.4
|
||||
}
|
||||
}
|
||||
@@ -1,21 +1,134 @@
|
||||
{
|
||||
"last_node_id": 6,
|
||||
"nodes": [
|
||||
{"id": 1, "type": "MusicGenLoader", "pos": [50, 100], "widgets_values": ["facebook/musicgen-medium"], "title": "MusicGen Medium Loader"},
|
||||
{"id": 2, "type": "MusicGenTextEncode", "pos": [400, 100], "widgets_values": ["Upbeat electronic dance music"], "title": "API Music Prompt"},
|
||||
{"id": 3, "type": "MusicGenSampler", "pos": [750, 100], "widgets_values": [42, "fixed", 30.0, 250, 3.0], "title": "MusicGen Sampler"},
|
||||
{"id": 4, "type": "AudioSave", "pos": [1100, 100], "widgets_values": ["musicgen_medium_output", "wav"], "title": "API Audio Output"}
|
||||
{
|
||||
"id": 1,
|
||||
"type": "MusicGenLoader",
|
||||
"pos": [
|
||||
50,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"facebook/musicgen-medium"
|
||||
],
|
||||
"title": "MusicGen Medium Loader",
|
||||
"flags": {},
|
||||
"order": 0,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenLoader"
|
||||
},
|
||||
"size": {
|
||||
"0": 350,
|
||||
"1": 100
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"type": "MusicGenTextEncode",
|
||||
"pos": [
|
||||
400,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"Upbeat electronic dance music"
|
||||
],
|
||||
"title": "API Music Prompt",
|
||||
"flags": {},
|
||||
"order": 1,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenTextEncode"
|
||||
},
|
||||
"size": {
|
||||
"0": 400,
|
||||
"1": 200
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"type": "MusicGenSampler",
|
||||
"pos": [
|
||||
750,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
42,
|
||||
"fixed",
|
||||
30.0,
|
||||
250,
|
||||
3.0
|
||||
],
|
||||
"title": "MusicGen Sampler",
|
||||
"flags": {},
|
||||
"order": 2,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenSampler"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 474
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"type": "AudioSave",
|
||||
"pos": [
|
||||
1100,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"musicgen_medium_output",
|
||||
"wav"
|
||||
],
|
||||
"title": "API Audio Output",
|
||||
"flags": {},
|
||||
"order": 3,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "AudioSave"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 100
|
||||
}
|
||||
}
|
||||
],
|
||||
"extra": {
|
||||
"workflow_info": {
|
||||
"name": "MusicGen Medium Text-to-Music",
|
||||
"version": "1.0.0",
|
||||
"category": "text-to-music",
|
||||
"tags": ["musicgen", "medium", "t2m"],
|
||||
"requirements": {"models": ["musicgen-medium"], "custom_nodes": ["comfyui-sound-lab"], "vram_min": "10GB"},
|
||||
"parameters": {"prompt": {"node_id": 2, "type": "string"}, "duration": {"node_id": 3, "default": 30.0}},
|
||||
"performance": {"avg_generation_time": "25-40 seconds", "vram_usage": "~8-10GB"}
|
||||
"tags": [
|
||||
"musicgen",
|
||||
"medium",
|
||||
"t2m"
|
||||
],
|
||||
"requirements": {
|
||||
"models": [
|
||||
"musicgen-medium"
|
||||
],
|
||||
"custom_nodes": [
|
||||
"comfyui-sound-lab"
|
||||
],
|
||||
"vram_min": "10GB"
|
||||
},
|
||||
"parameters": {
|
||||
"prompt": {
|
||||
"node_id": 2,
|
||||
"type": "string"
|
||||
},
|
||||
"duration": {
|
||||
"node_id": 3,
|
||||
"default": 30.0
|
||||
}
|
||||
},
|
||||
"performance": {
|
||||
"avg_generation_time": "25-40 seconds",
|
||||
"vram_usage": "~8-10GB"
|
||||
}
|
||||
}
|
||||
},
|
||||
"version": 0.4
|
||||
}
|
||||
}
|
||||
@@ -1,22 +1,161 @@
|
||||
{
|
||||
"last_node_id": 7,
|
||||
"nodes": [
|
||||
{"id": 1, "type": "LoadAudio", "pos": [50, 100], "widgets_values": ["melody_reference.wav"], "title": "API Melody Reference"},
|
||||
{"id": 2, "type": "MusicGenLoader", "pos": [50, 350], "widgets_values": ["facebook/musicgen-melody"], "title": "MusicGen Melody Loader"},
|
||||
{"id": 3, "type": "MusicGenTextEncode", "pos": [400, 100], "widgets_values": ["Electronic music following the melody"], "title": "API Music Prompt"},
|
||||
{"id": 4, "type": "MusicGenMelodySampler", "pos": [750, 100], "widgets_values": [42, "fixed", 30.0, 250, 3.0], "title": "MusicGen Melody Sampler"},
|
||||
{"id": 5, "type": "AudioSave", "pos": [1100, 100], "widgets_values": ["musicgen_melody_output", "wav"], "title": "API Audio Output"}
|
||||
{
|
||||
"id": 1,
|
||||
"type": "LoadAudio",
|
||||
"pos": [
|
||||
50,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"melody_reference.wav"
|
||||
],
|
||||
"title": "API Melody Reference",
|
||||
"flags": {},
|
||||
"order": 0,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "LoadAudio"
|
||||
},
|
||||
"size": {
|
||||
"0": 350,
|
||||
"1": 100
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"type": "MusicGenLoader",
|
||||
"pos": [
|
||||
50,
|
||||
350
|
||||
],
|
||||
"widgets_values": [
|
||||
"facebook/musicgen-melody"
|
||||
],
|
||||
"title": "MusicGen Melody Loader",
|
||||
"flags": {},
|
||||
"order": 1,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenLoader"
|
||||
},
|
||||
"size": {
|
||||
"0": 350,
|
||||
"1": 100
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"type": "MusicGenTextEncode",
|
||||
"pos": [
|
||||
400,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"Electronic music following the melody"
|
||||
],
|
||||
"title": "API Music Prompt",
|
||||
"flags": {},
|
||||
"order": 2,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenTextEncode"
|
||||
},
|
||||
"size": {
|
||||
"0": 400,
|
||||
"1": 200
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"type": "MusicGenMelodySampler",
|
||||
"pos": [
|
||||
750,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
42,
|
||||
"fixed",
|
||||
30.0,
|
||||
250,
|
||||
3.0
|
||||
],
|
||||
"title": "MusicGen Melody Sampler",
|
||||
"flags": {},
|
||||
"order": 3,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenMelodySampler"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 474
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"type": "AudioSave",
|
||||
"pos": [
|
||||
1100,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"musicgen_melody_output",
|
||||
"wav"
|
||||
],
|
||||
"title": "API Audio Output",
|
||||
"flags": {},
|
||||
"order": 4,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "AudioSave"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 100
|
||||
}
|
||||
}
|
||||
],
|
||||
"extra": {
|
||||
"workflow_info": {
|
||||
"name": "MusicGen Melody Text-to-Music",
|
||||
"version": "1.0.0",
|
||||
"category": "text-to-music",
|
||||
"tags": ["musicgen", "melody", "melody-conditioning", "t2m"],
|
||||
"requirements": {"models": ["musicgen-melody"], "custom_nodes": ["comfyui-sound-lab"], "vram_min": "12GB"},
|
||||
"parameters": {"melody_audio": {"node_id": 1, "type": "audio"}, "prompt": {"node_id": 3, "type": "string"}, "duration": {"node_id": 4, "default": 30.0}},
|
||||
"performance": {"avg_generation_time": "35-55 seconds", "vram_usage": "~10-12GB"}
|
||||
"tags": [
|
||||
"musicgen",
|
||||
"melody",
|
||||
"melody-conditioning",
|
||||
"t2m"
|
||||
],
|
||||
"requirements": {
|
||||
"models": [
|
||||
"musicgen-melody"
|
||||
],
|
||||
"custom_nodes": [
|
||||
"comfyui-sound-lab"
|
||||
],
|
||||
"vram_min": "12GB"
|
||||
},
|
||||
"parameters": {
|
||||
"melody_audio": {
|
||||
"node_id": 1,
|
||||
"type": "audio"
|
||||
},
|
||||
"prompt": {
|
||||
"node_id": 3,
|
||||
"type": "string"
|
||||
},
|
||||
"duration": {
|
||||
"node_id": 4,
|
||||
"default": 30.0
|
||||
}
|
||||
},
|
||||
"performance": {
|
||||
"avg_generation_time": "35-55 seconds",
|
||||
"vram_usage": "~10-12GB"
|
||||
}
|
||||
}
|
||||
},
|
||||
"version": 0.4
|
||||
}
|
||||
}
|
||||
@@ -1,21 +1,134 @@
|
||||
{
|
||||
"last_node_id": 6,
|
||||
"nodes": [
|
||||
{"id": 1, "type": "MusicGenLoader", "pos": [50, 100], "widgets_values": ["facebook/musicgen-small"], "title": "MusicGen Small Loader"},
|
||||
{"id": 2, "type": "MusicGenTextEncode", "pos": [400, 100], "widgets_values": ["Upbeat electronic dance music"], "title": "API Music Prompt"},
|
||||
{"id": 3, "type": "MusicGenSampler", "pos": [750, 100], "widgets_values": [42, "fixed", 30.0, 250, 3.0], "title": "MusicGen Sampler"},
|
||||
{"id": 4, "type": "AudioSave", "pos": [1100, 100], "widgets_values": ["musicgen_small_output", "wav"], "title": "API Audio Output"}
|
||||
{
|
||||
"id": 1,
|
||||
"type": "MusicGenLoader",
|
||||
"pos": [
|
||||
50,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"facebook/musicgen-small"
|
||||
],
|
||||
"title": "MusicGen Small Loader",
|
||||
"flags": {},
|
||||
"order": 0,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenLoader"
|
||||
},
|
||||
"size": {
|
||||
"0": 350,
|
||||
"1": 100
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"type": "MusicGenTextEncode",
|
||||
"pos": [
|
||||
400,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"Upbeat electronic dance music"
|
||||
],
|
||||
"title": "API Music Prompt",
|
||||
"flags": {},
|
||||
"order": 1,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenTextEncode"
|
||||
},
|
||||
"size": {
|
||||
"0": 400,
|
||||
"1": 200
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"type": "MusicGenSampler",
|
||||
"pos": [
|
||||
750,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
42,
|
||||
"fixed",
|
||||
30.0,
|
||||
250,
|
||||
3.0
|
||||
],
|
||||
"title": "MusicGen Sampler",
|
||||
"flags": {},
|
||||
"order": 2,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "MusicGenSampler"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 474
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"type": "AudioSave",
|
||||
"pos": [
|
||||
1100,
|
||||
100
|
||||
],
|
||||
"widgets_values": [
|
||||
"musicgen_small_output",
|
||||
"wav"
|
||||
],
|
||||
"title": "API Audio Output",
|
||||
"flags": {},
|
||||
"order": 3,
|
||||
"mode": 0,
|
||||
"properties": {
|
||||
"Node name for S&R": "AudioSave"
|
||||
},
|
||||
"size": {
|
||||
"0": 315,
|
||||
"1": 100
|
||||
}
|
||||
}
|
||||
],
|
||||
"extra": {
|
||||
"workflow_info": {
|
||||
"name": "MusicGen Small Text-to-Music",
|
||||
"version": "1.0.0",
|
||||
"category": "text-to-music",
|
||||
"tags": ["musicgen", "small", "t2m"],
|
||||
"requirements": {"models": ["musicgen-small"], "custom_nodes": ["comfyui-sound-lab"], "vram_min": "6GB"},
|
||||
"parameters": {"prompt": {"node_id": 2, "type": "string"}, "duration": {"node_id": 3, "default": 30.0}},
|
||||
"performance": {"avg_generation_time": "15-25 seconds", "vram_usage": "~4-6GB"}
|
||||
"tags": [
|
||||
"musicgen",
|
||||
"small",
|
||||
"t2m"
|
||||
],
|
||||
"requirements": {
|
||||
"models": [
|
||||
"musicgen-small"
|
||||
],
|
||||
"custom_nodes": [
|
||||
"comfyui-sound-lab"
|
||||
],
|
||||
"vram_min": "6GB"
|
||||
},
|
||||
"parameters": {
|
||||
"prompt": {
|
||||
"node_id": 2,
|
||||
"type": "string"
|
||||
},
|
||||
"duration": {
|
||||
"node_id": 3,
|
||||
"default": 30.0
|
||||
}
|
||||
},
|
||||
"performance": {
|
||||
"avg_generation_time": "15-25 seconds",
|
||||
"vram_usage": "~4-6GB"
|
||||
}
|
||||
}
|
||||
},
|
||||
"version": 0.4
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user