{
  "schema_version": "1.0",
  "tasks": {
    "text_to_image": {
      "description": "Generate an image from text (prompt + optional negative prompt)."
    },
    "image_to_image": {
      "description": "Edit/transform an input image using a text prompt (optionally with a mask)."
    },
    "image_upscale": {
      "description": "Upscale or restore an input image without changing its semantic content."
    },
    "multi_view_image": {
      "description": "Generate multiple consistent views/angles for a concept (optionally conditioned on a reference image)."
    },
    "text_to_video": {
      "description": "Generate a video from text (prompt + optional negative prompt).",
      "maturity": "experimental"
    },
    "image_to_video": {
      "description": "Generate a video conditioned on an image (optionally with text guidance).",
      "maturity": "experimental"
    }
  },
  "models": {
    "baidu/ERNIE-Image": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "ERNIE Image (Diffusers). Strong text-to-image baseline; full snapshot download is a non-8-bit fallback.",
      "downloads": [
        {
          "key": "ernie-image",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "baidu/ERNIE-Image",
          "source": "official",
          "notes": "Official Diffusers pipeline snapshot (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 704
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "baidu/ERNIE-Image-Turbo": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "ERNIE Image Turbo. Faster distilled text-to-image model; on Apple Silicon prefer the AbstractFramework MLX-Gen mixed q4/q8 prepared folder, with full Diffusers snapshot available as a fallback.",
      "downloads": [
        {
          "key": "ernie-image-turbo",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/ernie-image-turbo-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared mixed q4/q8 folder. Default Apple Silicon recommendation for local memory efficiency."
        },
        {
          "key": "ernie-image-turbo",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/ernie-image-turbo-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 folder. Prefer when image quality is more important than memory footprint."
        },
        {
          "key": "ernie-image-turbo",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "baidu/ERNIE-Image-Turbo",
          "source": "official",
          "notes": "Official Diffusers pipeline snapshot (full model weights)."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 704
            },
            "steps": {
              "required": false,
              "default": 8
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0
            },
            "strength": {
              "required": false,
              "default": 0.4
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        },
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 704
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.1-dev": {
      "provider": "huggingface",
      "license": "flux-1-dev-non-commercial-license",
      "notes": "FLUX.1 dev (Diffusers: FluxPipeline). Gated on Hugging Face; non-commercial license.",
      "downloads": [
        {
          "key": "flux1-dev",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.1-dev",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires HF token)."
        },
        {
          "key": "flux1-dev",
          "engine": "diffusers-component",
          "target": "fp8",
          "bits": 8,
          "repo_id": "black-forest-labs/FLUX.1-dev-FP8",
          "source": "official",
          "notes": "Official FP8 side artifact; components only, not a standalone Diffusers pipeline."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 704
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.1-schnell": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "FLUX.1 schnell (Diffusers: FluxPipeline). Apache-2.0, but Hugging Face currently gates file access behind contact-sharing. Timestep-distilled: use 1-4 steps, guidance_scale=0, and keep max_sequence_length<=256.",
      "downloads": [
        {
          "key": "flux1-schnell",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.1-schnell",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 704
            },
            "steps": {
              "required": false,
              "default": 4,
              "min": 1,
              "max": 4
            },
            "guidance_scale": {
              "required": false,
              "default": 0.0,
              "const": 0.0
            },
            "max_sequence_length": {
              "required": false,
              "max": 256
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.2-dev": {
      "provider": "huggingface",
      "license": "flux-non-commercial-license",
      "notes": "FLUX 2 dev (Diffusers: Flux2Pipeline). Official gated model for text-to-image, single-reference editing, and multi-reference editing.",
      "downloads": [
        {
          "key": "flux2-dev",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.2-dev",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires HF token)."
        },
        {
          "key": "flux2-dev",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "city96/FLUX.2-dev-gguf",
          "source": "curated-community-gguf",
          "notes": "GGUF quantizations for stable-diffusion.cpp runtimes (prefer Q8_0 / Q8 for quality)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.1-Kontext-dev": {
      "provider": "huggingface",
      "license": "flux-1-dev-non-commercial-license",
      "notes": "FLUX.1 Kontext dev (Diffusers: FluxKontextPipeline). Official contextual generation/editing model; supports both text-to-image and image-to-image.",
      "downloads": [
        {
          "key": "flux1-kontext-dev",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.1-Kontext-dev",
          "source": "official",
          "notes": "Official Diffusers edit pipeline snapshot."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 28
            },
            "guidance_scale": {
              "required": false,
              "default": 3.5
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 3.5
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.1-Canny-dev": {
      "provider": "huggingface",
      "license": "flux-1-dev-non-commercial-license",
      "notes": "FLUX.1 Canny dev (Diffusers: FluxControlPipeline). Control-image model for edge-guided generation and edits.",
      "downloads": [
        {
          "key": "flux1-canny-dev",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.1-Canny-dev",
          "source": "official",
          "notes": "Official Diffusers control pipeline snapshot."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.1-Depth-dev": {
      "provider": "huggingface",
      "license": "flux-1-dev-non-commercial-license",
      "notes": "FLUX.1 Depth dev (Diffusers: FluxControlPipeline). Control-image model for depth-guided generation and edits.",
      "downloads": [
        {
          "key": "flux1-depth-dev",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.1-Depth-dev",
          "source": "official",
          "notes": "Official Diffusers control pipeline snapshot."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.1-Fill-dev": {
      "provider": "huggingface",
      "license": "flux-1-dev-non-commercial-license",
      "notes": "FLUX.1 Fill dev (Diffusers: FluxFillPipeline). Official image fill/inpainting model; requires an input image and mask.",
      "downloads": [
        {
          "key": "flux1-fill-dev",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.1-Fill-dev",
          "source": "official",
          "notes": "Official Diffusers fill pipeline snapshot."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.1-Krea-dev": {
      "provider": "huggingface",
      "license": "flux-1-dev-non-commercial-license",
      "notes": "FLUX.1 Krea dev (Diffusers: FluxPipeline). Official FLUX.1 dev finetune focused on aesthetic photography; acts as a drop-in replacement for FLUX.1 dev.",
      "downloads": [
        {
          "key": "flux1-krea-dev",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.1-Krea-dev",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires HF token)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "prism-ml/bonsai-image-ternary-4B-mlx-2bit": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Bonsai Image ternary 2-bit Apple Silicon checkpoint. This is a pre-packed MLX artifact, not an AbstractFramework q4/q8 prepared folder; MLX-Gen runs it directly for text-to-image with 4-step FlowMatch Euler, fixed guidance 1.0, and no negative prompt.",
      "downloads": [
        {
          "key": "bonsai-image-ternary",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 2,
          "repo_id": "prism-ml/bonsai-image-ternary-4B-mlx-2bit",
          "source": "official",
          "notes": "Official Prism ML pre-packed ternary 2-bit MLX checkpoint consumed directly by MLX-Gen. Use download/generate; do not run q4/q8 prepare."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 4
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0,
              "const": 1.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        }
      }
    },
    "black-forest-labs/FLUX.2-klein-4B": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "FLUX 2 klein (4B, open) (Diffusers: Flux2KleinPipeline). Official open 4B model; use a modern released Diffusers build. For Apple Silicon local generation, prefer abstractvision download AbstractFramework/flux.2-klein-4b-4bit --provider mlx-gen so macOS uses the exact AbstractFramework MLX-Gen q4 prepared folder instead of the full repo.",
      "downloads": [
        {
          "key": "flux2-klein-4b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/flux.2-klein-4b-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q4 folder. Default Apple Silicon recommendation."
        },
        {
          "key": "flux2-klein-4b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/flux.2-klein-4b-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 folder. Prefer when quality is paramount."
        },
        {
          "key": "flux2-klein-4b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.2-klein-4B",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "flux2-klein-4b",
          "engine": "diffusers-component",
          "target": "fp8",
          "bits": 8,
          "repo_id": "black-forest-labs/FLUX.2-klein-4b-fp8",
          "source": "official",
          "notes": "Official FP8 side artifact (components only; not a standalone Diffusers pipeline)."
        },
        {
          "key": "flux2-klein-4b",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "leejet/FLUX.2-klein-4B-GGUF",
          "source": "runtime-native-gguf",
          "notes": "Q8_0 GGUF conversion aligned with stable-diffusion.cpp runtime usage."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 4,
              "min": 2
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0,
              "const": 1.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "reference_images": {
              "required": false,
              "description": "Optional additional reference images for MLX-Gen multi-reference edit mode."
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "steps": {
              "required": false,
              "default": 4,
              "min": 2
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0,
              "const": 1.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.2-klein-base-4B": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "FLUX 2 klein base (4B, open) (Diffusers: Flux2KleinPipeline). Official edit-capable base model; use a modern released Diffusers build. Plain text negative_prompt is not exposed by the pipeline.",
      "downloads": [
        {
          "key": "flux2-klein-base-4b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/flux.2-klein-base-4b-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q4 folder. Default Apple Silicon recommendation."
        },
        {
          "key": "flux2-klein-base-4b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/flux.2-klein-base-4b-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 folder. Prefer when quality is paramount."
        },
        {
          "key": "flux2-klein-base-4b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.2-klein-base-4B",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "flux2-klein-base-4b",
          "engine": "diffusers-component",
          "target": "fp8",
          "bits": 8,
          "repo_id": "black-forest-labs/FLUX.2-klein-base-4b-fp8",
          "source": "official",
          "notes": "Official FP8 side artifact (components only; not a standalone Diffusers pipeline)."
        },
        {
          "key": "flux2-klein-base-4b",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "leejet/FLUX.2-klein-base-4B-GGUF",
          "source": "runtime-native-gguf",
          "notes": "Q8_0 GGUF conversion aligned with stable-diffusion.cpp runtime usage."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "reference_images": {
              "required": false,
              "description": "Optional additional reference images for MLX-Gen multi-reference edit mode."
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.2-klein-9B": {
      "provider": "huggingface",
      "license": "flux-non-commercial-license",
      "notes": "FLUX 2 klein (9B, gated; non-commercial) (Diffusers: Flux2KleinPipeline). Official gated 9B model; use a modern released Diffusers build. For Apple Silicon local generation, prefer abstractvision download AbstractFramework/flux.2-klein-9b-4bit --provider mlx-gen so macOS uses the exact AbstractFramework MLX-Gen q4 prepared folder instead of the full repo.",
      "downloads": [
        {
          "key": "flux2-klein-9b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/flux.2-klein-9b-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q4 folder. Default Apple Silicon recommendation."
        },
        {
          "key": "flux2-klein-9b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/flux.2-klein-9b-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 folder. Prefer when quality is paramount."
        },
        {
          "key": "flux2-klein-9b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.2-klein-9B",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires HF token)."
        },
        {
          "key": "flux2-klein-9b",
          "engine": "diffusers-component",
          "target": "fp8",
          "bits": 8,
          "repo_id": "black-forest-labs/FLUX.2-klein-9b-fp8",
          "source": "official",
          "notes": "Official FP8 side artifact (components only; not a standalone Diffusers pipeline)."
        },
        {
          "key": "flux2-klein-9b",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "leejet/FLUX.2-klein-9B-GGUF",
          "source": "runtime-native-gguf",
          "notes": "Q8_0 GGUF conversion aligned with stable-diffusion.cpp runtime usage."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 4,
              "min": 2
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0,
              "const": 1.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "reference_images": {
              "required": false,
              "description": "Optional additional reference images for MLX-Gen multi-reference edit mode."
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "steps": {
              "required": false,
              "default": 4,
              "min": 2
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0,
              "const": 1.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "black-forest-labs/FLUX.2-klein-base-9B": {
      "provider": "huggingface",
      "license": "flux-non-commercial-license",
      "notes": "FLUX 2 klein base (9B, gated; non-commercial) (Diffusers: Flux2KleinPipeline). Official higher-capacity edit-capable base model; use a modern released Diffusers build. Plain text negative_prompt is not exposed by the pipeline.",
      "downloads": [
        {
          "key": "flux2-klein-base-9b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/flux.2-klein-base-9b-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q4 folder. Default Apple Silicon recommendation."
        },
        {
          "key": "flux2-klein-base-9b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/flux.2-klein-base-9b-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 folder. Prefer when quality is paramount."
        },
        {
          "key": "flux2-klein-base-9b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.2-klein-base-9B",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "flux2-klein-base-9b",
          "engine": "diffusers-component",
          "target": "fp8",
          "bits": 8,
          "repo_id": "black-forest-labs/FLUX.2-klein-base-9b-fp8",
          "source": "official",
          "notes": "Official FP8 side artifact (components only; not a standalone Diffusers pipeline)."
        },
        {
          "key": "flux2-klein-base-9b",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "leejet/FLUX.2-klein-base-9B-GGUF",
          "source": "curated-community-gguf",
          "notes": "Curated GGUF quantizations built for stable-diffusion.cpp runtimes (prefer Q8_0 for quality)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "reference_images": {
              "required": false,
              "description": "Optional additional reference images for MLX-Gen multi-reference edit mode."
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "genmo/mochi-1-preview": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Open text-to-video model (Diffusers: MochiPipeline). Upstream Diffusers usage currently points to diffusers from source; AbstractVision catalogs the download, but does not ship a runtime backend yet.",
      "downloads": [
        {
          "key": "mochi-1-preview",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "genmo/mochi-1-preview",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_video": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "fps": {
              "required": false,
              "default": 30
            },
            "num_frames": {
              "required": false,
              "default": 84
            },
            "steps": {
              "required": false,
              "default": 64
            },
            "guidance_scale": {
              "required": false,
              "default": 4.5
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "Lightricks/LTX-2": {
      "provider": "huggingface",
      "license": "ltx-2-community-license-agreement",
      "notes": "Audio-video foundation model (Diffusers: LTX2Pipeline). Supports text-to-video and image-to-video; width and height must be divisible by 32, and frame counts follow the upstream 8n+1 constraint. AbstractVision catalogs the download, but does not ship a runtime backend yet.",
      "downloads": [
        {
          "key": "ltx-2",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Lightricks/LTX-2",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_video": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": true,
              "multiple_of": 32
            },
            "height": {
              "required": true,
              "multiple_of": 32
            },
            "fps": {
              "required": false,
              "default": 24
            },
            "num_frames": {
              "required": false,
              "default": 121
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        },
        "image_to_video": {
          "inputs": [
            "image",
            "text_optional"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "image": {
              "required": true
            },
            "prompt": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": true,
              "multiple_of": 32
            },
            "height": {
              "required": true,
              "multiple_of": 32
            },
            "fps": {
              "required": false,
              "default": 24
            },
            "num_frames": {
              "required": false,
              "default": 121
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "playgroundai/playground-v2-1024px-aesthetic": {
      "provider": "huggingface",
      "license": "playground-v2-community",
      "notes": "Playground v2 (Diffusers). Official 1024px aesthetic SDXL-family model; upstream recommends guidance_scale around 3.0.",
      "downloads": [
        {
          "key": "playground-v2",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "playgroundai/playground-v2-1024px-aesthetic",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false,
              "default": 3.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "playgroundai/playground-v2.5-1024px-aesthetic": {
      "provider": "huggingface",
      "license": "playground-v2dot5-community",
      "notes": "Playground v2.5 (Diffusers). Official 1024px SDXL-family aesthetic model; upstream recommends guidance_scale around 3.0 with the default EDM DPM++ scheduler.",
      "downloads": [
        {
          "key": "playground-v2.5",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "playgroundai/playground-v2.5-1024px-aesthetic",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Qwen/Qwen-Image": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Older Qwen Image release (Diffusers: QwenImagePipeline).",
      "downloads": [
        {
          "key": "qwen-image",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/qwen-image-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared legacy Qwen Image folder; prefer Qwen/Qwen-Image-2512 for new runs."
        },
        {
          "key": "qwen-image",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/qwen-image-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared legacy q8 Qwen Image folder; prefer Qwen/Qwen-Image-2512 for new runs."
        },
        {
          "key": "qwen-image",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Qwen/Qwen-Image",
          "source": "official",
          "notes": "Older Diffusers snapshot; prefer Qwen/Qwen-Image-2512 when possible."
        },
        {
          "key": "qwen-image",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "unsloth/Qwen-Image-GGUF",
          "source": "curated-community-gguf",
          "notes": "Community GGUF bundle for stable-diffusion.cpp; requires a separate VAE safetensors file and a Qwen2.5-VL text encoder (safetensors or GGUF) at runtime."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Qwen/Qwen-Image-2512": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Primary text-to-image model (Diffusers: QwenImagePipeline).",
      "downloads": [
        {
          "key": "qwen-image",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/qwen-image-2512-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared Qwen folder. Qwen prepared folders may mix q4/q8 components; default Apple Silicon recommendation."
        },
        {
          "key": "qwen-image",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/qwen-image-2512-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 Qwen Image folder. Prefer when quality is paramount."
        },
        {
          "key": "qwen-image",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Qwen/Qwen-Image-2512",
          "source": "official",
          "notes": "Official Diffusers pipeline snapshot (full model weights)."
        },
        {
          "key": "qwen-image",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "unsloth/Qwen-Image-2512-GGUF",
          "source": "curated-community-gguf",
          "notes": "Qwen Image GGUF bundle for stable-diffusion.cpp; requires a separate VAE safetensors file and a Qwen2.5-VL text encoder (safetensors or GGUF) at runtime."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Qwen/Qwen-Image-Edit": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Undated legacy Qwen Image Edit release (Diffusers: QwenImageEditPipeline).",
      "downloads": [
        {
          "key": "qwen-image-edit",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/qwen-image-edit-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared legacy Qwen Image Edit folder; prefer Qwen/Qwen-Image-Edit-2511 for new runs."
        },
        {
          "key": "qwen-image-edit",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/qwen-image-edit-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared legacy q8 Qwen Image Edit folder; prefer Qwen/Qwen-Image-Edit-2511 for new runs."
        },
        {
          "key": "qwen-image-edit",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Qwen/Qwen-Image-Edit",
          "source": "official",
          "notes": "Older Diffusers snapshot; prefer the newer dated Qwen Image Edit releases when possible."
        },
        {
          "key": "qwen-image-edit",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "unsloth/Qwen-Image-Edit-GGUF",
          "source": "curated-community-gguf",
          "notes": "Community GGUF bundle for stable-diffusion.cpp; requires a separate VAE safetensors file and a Qwen2.5-VL text encoder (safetensors or GGUF) at runtime."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "reference_images": {
              "required": false,
              "description": "Optional additional reference images for MLX-Gen multi-reference edit mode."
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Qwen/Qwen-Image-Edit-2509": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Qwen Image Edit 2509 (Diffusers: QwenImageEditPlusPipeline). Adds official multi-image editing support; upstream notes best quality with 1-3 input images.",
      "downloads": [
        {
          "key": "qwen-image-edit-2509",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/qwen-image-edit-2509-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared Qwen Image Edit 2509 folder for image-to-image/edit."
        },
        {
          "key": "qwen-image-edit-2509",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/qwen-image-edit-2509-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 Qwen Image Edit 2509 folder. Prefer when quality is paramount."
        },
        {
          "key": "qwen-image-edit-2509",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Qwen/Qwen-Image-Edit-2509",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "qwen-image-edit-2509",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "unsloth/Qwen-Image-Edit-2509-GGUF",
          "source": "curated-community-gguf",
          "notes": "Community GGUF bundle for stable-diffusion.cpp; requires a separate VAE safetensors file and a Qwen2.5-VL text encoder (safetensors or GGUF) at runtime."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "reference_images": {
              "required": false,
              "description": "Optional additional reference images for MLX-Gen multi-reference edit mode."
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Qwen/Qwen-Image-Edit-2511": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Dated 2511 Qwen Image Edit release (image-to-image). Upstream examples still default to 40 steps and guidance_scale=1.0; AbstractVision defaults local image-edit requests to 15 steps unless a lower model-specific default is defined.",
      "downloads": [
        {
          "key": "qwen-image-edit-2511",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/qwen-image-edit-2511-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared Qwen Image Edit 2511 folder for image-to-image/edit."
        },
        {
          "key": "qwen-image-edit-2511",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/qwen-image-edit-2511-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 Qwen Image Edit 2511 folder. Prefer when quality is paramount."
        },
        {
          "key": "qwen-image-edit-2511",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Qwen/Qwen-Image-Edit-2511",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "qwen-image-edit-2511-gguf",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "unsloth/Qwen-Image-Edit-2511-GGUF",
          "source": "curated-community-gguf",
          "notes": "Qwen Image Edit GGUF bundle for stable-diffusion.cpp; requires a separate VAE safetensors file and a Qwen2.5-VL 7B text encoder (safetensors recommended; fp8_scaled is not supported)."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "reference_images": {
              "required": false,
              "description": "Optional additional reference images for MLX-Gen multi-reference edit mode."
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "timbrooks/instruct-pix2pix": {
      "provider": "huggingface",
      "license": "mit",
      "notes": "InstructPix2Pix (Diffusers: StableDiffusionInstructPix2PixPipeline). Image editing via instructions.",
      "downloads": [
        {
          "key": "instruct-pix2pix",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "timbrooks/instruct-pix2pix",
          "source": "community",
          "notes": "Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "diffusers/sdxl-instructpix2pix-768": {
      "provider": "huggingface",
      "license": "openrail++",
      "notes": "SDXL InstructPix2Pix checkpoint (Diffusers: StableDiffusionXLInstructPix2PixPipeline). Instruction-based editing on top of an SDXL-family model.",
      "downloads": [
        {
          "key": "sdxl-instruct-pix2pix",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "diffusers/sdxl-instructpix2pix-768",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "CompVis/stable-diffusion-v1-4": {
      "provider": "huggingface",
      "license": "creativeml-openrail-m",
      "notes": "Stable Diffusion v1.4 (Diffusers: StableDiffusionPipeline / StableDiffusionImg2ImgPipeline).",
      "downloads": [
        {
          "key": "sd1.4",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "CompVis/stable-diffusion-v1-4",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "runwayml/stable-diffusion-v1-5": {
      "provider": "huggingface",
      "license": "creativeml-openrail-m",
      "notes": "Stable Diffusion 1.5 (Diffusers: StableDiffusionPipeline / StableDiffusionImg2ImgPipeline / StableDiffusionInpaintPipeline). Prefer 8-bit local artifacts where a compatible backend provides them; AbstractVision does not currently curate a Stable Diffusion MLX 8-bit preset, so full-model downloads should remain explicit.",
      "downloads": [
        {
          "key": "stable-diffusion",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stable-diffusion-v1-5/stable-diffusion-v1-5",
          "source": "official",
          "notes": "Canonical Diffusers snapshot on Hugging Face (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "runwayml/stable-diffusion-inpainting": {
      "provider": "huggingface",
      "license": "creativeml-openrail-m",
      "notes": "Stable Diffusion v1.5 Inpainting (Diffusers: StableDiffusionInpaintPipeline).",
      "downloads": [
        {
          "key": "sd1.5-inpaint",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stable-diffusion-v1-5/stable-diffusion-inpainting",
          "source": "official",
          "notes": "Canonical Diffusers inpainting snapshot on Hugging Face (full model weights)."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/sd-turbo": {
      "provider": "huggingface",
      "license": "stabilityai-ai-community",
      "notes": "Stable Diffusion Turbo (Diffusers). Fast distilled checkpoint that supports both text-to-image and image-to-image. Upstream recommends single-step generation with guidance_scale=0.0 and 512x512 images.",
      "downloads": [
        {
          "key": "sd-turbo",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/sd-turbo",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "sd-turbo",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "Green-Sky/SD-Turbo-GGUF",
          "source": "curated-community-gguf",
          "notes": "Curated GGUF conversion for stable-diffusion.cpp. The repo tracks stabilityai/sd-turbo and documents Q8_0 plus sd.cpp-oriented settings."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 1
            },
            "guidance_scale": {
              "required": false,
              "default": 0.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/sdxl-turbo": {
      "provider": "huggingface",
      "license": "sai-nc-community",
      "notes": "SDXL Turbo (Diffusers). Optimized for very low step counts and supports both text-to-image and image-to-image. Upstream recommends single-step generation with guidance_scale=0.0 and 512x512 images.",
      "downloads": [
        {
          "key": "sdxl-turbo",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/sdxl-turbo",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "sdxl-turbo",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "OlegSkutte/sdxl-turbo-GGUF",
          "source": "curated-community-gguf",
          "notes": "Curated GGUF conversion for stable-diffusion.cpp. The repo tracks stabilityai/sdxl-turbo and documents 512x512, 1-step, and TAESDXL-oriented settings."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 1
            },
            "guidance_scale": {
              "required": false,
              "default": 0.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-cascade": {
      "provider": "huggingface",
      "license": "stable-cascade-nc-community",
      "notes": "Stable Cascade (Diffusers: StableCascadeCombinedPipeline). Official Stability AI release that combines prior and decoder stages in one Diffusers repo. Upstream examples use separate prior and decoder guidance/step settings, so treat the combined pipeline defaults as model-specific rather than SDXL-style.",
      "downloads": [
        {
          "key": "stable-cascade",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-cascade",
          "source": "official",
          "notes": "Official Diffusers snapshot (full combined pipeline)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-diffusion-x4-upscaler": {
      "provider": "huggingface",
      "license": "openrail++",
      "notes": "Stable Diffusion x4 Upscaler (Diffusers: StableDiffusionUpscalePipeline). Official text-guided 4x upscaler; cataloged as image-to-image because it requires a low-resolution input image.",
      "downloads": [
        {
          "key": "sd-x4-upscaler",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-diffusion-x4-upscaler",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "noise_level": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-diffusion-3-medium-diffusers": {
      "provider": "huggingface",
      "license": "stabilityai-ai-community",
      "notes": "Stable Diffusion 3 Medium (gated on HF; Stability AI Community License) (Diffusers: StableDiffusion3Pipeline).",
      "downloads": [
        {
          "key": "sd3-medium",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-diffusion-3-medium-diffusers",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires accepting terms + HF token)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-diffusion-3.5-large": {
      "provider": "huggingface",
      "license": "stabilityai-ai-community",
      "notes": "Stable Diffusion 3.5 Large (gated on HF; Stability AI Community License) (Diffusers: StableDiffusion3Pipeline).",
      "downloads": [
        {
          "key": "sd3.5-large",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-diffusion-3.5-large",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires accepting terms + HF token)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-diffusion-3.5-large-turbo": {
      "provider": "huggingface",
      "license": "stabilityai-ai-community",
      "notes": "Stable Diffusion 3.5 Large Turbo (gated on HF; Stability AI Community License) (Diffusers: StableDiffusion3Pipeline). Optimized for low step counts.",
      "downloads": [
        {
          "key": "sd3.5-large-turbo",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-diffusion-3.5-large-turbo",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires accepting terms + HF token)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-diffusion-3.5-medium": {
      "provider": "huggingface",
      "license": "stabilityai-ai-community",
      "notes": "Stable Diffusion 3.5 Medium (gated on HF; Stability AI Community License) (Diffusers: StableDiffusion3Pipeline).",
      "downloads": [
        {
          "key": "sd3.5-medium",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-diffusion-3.5-medium",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires accepting terms + HF token)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-diffusion-xl-base-1.0": {
      "provider": "huggingface",
      "license": "openrail++",
      "notes": "Stable Diffusion XL base 1.0 (Diffusers: StableDiffusionXLPipeline).",
      "downloads": [
        {
          "key": "sdxl-base",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-diffusion-xl-base-1.0",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "stabilityai/stable-diffusion-xl-refiner-1.0": {
      "provider": "huggingface",
      "license": "openrail++",
      "notes": "Stable Diffusion XL refiner 1.0 (Diffusers). Typically used as an image-to-image refinement stage.",
      "downloads": [
        {
          "key": "sdxl-refiner",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-diffusion-xl-refiner-1.0",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "diffusers/stable-diffusion-xl-1.0-inpainting-0.1": {
      "provider": "huggingface",
      "license": "openrail++",
      "notes": "Stable Diffusion XL 1.0 Inpainting (Diffusers: StableDiffusionXLInpaintPipeline).",
      "downloads": [
        {
          "key": "sdxl-inpaint",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "diffusers/stable-diffusion-xl-1.0-inpainting-0.1",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "tencent/HunyuanImage-3.0": {
      "provider": "huggingface",
      "license": "tencent-hunyuan-community",
      "notes": "HunyuanImage 3.0 (Transformers/custom-code runtime). Official text-to-image checkpoint; upstream recommends downloading to a renamed local directory such as ./HunyuanImage-3 because dots in the HF repo name can break direct loading. Runtime support is not shipped by AbstractVision yet.",
      "downloads": [
        {
          "key": "hunyuanimage-3.0",
          "engine": "transformers",
          "target": "hf-snapshot",
          "bits": 16,
          "repo_id": "tencent/HunyuanImage-3.0",
          "source": "official",
          "notes": "Full Hugging Face snapshot (Transformers-based). Requires a dedicated backend (not shipped)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "tencent/HunyuanImage-3.0-Instruct": {
      "provider": "huggingface",
      "license": "other",
      "notes": "HunyuanImage 3.0 Instruct adds prompt self-rewrite, image editing, and multi-image fusion. Upstream recommends downloading to a renamed local directory instead of loading directly from the dotted HF repo name. Runtime support is not shipped by AbstractVision yet.",
      "downloads": [
        {
          "key": "hunyuanimage-3.0-instruct",
          "engine": "transformers",
          "target": "hf-snapshot",
          "bits": 16,
          "repo_id": "tencent/HunyuanImage-3.0-Instruct",
          "source": "official",
          "notes": "Full Hugging Face snapshot (Transformers/custom-code runtime; supports text-to-image and text-image-to-image)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "tencent/HunyuanImage-3.0-Instruct-Distil": {
      "provider": "huggingface",
      "license": "other",
      "notes": "Distilled HunyuanImage 3.0 Instruct checkpoint for fewer sampling steps. Upstream recommends downloading to a renamed local directory instead of loading directly from the dotted HF repo name; 8-step sampling is recommended upstream. Runtime support is not shipped by AbstractVision yet.",
      "downloads": [
        {
          "key": "hunyuanimage-3.0-instruct-distil",
          "engine": "transformers",
          "target": "hf-snapshot",
          "bits": 16,
          "repo_id": "tencent/HunyuanImage-3.0-Instruct-Distil",
          "source": "official",
          "notes": "Full Hugging Face snapshot (distilled Instruct checkpoint; 8-step sampling recommended upstream)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "tencent/HunyuanVideo-1.5": {
      "provider": "huggingface",
      "license": "tencent-hunyuan-community",
      "notes": "Unified HunyuanVideo-1.5 family covering both text-to-video and image-to-video. Official Diffusers checkpoints are published under hunyuanvideo-community/* and are useful for catalog/download, but AbstractVision does not yet execute local Diffusers video generation.",
      "downloads": [
        {
          "key": "hunyuanvideo-1.5-720p-t2v",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p_t2v",
          "source": "official",
          "notes": "Official 720p text-to-video Diffusers snapshot."
        },
        {
          "key": "hunyuanvideo-1.5-480p-t2v",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_t2v",
          "source": "official",
          "notes": "Official 480p text-to-video Diffusers snapshot."
        },
        {
          "key": "hunyuanvideo-1.5-480p-t2v-distilled",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_t2v_distilled",
          "source": "official",
          "notes": "Official distilled 480p text-to-video Diffusers snapshot."
        },
        {
          "key": "hunyuanvideo-1.5-480p-i2v",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_i2v",
          "source": "official",
          "notes": "Official 480p image-to-video Diffusers snapshot."
        },
        {
          "key": "hunyuanvideo-1.5-720p-i2v",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p_i2v",
          "source": "official",
          "notes": "Official 720p image-to-video Diffusers snapshot."
        },
        {
          "key": "hunyuanvideo-1.5-480p-i2v-distilled",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_i2v_distilled",
          "source": "official",
          "notes": "Official distilled 480p image-to-video Diffusers snapshot."
        },
        {
          "key": "hunyuanvideo-1.5-720p-i2v-distilled",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p_i2v_distilled",
          "source": "official",
          "notes": "Official distilled 720p image-to-video Diffusers snapshot."
        },
        {
          "key": "hunyuanvideo-1.5-480p-i2v-step-distilled",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_i2v_step_distilled",
          "source": "official",
          "notes": "Official step-distilled 480p image-to-video Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_video": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "fps": {
              "required": false
            },
            "num_frames": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        },
        "image_to_video": {
          "inputs": [
            "image",
            "text_optional"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "image": {
              "required": true
            },
            "prompt": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "fps": {
              "required": false
            },
            "num_frames": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "Tongyi-MAI/Z-Image": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Full-capacity Z-Image Diffusers checkpoint. Compared with Z-Image-Turbo, it supports CFG, negative prompting, and longer sampling schedules for higher controllability.",
      "downloads": [
        {
          "key": "z-image",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/z-image-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q4 folder. Prefer this unless quality is paramount."
        },
        {
          "key": "z-image",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/z-image-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 folder. Prefer when quality is paramount."
        },
        {
          "key": "z-image",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Tongyi-MAI/Z-Image",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "z-image",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "unsloth/Z-Image-GGUF",
          "source": "curated-community-gguf",
          "notes": "Community GGUF quantizations for stable-diffusion.cpp runtimes; prefer Q8_0 for quality."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Tongyi-MAI/Z-Image-Turbo": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Turbo text-to-image option. Official examples use num_inference_steps=9 (8 effective DiT forwards) with guidance_scale=0.0; plain-text negative prompting is not exposed. For Apple Silicon local generation, prefer abstractvision download z-image-turbo --provider mlx-gen so macOS uses the AbstractFramework MLX-Gen q4 prepared folder instead of the full repo.",
      "downloads": [
        {
          "key": "z-image-turbo",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/z-image-turbo-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q4 folder. Default Apple Silicon recommendation."
        },
        {
          "key": "z-image-turbo",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/z-image-turbo-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared q8 folder. Prefer when quality is paramount."
        },
        {
          "key": "z-image-turbo",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Tongyi-MAI/Z-Image-Turbo",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        },
        {
          "key": "z-image-turbo",
          "engine": "stable-diffusion.cpp",
          "target": "gguf",
          "bits": 8,
          "repo_id": "unsloth/Z-Image-Turbo-GGUF",
          "source": "curated-community-gguf",
          "notes": "GGUF quantizations for stable-diffusion.cpp runtimes (prefer Q8_0 for quality)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 9
            },
            "guidance_scale": {
              "required": false,
              "default": 0.0,
              "const": 0.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Wan-AI/Wan2.2-T2V-A14B": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Official Wan 2.2 A14B text-to-video Diffusers checkpoint. AbstractVision runs it locally through the MLX-Gen Wan runtime on Apple Silicon; the full Diffusers snapshot remains cataloged as a fallback artifact.",
      "downloads": [
        {
          "key": "wan2.2-t2v-a14b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/wan2.2-t2v-a14b-diffusers-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen mixed q8/BF16 prepared folder for Wan 2.2 A14B text-to-video."
        },
        {
          "key": "wan2.2-t2v-a14b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "AbstractFramework/wan2.2-t2v-a14b-diffusers-bf16",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen BF16 prepared folder for Wan 2.2 A14B text-to-video."
        },
        {
          "key": "wan2.2-t2v-a14b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "Wan-AI/Wan2.2-T2V-A14B-Diffusers",
          "source": "official",
          "notes": "Official Wan 2.2 A14B text-to-video snapshot consumed by MLX-Gen 0.18.8+. This is not a prepared q4/q8 folder."
        },
        {
          "key": "wan2.2-t2v-a14b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Wan-AI/Wan2.2-T2V-A14B-Diffusers",
          "source": "official",
          "notes": "Official Diffusers snapshot for the Wan 2.2 text-to-video checkpoint."
        }
      ],
      "tasks": {
        "text_to_video": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 720
            },
            "fps": {
              "required": false,
              "default": 16
            },
            "num_frames": {
              "required": false,
              "default": 81
            },
            "steps": {
              "required": false,
              "default": 40
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "guidance_2": {
              "required": false,
              "default": 3.0
            },
            "flow_shift": {
              "required": false,
              "default": 3.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.8"
          }
        }
      }
    },
    "Wan-AI/Wan2.2-I2V-A14B": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Official Wan 2.2 A14B image-to-video Diffusers checkpoint. AbstractVision runs it locally through the MLX-Gen Wan runtime on Apple Silicon; the full Diffusers snapshot remains cataloged as a fallback artifact.",
      "downloads": [
        {
          "key": "wan2.2-i2v-a14b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/wan2.2-i2v-a14b-diffusers-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen mixed q8/BF16 prepared folder for Wan 2.2 A14B image-to-video."
        },
        {
          "key": "wan2.2-i2v-a14b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "AbstractFramework/wan2.2-i2v-a14b-diffusers-bf16",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen BF16 prepared folder for Wan 2.2 A14B image-to-video."
        },
        {
          "key": "wan2.2-i2v-a14b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "Wan-AI/Wan2.2-I2V-A14B-Diffusers",
          "source": "official",
          "notes": "Official Wan 2.2 A14B image-to-video snapshot consumed by MLX-Gen 0.18.8+. This is not a prepared q4/q8 folder."
        },
        {
          "key": "wan2.2-i2v-a14b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Wan-AI/Wan2.2-I2V-A14B-Diffusers",
          "source": "official",
          "notes": "Official Diffusers snapshot for the Wan 2.2 image-to-video checkpoint."
        }
      ],
      "tasks": {
        "image_to_video": {
          "inputs": [
            "image",
            "text_optional"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "image": {
              "required": true
            },
            "prompt": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 720
            },
            "fps": {
              "required": false,
              "default": 16
            },
            "num_frames": {
              "required": false,
              "default": 81
            },
            "steps": {
              "required": false,
              "default": 40
            },
            "guidance_scale": {
              "required": false,
              "default": 3.5
            },
            "guidance_2": {
              "required": false,
              "default": 3.5
            },
            "flow_shift": {
              "required": false,
              "default": 3.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.8"
          }
        }
      }
    },
    "zai-org/GLM-Image": {
      "provider": "huggingface",
      "license": "mit",
      "notes": "General image model family (generation + edit in some pipelines). Upstream examples currently install Diffusers and Transformers from source; both text-to-image and image-to-image require explicit target dimensions. AbstractVision normalizes those dimensions for local Diffusers execution when the caller omits them.",
      "downloads": [
        {
          "key": "glm-image",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "zai-org/GLM-Image",
          "source": "official",
          "notes": "Official Diffusers snapshot (full model weights)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": true,
              "multiple_of": 32
            },
            "height": {
              "required": true,
              "multiple_of": 32
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 1.5
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "mask": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": true,
              "multiple_of": 32
            },
            "height": {
              "required": true,
              "multiple_of": 32
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 1.5
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "HiDream-ai/HiDream-I1-Full": {
      "provider": "huggingface",
      "license": "mit",
      "notes": "Official HiDream-I1 Full text-to-image checkpoint (Diffusers: HiDreamImagePipeline). Upstream examples use BF16 and standard DiffusionPipeline loading; local inference also pulls companion text encoders from google/t5-v1_1-xxl and meta-llama/Meta-Llama-3.1-8B-Instruct.",
      "downloads": [
        {
          "key": "hidream-i1-full",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "HiDream-ai/HiDream-I1-Full",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Kwai-Kolors/Kolors-diffusers": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Kolors (Diffusers: KolorsPipeline). Official bilingual Chinese/English text-to-image model from Kuaishou. Upstream recommends the default Euler scheduler with guidance_scale=5.0 and 50 steps; image-to-image is also supported through the KolorsImg2ImgPipeline.",
      "downloads": [
        {
          "key": "kolors",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Kwai-Kolors/Kolors-diffusers",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 5.0
            },
            "flow_shift": {
              "required": false,
              "default": 5.0
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 15
            },
            "guidance_scale": {
              "required": false,
              "default": 5.0
            },
            "flow_shift": {
              "required": false,
              "default": 5.0
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "PixArt-alpha/PixArt-Sigma-XL-2-1024-MS": {
      "provider": "huggingface",
      "license": "openrail++",
      "notes": "PixArt-Sigma 1024px checkpoint (Diffusers: PixArtSigmaPipeline). Official Diffusers release for 1024px text-to-image generation.",
      "downloads": [
        {
          "key": "pixart-sigma-xl-1024",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "PixArt-alpha/PixArt-Sigma-XL-2-1024-MS",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "Alpha-VLLM/Lumina-Image-2.0": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Lumina-Image 2.0 (Diffusers: Lumina2Pipeline). Official Diffusers release for the 2B flow-based diffusion transformer; upstream examples use 1024x1024, 50 steps, guidance_scale=4.0, cfg_trunc_ratio=0.25, and cfg_normalization=True.",
      "downloads": [
        {
          "key": "lumina-image-2.0",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Alpha-VLLM/Lumina-Image-2.0",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "cfg_trunc_ratio": {
              "required": false,
              "default": 0.25
            },
            "cfg_normalization": {
              "required": false,
              "default": true
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "HiDream-ai/HiDream-O1-Image": {
      "provider": "huggingface",
      "license": "mit",
      "notes": "Unified image foundation model (Transformers/custom runtime). Supports text-to-image, instruction editing, and subject-driven personalization up to 2048x2048, but upstream currently relies on project-specific code and recommends flash-attn. AbstractVision catalogs the snapshot, but does not yet ship a local backend for it.",
      "downloads": [
        {
          "key": "hidream-o1-image",
          "engine": "transformers",
          "target": "hf-snapshot",
          "bits": 16,
          "repo_id": "HiDream-ai/HiDream-O1-Image",
          "source": "official",
          "notes": "Official Hugging Face snapshot for the custom Transformers/runtime stack."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "width": {
              "required": false,
              "default": 1280
            },
            "height": {
              "required": false,
              "default": 704
            },
            "steps": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "Shitao/OmniGen-v1-diffusers": {
      "provider": "huggingface",
      "license": "mit",
      "notes": "Official OmniGen Diffusers checkpoint (OmniGenPipeline). The model supports text-to-image and image-conditioned generation, but image-conditioned prompts use `<img><|image_n|></img>` placeholders and may pass multiple input images, so AbstractVision currently catalogs the download without exposing a local runtime path.",
      "downloads": [
        {
          "key": "omnigen-v1",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Shitao/OmniGen-v1-diffusers",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "black-forest-labs/FLUX.2-klein-9b-kv": {
      "provider": "huggingface",
      "license": "flux-non-commercial-license",
      "notes": "FLUX.2 klein 9B-KV (Diffusers: Flux2KleinKVPipeline). Official gated KV-cached variant for faster multi-reference editing; also supports text-to-image. Official FP8 side artifact available.",
      "downloads": [
        {
          "key": "flux2-klein-9b-kv",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "black-forest-labs/FLUX.2-klein-9b-kv",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires HF token)."
        },
        {
          "key": "flux2-klein-9b-kv",
          "engine": "diffusers-component",
          "target": "fp8",
          "bits": 8,
          "repo_id": "black-forest-labs/FLUX.2-klein-9b-kv-fp8",
          "source": "official",
          "notes": "Official FP8 side artifact (components only; not a standalone Diffusers pipeline)."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "steps": {
              "required": false,
              "default": 4,
              "const": 4
            },
            "guidance_scale": {
              "required": false,
              "supported": false
            },
            "seed": {
              "required": false
            }
          }
        },
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false,
              "supported": false
            },
            "steps": {
              "required": false,
              "default": 4,
              "const": 4
            },
            "guidance_scale": {
              "required": false,
              "supported": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "ByteDance-Seed/SeedVR2-3B": {
      "provider": "mlx-gen",
      "license": "apache-2.0",
      "notes": "Official SeedVR2 3B single-image super-resolution base model. AbstractVision defaults to the canonical AbstractFramework 8-bit MLX-Gen package for local Apple Silicon runs; the official base remains available when callers explicitly want source weights/runtime quantization.",
      "downloads": [
        {
          "key": "seedvr2-3b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/seedvr2-3b-8bit",
          "source": "abstractframework-mlx-gen",
          "aliases": [
            "seedvr2",
            "seedvr2-3b",
            "seedvr2-3b-8bit",
            "AbstractFramework/seedvr2-3b-8bit"
          ],
          "notes": "Canonical prepared 8-bit package and default recommendation."
        },
        {
          "key": "seedvr2-3b-4bit",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/seedvr2-3b-4bit",
          "source": "abstractframework-mlx-gen",
          "aliases": [
            "seedvr2-3b-4bit",
            "AbstractFramework/seedvr2-3b-4bit"
          ],
          "notes": "Canonical prepared 4-bit package for lower-memory runs."
        },
        {
          "key": "seedvr2-3b-source",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "ByteDance-Seed/SeedVR2-3B",
          "source": "official",
          "aliases": [
            "ByteDance-Seed/SeedVR2-3B",
            "seedvr2-3b-source"
          ],
          "notes": "Official base model; use runtime quantize when preparing local artifacts."
        }
      ],
      "tasks": {
        "image_upscale": {
          "inputs": [
            "image"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "image": {
              "required": true
            },
            "scale": {
              "required": false,
              "default": 2,
              "description": "Friendly scale factor converted to SeedVR2 resolution, for example 2 or 1.5."
            },
            "resolution": {
              "required": false,
              "default": "2x",
              "description": "SeedVR2 target shortest edge in pixels or a scale factor such as 2x."
            },
            "softness": {
              "required": false,
              "default": 0.25,
              "minimum": 0.0,
              "maximum": 1.0
            },
            "seed": {
              "required": false
            },
            "quantize": {
              "required": false,
              "default": null,
              "enum": [
                3,
                4,
                5,
                6,
                8,
                null
              ]
            },
            "vae_tiling": {
              "required": false,
              "default": null,
              "description": "Force tiled VAE encode/decode when true, explicitly disable it when false, or leave unset to use the MLX-Gen SeedVR2 runtime policy."
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.13"
          }
        }
      }
    },
    "ByteDance-Seed/SeedVR2-7B": {
      "provider": "mlx-gen",
      "license": "apache-2.0",
      "notes": "Official SeedVR2 7B single-image super-resolution base model. Use the canonical AbstractFramework 8-bit prepared package by default when memory allows, or the 4-bit package for lower-memory runs.",
      "downloads": [
        {
          "key": "seedvr2-7b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/seedvr2-7b-8bit",
          "source": "abstractframework-mlx-gen",
          "aliases": [
            "seedvr2-7b",
            "seedvr2-7b-8bit",
            "AbstractFramework/seedvr2-7b-8bit"
          ],
          "notes": "Canonical prepared 8-bit package and default recommendation for 7B."
        },
        {
          "key": "seedvr2-7b-4bit",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/seedvr2-7b-4bit",
          "source": "abstractframework-mlx-gen",
          "aliases": [
            "seedvr2-7b-4bit",
            "AbstractFramework/seedvr2-7b-4bit"
          ],
          "notes": "Canonical prepared 4-bit package for lower-memory 7B runs."
        },
        {
          "key": "seedvr2-7b-source",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "ByteDance-Seed/SeedVR2-7B",
          "source": "official",
          "aliases": [
            "ByteDance-Seed/SeedVR2-7B",
            "seedvr2-7b-source"
          ],
          "notes": "Official base model; use runtime quantize when preparing local artifacts."
        }
      ],
      "tasks": {
        "image_upscale": {
          "inputs": [
            "image"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "image": {
              "required": true
            },
            "scale": {
              "required": false,
              "default": 2,
              "description": "Friendly scale factor converted to SeedVR2 resolution, for example 2 or 1.5."
            },
            "resolution": {
              "required": false,
              "default": "2x",
              "description": "SeedVR2 target shortest edge in pixels or a scale factor such as 2x."
            },
            "softness": {
              "required": false,
              "default": 0.25,
              "minimum": 0.0,
              "maximum": 1.0
            },
            "seed": {
              "required": false
            },
            "quantize": {
              "required": false,
              "default": null,
              "enum": [
                3,
                4,
                5,
                6,
                8,
                null
              ]
            },
            "vae_tiling": {
              "required": false,
              "default": null,
              "description": "Force tiled VAE encode/decode when true, explicitly disable it when false, or leave unset to use the MLX-Gen SeedVR2 runtime policy."
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.13"
          }
        }
      }
    },
    "Wan-AI/Wan2.2-TI2V-5B-Diffusers": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Unified Wan 2.2 TI2V 5B Diffusers checkpoint. Supports both text-to-video and image-to-video at 720p/24fps. AbstractVision runs it locally through the MLX-Gen Wan runtime on Apple Silicon; the full Diffusers snapshot remains cataloged as a fallback artifact.",
      "downloads": [
        {
          "key": "wan2.2-ti2v-5b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/wan2.2-ti2v-5b-diffusers-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared 8-bit folder for the unified Wan 2.2 TI2V 5B checkpoint. Supports both text-to-video and image-to-video."
        },
        {
          "key": "wan2.2-ti2v-5b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "AbstractFramework/wan2.2-ti2v-5b-diffusers-bf16",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared BF16 folder for the unified Wan 2.2 TI2V 5B checkpoint. Supports both text-to-video and image-to-video."
        },
        {
          "key": "wan2.2-ti2v-5b",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "Wan-AI/Wan2.2-TI2V-5B-Diffusers",
          "source": "official",
          "notes": "Official Wan TI2V snapshot consumed by MLX-Gen 0.18.7+ for both text-to-video and image-to-video. This is not a prepared q4/q8 folder."
        },
        {
          "key": "wan2.2-ti2v-5b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "Wan-AI/Wan2.2-TI2V-5B-Diffusers",
          "source": "official",
          "notes": "Official Diffusers snapshot for the unified Wan 2.2 TI2V 5B checkpoint."
        }
      ],
      "tasks": {
        "text_to_video": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "fps": {
              "required": false,
              "default": 24
            },
            "num_frames": {
              "required": false,
              "default": 121
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 5.0
            },
            "flow_shift": {
              "required": false,
              "default": 5.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        },
        "image_to_video": {
          "inputs": [
            "image",
            "text_optional"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "image": {
              "required": true
            },
            "prompt": {
              "required": false
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "fps": {
              "required": false,
              "default": 24
            },
            "num_frames": {
              "required": false,
              "default": 121
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 5.0
            },
            "flow_shift": {
              "required": false,
              "default": 5.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        }
      }
    },
    "stabilityai/stable-video-diffusion-img2vid-xt-1-1": {
      "provider": "huggingface",
      "license": "stable-video-diffusion-1-1-community",
      "notes": "Stable Video Diffusion 1.1 image-to-video checkpoint (Diffusers: StableVideoDiffusionPipeline). Hugging Face gates file access behind contact-sharing. AbstractVision catalogs the download, but does not yet ship a local Diffusers video backend.",
      "downloads": [
        {
          "key": "stable-video-diffusion-1.1",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "stabilityai/stable-video-diffusion-img2vid-xt-1-1",
          "source": "official",
          "notes": "Official Diffusers snapshot (gated on Hugging Face; requires accepted terms)."
        }
      ],
      "tasks": {
        "image_to_video": {
          "inputs": [
            "image"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "image": {
              "required": true
            },
            "width": {
              "required": false
            },
            "height": {
              "required": false
            },
            "fps": {
              "required": false
            },
            "num_frames": {
              "required": false
            },
            "steps": {
              "required": false
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "zai-org/CogVideoX-2b": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Official CogVideoX 2B text-to-video checkpoint (Diffusers: CogVideoXPipeline). First local Apple Silicon text-to-video target. Upstream documents English prompts, 720x480 output, 8 fps, 6-second clips, and FP16 as the recommended precision.",
      "downloads": [
        {
          "key": "cogvideox-2b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "zai-org/CogVideoX-2b",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_video": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "const": 720
            },
            "height": {
              "required": false,
              "const": 480
            },
            "fps": {
              "required": false,
              "default": 8
            },
            "num_frames": {
              "required": false,
              "default": 49,
              "min": 9
            },
            "steps": {
              "required": false,
              "default": 50,
              "min": 1
            },
            "guidance_scale": {
              "required": false,
              "default": 6
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "zai-org/CogVideoX1.5-5B": {
      "provider": "huggingface",
      "license": "other",
      "notes": "Official CogVideoX1.5 5B text-to-video checkpoint (Diffusers: CogVideoXPipeline). Use the canonical zai-org repo id; older examples still show THUDM. Upstream recommends English prompts, 50 steps, 81 frames, 8 fps, and dimensions aligned to multiples of 16.",
      "downloads": [
        {
          "key": "cogvideox1.5-5b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "zai-org/CogVideoX1.5-5B",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_video": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "multiple_of": 16
            },
            "height": {
              "required": false,
              "multiple_of": 16
            },
            "fps": {
              "required": false,
              "default": 8
            },
            "num_frames": {
              "required": false,
              "default": 81
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 6
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "zai-org/CogVideoX1.5-5B-I2V": {
      "provider": "huggingface",
      "license": "other",
      "notes": "Official CogVideoX1.5 5B image-to-video checkpoint (Diffusers: CogVideoXImageToVideoPipeline). Use the canonical zai-org repo id; older examples still show THUDM. Upstream recommends English prompts and dimensions aligned to multiples of 16.",
      "downloads": [
        {
          "key": "cogvideox1.5-5b-i2v",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "zai-org/CogVideoX1.5-5B-I2V",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "image_to_video": {
          "inputs": [
            "image",
            "text_optional"
          ],
          "outputs": [
            "video"
          ],
          "params": {
            "image": {
              "required": true
            },
            "prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "multiple_of": 16
            },
            "height": {
              "required": false,
              "multiple_of": 16
            },
            "fps": {
              "required": false,
              "default": 8
            },
            "num_frames": {
              "required": false,
              "default": 49
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 6
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "not_supported"
          }
        }
      }
    },
    "zai-org/CogView4-6B": {
      "provider": "huggingface",
      "license": "apache-2.0",
      "notes": "Official CogView4 6B text-to-image checkpoint (Diffusers: CogView4Pipeline). Use the canonical zai-org repo id; width and height should stay within the documented 512-2048 range and be divisible by 32. The official card warns against float16 because it can overflow to black images.",
      "downloads": [
        {
          "key": "cogview4-6b",
          "engine": "diffusers",
          "target": "diffusers",
          "bits": 16,
          "repo_id": "zai-org/CogView4-6B",
          "source": "official",
          "notes": "Official Diffusers snapshot."
        }
      ],
      "tasks": {
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "multiple_of": 32,
              "min": 512
            },
            "height": {
              "required": false,
              "multiple_of": 32,
              "min": 512
            },
            "steps": {
              "required": false
            },
            "guidance_scale": {
              "required": false
            },
            "seed": {
              "required": false
            }
          }
        }
      }
    },
    "briaai/FIBO": {
      "provider": "huggingface",
      "license": "bria-ai-open-rail-m",
      "notes": "FIBO text-to-image model. MLX-Gen 0.18.7+ can run the official snapshot locally and can optionally condition on one image through image_strength.",
      "downloads": [
        {
          "key": "fibo",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 4,
          "repo_id": "AbstractFramework/fibo-4bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared 4-bit folder for FIBO."
        },
        {
          "key": "fibo",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 8,
          "repo_id": "AbstractFramework/fibo-8bit",
          "source": "abstractframework-mlx-gen",
          "notes": "AbstractFramework MLX-Gen prepared 8-bit folder for FIBO."
        },
        {
          "key": "fibo",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "briaai/FIBO",
          "source": "official",
          "notes": "Official FIBO snapshot consumed directly by MLX-Gen 0.18.7+. This is not a prepared q4/q8 folder."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            },
            "strength": {
              "required": false,
              "default": 0.4
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        },
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        }
      }
    },
    "briaai/Fibo-lite": {
      "provider": "huggingface",
      "license": "bria-ai-open-rail-m",
      "notes": "FIBO lite distilled image model. MLX-Gen 0.18.7+ can run the official snapshot locally for faster text-to-image and image-conditioned generation.",
      "downloads": [
        {
          "key": "fibo-lite",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "briaai/Fibo-lite",
          "source": "official",
          "notes": "Official FIBO lite snapshot consumed directly by MLX-Gen 0.18.7+. This is not a prepared q4/q8 folder."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 8
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0
            },
            "seed": {
              "required": false
            },
            "strength": {
              "required": false,
              "default": 0.4
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        },
        "text_to_image": {
          "inputs": [
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 8
            },
            "guidance_scale": {
              "required": false,
              "default": 1.0
            },
            "seed": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        }
      }
    },
    "briaai/Fibo-Edit": {
      "provider": "huggingface",
      "license": "bria-ai-open-rail-m",
      "notes": "FIBO Edit image-to-image model. MLX-Gen 0.18.7+ can run the official snapshot locally and accepts an optional mask.",
      "downloads": [
        {
          "key": "fibo-edit",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "briaai/Fibo-Edit",
          "source": "official",
          "notes": "Official FIBO Edit snapshot consumed directly by MLX-Gen 0.18.7+. This is not a prepared q4/q8 folder."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 50
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            },
            "mask": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        }
      }
    },
    "briaai/Fibo-Edit-RMBG": {
      "provider": "huggingface",
      "license": "bria-ai-open-rail-m",
      "notes": "FIBO Edit RMBG image-to-image model. MLX-Gen 0.18.7+ can run the official snapshot locally and accepts an optional mask.",
      "downloads": [
        {
          "key": "fibo-edit-rmbg",
          "engine": "mlx-gen",
          "target": "mlx",
          "bits": 16,
          "repo_id": "briaai/Fibo-Edit-RMBG",
          "source": "official",
          "notes": "Official FIBO Edit RMBG snapshot consumed directly by MLX-Gen 0.18.7+. This is not a prepared q4/q8 folder."
        }
      ],
      "tasks": {
        "image_to_image": {
          "inputs": [
            "image",
            "text"
          ],
          "outputs": [
            "image"
          ],
          "params": {
            "prompt": {
              "required": true
            },
            "image": {
              "required": true
            },
            "negative_prompt": {
              "required": false
            },
            "width": {
              "required": false,
              "default": 1024
            },
            "height": {
              "required": false,
              "default": 1024
            },
            "steps": {
              "required": false,
              "default": 10
            },
            "guidance_scale": {
              "required": false,
              "default": 4.0
            },
            "seed": {
              "required": false
            },
            "mask": {
              "required": false
            }
          },
          "requires": {
            "backend": "mlx-gen",
            "min_runtime_version": "0.18.7"
          }
        }
      }
    }
  }
}
