Midjourney live style previews: a low-quality draft sweep on Sume

Midjourney now previews your prompt across styles before you generate. On the Sume image API the closest move is a low-quality sweep of style phrases.

4 min readSume
All posts

Midjourney added live style previews to its alpha site: with "Live previews" enabled, the Styles sidebar shows what your latest prompt looks like across styles before you generate. The Sume image API has no style catalog, so you cannot preview a named style. What you can do is run the same prompt with different style phrases at low quality and pick a direction cheaply. This post shows that sweep.

What Midjourney shipped

Midjourney describes the feature in its 9/24 update and its 9/23 changelog.

Midjourney style preview facts, read 2026-10-02
ItemWhat the page says
WhereTesting fast models on alpha.midjourney.com, with a Styles sidebar.
Live previewsShow how the prompt appears across styles, using liked and featured styles, before you generate.
Style Profiles and Featured tabsAdded with detail pages (9/23/26 changelog).

The Sume version: sweep style phrases at low quality

Pick one prompt and a handful of style phrases. Send each as its own request with a low quality, then compare. Quality values are catalog-gated, so read the model's descriptor first; openai/gpt-image-2.5 lists auto, low, medium, high, xhigh and max in the Image API docs.

Each response carries usage.cost, the USD amount billed, so you can total the sweep as you go.

import os, requests

STYLES = ["film still, 35mm grain", "flat vector poster", "soft watercolor", "studio product catalog"]
BASE = "a ceramic teapot on a wooden table"
H = {"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"}

total = 0.0
for style in STYLES:
    r = requests.post("https://api.sume.com/v1/images", headers=H, timeout=60, json={
        "model": "openai/gpt-image-2.5",
        "prompt": f"{BASE}, {style}",
        "quality": "low",
        "metadata": {"sweep": style},
    })
    if r.status_code != 200:
        print(style, "not finished yet", r.status_code, r.json())
        continue
    body = r.json()
    total += body["usage"]["cost"]
    print(style, body["data"][0]["url"])
print("sweep cost USD", total)

Reading the sweep

A 200 returns the image; a 202 means the job outlived the 30 second wait and you collect it from the job result endpoint instead. Low quality is meant to answer "which direction", not "is the text crisp".

Once you pick a style phrase, re-run it at the final quality. Because Sume does not serve seed, the final render is a new image, not an upgrade of the draft. For that, see the related post on drafts and re-renders.

Limits

Know what this is not:

  • It is not a live preview: each style costs one generation.
  • Style phrases are prompt text, not saved Midjourney styles or sref codes.
  • Different models read the same phrase differently, so sweep inside the model you will ship.

Keeping the sweep cheap and fair

Fix everything except the style phrase. Same model, same aspect ratio, same quality, same subject. Otherwise you are comparing settings, not styles. Because there is no seed on Sume, run each phrase once or twice and judge the direction, not a single lucky frame.

Cap the sweep before you start. Four to six phrases at low quality is usually enough to rule styles in or out, and n can request several variants per call where the model's range allows it. Read the n descriptor for the model first, since per-model ceilings sit below the request-level maximum of 10.

Write down which phrase won in the template for the project so the next batch does not repeat the sweep.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume