Lesson2,596 words

Select and apply appropriate generation and editing controls provided by the platform

AI-103 › Unit 3: Implement computer vision solutions › Design and implement image- and video-generation solutions › Select and apply appropriate generation and editing controls provided by the platform

Select and apply appropriate generation and editing controls provided by the platform

This objective is the selection skill across everything in the topic: given a requirement, which control delivers it. Most wrong answers are controls that exist and do something adjacent — compression where quality was meant, a prompt where a mask was meant, a variant where a remix was meant. The method is to read the requirement for the property being demanded, then map it to the one control that governs that property.

Why This Matters

Controls cluster by what they govern. Dimensions, fidelity, format, quantity, and iteration are five separate families, and a requirement names one.

Several controls have eliminating dependencies. Transparency forces a model and a format. input_fidelity removes mini. Variants are unavailable at 1080p. These turn a preference into a constraint.

Precision beats prompting. Where a deterministic control exists — a mask, a size, a format — it is the answer, and asking the model to comply is the distractor.

Prerequisites

  • Image generation parameters and the family size rules.
  • The mask convention and the edits endpoint.
  • Sora 2's job model, resolutions, seconds, and variant limits.
  • Remix and its one-adjustment guideline.

Learning Objectives

By the end of this lesson you will be able to:

  1. Map a requirement to the control family that governs it.
  2. Apply the dependency chains that eliminate models or formats.
  3. Choose between deterministic controls and prompt instructions.
  4. Combine controls into a coherent workflow.
  5. Recognise requirements the platform cannot satisfy at all.

Building Blocks

The five control families.

FamilyImage controlsVideo controls
Dimensionssize — three fixed for the GPT-image-1 series; arbitrary for GPT-Image-2 under four constraintssize — a fixed resolution list, portrait 720×1280 default; seconds 4 / 8 / 12, default 4
Fidelityquality (low/medium/high), input_fidelityPrompt specificity — shot type, subject, action, setting, lighting, camera motion
Formatoutput_format (png/jpeg, no WEBP), output_compression (JPEG only, 0–100), backgroundMP4 via Download Video
Quantityn, stream with partial_images 1–3n_variants0 at 1080p, 2 at 720p, 4 otherwise
IterationMask + /images/edits; variations; prompt-driven editsremix_video_id; video (generated) → video ≤ 5 s

The dependency chains.

  • background: transparent → requires output_format: png and a GPT-image-1 model.
  • output_compressionJPEG output only.
  • input_fidelitynot supported by gpt-image-1-mini (which also defaults to quality: medium).
  • Arbitrary image size → GPT-Image-2, under all four constraints at once.
  • input_reference (video) → must match size exactly.
  • Variants → disabled at 1080p.

Platform limits that shape design. 5 images per minute default image quota; two concurrent video jobs; video jobs available 24 hours; image inputs under 50 MB, PNG or JPG; the GPT-image-1 series always returns base64.

Deterministic control against prompt instruction

Region of change

A mask — exact pixels

"Only change the sign" — interpreted

Output size

size

"Make it wide" — ignored

File format

output_format

Not controllable by prompt

Reliability

Exact, repeatable

Best-effort

When to prompt

Content and style, which no parameter expresses

Deep Dive

Reading the requirement for its property

The reliable method is to strip the requirement down to the property it demands, because each property has exactly one governing control.

"The images look soft" — a generation-detail property, so quality. Not compression, which changes file size after the fact.

"The files are too large for the CDN" — a file-size property, so output_compression, remembering it is JPEG only, or a smaller size.

"Only the logo should change" — a region property, so a mask with the logo area as fully transparent pixels.

"The person's face must stay the same" — a preservation property, so input_fidelity, which matches "style and features, especially facial features" — and which removes mini from consideration.

"We need options to choose from" — a quantity property: n for images, n_variants for video within its ceiling.

"Approved, but make the sky darker" — an iteration property on existing output, so remix for video, or a mask-based edit for an image.

The distractor pattern is consistent: an adjacent control that does something plausible. Compression offered where quality was meant; a prompt instruction offered where a mask was meant; regeneration offered where remix was meant.

Selecting controls for a requirement

  1. Name the property

    Dimensions, fidelity, format, quantity, or iteration — one of five.

Dependency chains that eliminate options

Several controls do not merely have settings — they remove other choices, and that is what makes them decisive in a question.

Transparency is the strongest. Requiring background: transparent forces PNG output and a GPT-image-1 model. So a scenario needing transparent cutouts and an unusual aspect ratio is asking for two things that cannot both be satisfied by one call: transparency excludes GPT-Image-2, and the GPT-image-1 series offers only three fixed sizes. The workable answer is to generate transparent at a supported size and handle the framing outside the model.

Fidelity excludes mini. Any brand-continuity or face-preservation requirement removes gpt-image-1-mini, which alone lacks input_fidelity — and whose default quality of medium makes naive cost comparisons misleading.

Arbitrary sizing means GPT-Image-2 and all four constraints. Edges multiples of 16 px, long edge to 3,840 px, ratio to 3:1, pixels 655,360–8,294,400 — a request may satisfy three and fail the fourth.

Variants and resolution trade against each other. None at 1080p, two at 720p, four otherwise, which forces the explore-low-then-render-high shape rather than a single high-resolution comparison.

Deterministic controls beat prompt instructions

Where a parameter expresses the requirement, the parameter is the answer.

A mask specifies the edited region pixel by pixel; a prompt saying "change only the sign" is a request the model interprets. A size parameter fixes the output dimensions; describing a wide banner in the prompt does not. output_format decides PNG or JPEG; nothing in the prompt can.

The prompt's proper territory is content and style — what appears, in what mood, under what lighting, and for video the shot type, subject, action, setting, lighting, and camera motion, kept single-purpose for best adherence.

The same principle appears in editing: if you can draw the region, mask it. And in video iteration: if one thing should change, remix rather than re-prompt, because remix reuses structure, motion, and framing while a new prompt returns a different composition.

Combining controls coherently

Real workflows stack controls, and the stacking has an order.

Constrain first, then refine. Choose the model from the hardest dependency — transparency or arbitrary size — before tuning anything else, because that choice removes options downstream.

Grant freedom locally, protect globally. In editing, a mask plus high input_fidelity is the strong combination: the mask permits change exactly where it should happen while fidelity protects everything outside it. High fidelity alone resists large changes; a mask alone leaves the surround free to drift.

Explore broad, then render deep. For video, use variants at lower resolution for breadth, remix for depth on the chosen direction — one adjustment at a time — and a single 1080p render at the end.

Validate before spending. Size rules, mask dimensions, the 50 MB input ceiling, and the video reference-size match are all checkable locally, and each failure otherwise costs a round trip against a 5 images per minute or two concurrent job budget.

Worked Examples

Example 1 — transparent and ultra-wide. A requirement asks for transparent-background product images at a 4:1 aspect ratio.

Not satisfiable in one call. Transparency is GPT-image-1 only and needs PNG, but that family offers only 1024x1024, 1024x1536, 1536x1024. GPT-Image-2 could size flexibly — except 4:1 exceeds its 3:1 ratio limit anyway. Generate transparent at a supported size and compose the wide canvas in post-processing.

Example 2 — sharper images, smaller files. Output looks soft and the files are too large.

Two different properties, two different controls. Softness is quality (low/medium/high); file size is output_compression — which applies to JPEG only, so it pairs with output_format: jpeg, or reduce size. Using compression to address softness is the classic conflation.

Example 3 — five review notes on an approved clip. A stakeholder approves a generated video and lists five changes.

Remix, one change per call: "limit your modifications to one clearly articulated adjustment". With 1–5 minute generations and two concurrent jobs, that is a serial sequence. Download each result, since jobs expire after 24 hours, and persist remixed_from_video_id as the provenance chain.

Visual Explanations

Requirement to control:

Loading Diagram...
Figure 1 — Mermaid diagram

Dependency chains:

Loading Diagram...
Figure 2 — Mermaid diagram

Common Mistakes

Using compression to fix softness. Quality and file size are different properties.

Prompting for a region instead of masking it.

Prompting for a size instead of setting size.

Assuming transparency works on any model. GPT-image-1 with PNG only.

Choosing mini where fidelity matters.

Requesting variants at 1080p.

Regenerating a video when one change was wanted. Remix preserves the framework.

Bundling several changes into one remix.

Surfacing locally checkable failures as API errors. Validate size, mask dimensions, and the 50 MB limit first.

Practice Exercises

  1. Name the five control families and one control from each.
  2. Trace the dependency chain from "transparent background" to the models it eliminates.
  3. Distinguish quality from output_compression.
  4. Which control combination best changes one region while protecting the rest, and why is either alone weaker?
  5. Give three requirements the platform cannot satisfy with any control.
Answers
  1. Dimensions (size, seconds), Fidelity (quality, input_fidelity), Format (output_format, output_compression, background), Quantity (n, partial_images, n_variants), Iteration (mask + /images/edits, remix_video_id).
  2. background: transparent requires output_format: png and is GPT-image-1 only — eliminating GPT-Image-2 and therefore all arbitrary sizes, leaving only 1024x1024, 1024x1536, and 1536x1024.
  3. quality (low/medium/high) governs generation detail — the fix for soft output. output_compression (0–100, default 100) reduces JPEG file size after the fact and has no effect on PNG output or on perceived sharpness of generation.
  4. A mask plus high input_fidelity. The mask grants freedom exactly where change is wanted; fidelity protects style and facial features everywhere else. High fidelity alone resists the intended change; a mask alone leaves the surround free to drift.
  5. Timeline editing of video (no trim, splice, or concatenation); generating real people, including public figures, or supplying input images with faces; WEBP output; and transparency on GPT-Image-2. Each needs a different approach or post-processing, not a parameter.

Summary & Concept Map

Control selection is a mapping from property to parameter, across five families: dimensions (size, seconds), fidelity (quality, input_fidelity), format (output_format, output_compression, background), quantity (n, partial_images, n_variants), and iteration (mask editing, remix). Several controls carry eliminating dependencies — transparency forces PNG and GPT-image-1, input_fidelity excludes mini, arbitrary sizing forces GPT-Image-2 under four simultaneous constraints, variants vanish at 1080p — and those turn preferences into decisions. Where a deterministic control exists, it beats a prompt instruction: mask the region rather than describing it, set the size rather than requesting it, remix rather than re-prompt. Stack controls by constraining first and refining after, validate locally before spending against 5 images/minute and two concurrent video jobs, and recognise the requirements — timeline editing, real people, WEBP, transparency on GPT-Image-2 — that no control satisfies.

Loading Diagram...
Figure 3 — Mermaid diagram
Loading flashcards…

Sources and freshness

Written against current Microsoft Learn documentation for the AI-103 skills measured (16 April 2026), reviewed 2026-08-20. Microsoft Learn controls every changing product contract — availability, preview status, quotas, limits, regional support, naming, and retirement dates all move independently of this lesson. Where a scenario turns on a specific number or a GA/preview boundary, confirm it against the product's own page before relying on it.

Ready to study Developing AI Apps and Agents on Azure (AI-103)?

Practice tests, flashcards, and all study notes — free, no sign-up needed.

Start Studying — Free