Skip to content

Dynamic UI & Parameters

Every model in modelBridge gets a purpose-built interface — sliders, dropdowns, checkboxes, text inputs, media uploads — all generated automatically from the model’s OpenAPI specification. No hardcoded forms, no simplified interfaces. The full model, as its creators intended.

When you select a model, the plugin reads its parsed schema and renders a form tailored to that model’s inputs. A model with 4 parameters gets 4 controls. A model with 20 parameters gets 20 controls, organized into main and advanced sections. Switch models, and the entire form regenerates.

This is the core differentiator of modelBridge — a single engine that supports 900+ models without model-specific code.

The schema-driven engine renders different input types based on field definitions:

Schema TypeUI ControlExample
String (no enum)Text inputPrompt, negative prompt
String (with enum)DropdownAspect ratio, resolution, quality tier
Number/Integer (with min/max)Slider with number inputDuration, CFG scale, steps
Number/Integer (no range)Number inputSeed, width, height
BooleanCheckboxEnable audio, enable safety checker
String (format: uri, media)Media upload cardImage input, video input
Array of stringsTag input or multi-selectStyle tags, LoRA weights

Each control shows the field’s label (humanized from the API field name), current value, and default value. Required fields are marked visually.

The form is split into two tiers automatically:

Parameters you adjust on every generation:

  • Prompt — the text description field
  • Duration — video length
  • Aspect ratio — output dimensions
  • Resolution — output quality
  • Number of images — for multi-image models

Power user controls behind a toggle:

  • Negative prompt — what to avoid in generation
  • CFG scale — how closely to follow the prompt
  • Seed — for reproducible results
  • Width / Height — explicit pixel dimensions
  • FPS — frames per second
  • Inference steps — quality vs speed tradeoff
  • Model-specific parameters — any other fields the model exposes

The separation is driven by field semantics and schema metadata — not hardcoded per model. A model the plugin has never seen before still gets the right layout.

As you change parameters, the cost estimate updates in real time. Fields that affect cost include:

  • Duration (longer = more expensive)
  • Resolution (higher = more expensive)
  • Audio toggle (adds a surcharge on some models)
  • Number of images (multiplies the cost)
  • Quality tier (some models charge more for higher quality)

The cost badge above the Generate button reflects your current parameter values at all times.

Your prompt text carries over when you switch models. Write a prompt, switch from one model to another, and the text is already there. Model-specific settings (duration, aspect ratio, resolution) reset to the new model’s defaults.

Models that require media input show a media card at the top of the form. The card type depends on what the model needs:

  • Single media card — one image or video input (image-to-video, video-to-video)
  • Dual-frame card — start and end frame columns (interpolation models)
  • No card — text-only models (text-to-video, text-to-image)

Media cards show real-time validation status — green for valid, red with a specific error message when the selected media does not meet the model’s requirements.

Every field is validated against the schema before generation:

  • Required fields — Generate is disabled until all required fields are filled
  • Range constraints — sliders enforce min/max from the schema
  • Enum values — dropdowns only show valid options
  • Media type — media cards check format, dimensions, file size, and duration

Invalid fields show inline error messages. The Generate button tooltip tells you exactly what is missing or wrong.

Some models accept media either from your timeline selection or from a pasted URL. These appear in Advanced Settings as tabbed inputs — “From Selection” vs “Paste URL”. Labels update in real time to reflect your current selection state:

  • “Using selected video” / “Using selected image” — when a clip is selected
  • “No media selected” — when nothing is selected
  • “This model requires a video clip” — when the wrong media type is selected (red error state)