DALL·E was the API-first closed baseline. Midjourney is the other closed pole: an opinionated aesthetic engine that grew up on Discord, then a web app, with parameters (--ar, --stylize, version flags, style/omni references) instead of a public product API most teams can wire into CI.
Art directors often prefer Midjourney’s look; platform engineers often cannot ship it. That tension is the lesson. After this, Stable Diffusion shows the open-weight alternative, and Volume 17 (ComfyUI, ControlNet) teaches how to recapture some of MJ’s craft on weights you host.
Learning Objectives
By the end of this lesson, students should be able to:
- Describe Midjourney as closed SaaS with a strong house style, not a self-hostable checkpoint.
- Score MJ on the 16.3 rubric: fidelity vs aesthetics, text, license, latency, API gap.
- Read a Midjourney prompt as brief + parameters (
--ar, stylize, version, references). - Explain why missing a public API blocks many production integrations.
- Know commercial-use caveats: plan tier, ToS, and public Discord history.
- Decide when MJ is a moodboard tool vs when SD/FLUX/Firefly should ship the asset.
Midjourney is a closed text-to-image (and later image-reference) service known for cinematic, highly stylized stills. Users prompt in Discord slash-commands or the Midjourney web app. The model family is versioned (V1–V6/V6.1, then later versions such as V7); each version shifts default look, prompt parsing, and reference features. Weights are not published. There is historically no first-class public API comparable to OpenAI Images or Vertex Imagen—confirm current partner/API status before promising automation.
Rubric: Midjourney vs DALL·E vs Open Weights
| Axis | Midjourney | DALL·E / OpenAI stills | SD / SDXL / FLUX |
|---|---|---|---|
| Open vs closed | Closed SaaS | Closed API | Open or mixed licenses |
| Prompt fidelity | Often interpretive; “make it beautiful” wins | More literal (esp. DALL·E 3 rewrite) | Craft-dependent; LoRA/ControlNet help |
| Text rendering | Improved in later versions; not Ideogram-class | Improved vs DALL·E 2; still fragile | SD 1.5/SDXL weak; FLUX stronger |
| Licensing / commercial | Subscription ToS; paid plans typically allow commercial—read current terms | OpenAI ToS + plan | Per-checkpoint license (RAIL, Apache, BFL, etc.) |
| Latency | Queue + GPU farm; a 4-grid is tens of seconds typically, not ms | Seconds per still | Your GPU / batch size |
| Integration | Human-in-Discord/web; weak CI story | First-class API | diffusers, ComfyUI, A1111 |
Prompting as Parameters, Not Just Prose
Midjourney prompts are a brief plus flags. Aspect ratio, stylization, chaos/variety, version, and image or style references change the job more than another adjective. Seed reproducibility exists but is not a substitute for a locked ComfyUI graph. Style/omni references (version-dependent names) are how teams keep a campaign look without fine-tuning weights.
Typical Use Cases
Moodboards & pitches
- Art direction exploration
- Look-dev before a shoot
- Fast aesthetic consensus
Key art (with review)
- Campaign hero stills
- Human retouch in Photoshop
- Check ToS + likeness/IP
Poor fit
- Automated SKU renders in CI
- On-prem / air-gapped
- Pixel-accurate ControlNet pose
Community, Privacy, and License Reality
Early Midjourney culture was public Discord grids. That is a privacy and IP leak surface: briefs, brand refs, and faces may be visible to other subscribers depending on settings and era. Stealth/private mode (plan-dependent) is an ops control, not a default. Commercial rights usually track the paid plan and current Terms—do not quote a blog post as legal advice. Midjourney does not offer Adobe-style Firefly indemnification as its headline product story.
Pick Midjourney when
- Look quality is the buying criterion
- A human designer is in the loop
- You can live without a public API
- Style references beat training a LoRA
Move on when
- You must call generate() from a backend
- You need ControlNet / pose / depth locks
- Typography is the deliverable
- Legal wants training-data indemnification
“If we like the look, we can just wrap Discord with a bot and call it an API.” Unofficial Discord automation violates ToS, breaks without notice, and fails audit. If the product needs POST /images, use DALL·E, Imagen, FLUX API, or self-hosted Stable Diffusion—not a scraped MJ channel.
Knowledge Check
- Short Answer: What product gap most often blocks Midjourney in CI? Answer: Historically no first-class public generate API (human Discord/web loop).
- True/False: Midjourney weights are published under OpenRAIL. Answer: False—MJ is closed SaaS.
- Multiple Choice: MJ’s usual strength vs DALL·E is: (a) literal prompt audit trails, (b) opinionated aesthetic / look-dev, (c) on-prem GPUs. Answer: (b).
- Short Answer: Name two Midjourney prompt flags. Answer: e.g. --ar and --stylize (also --v, --sref / references).
- True/False: A Discord bot wrapping /imagine is a supported production API. Answer: False—unofficial, ToS-fragile, unauditable.
- Multiple Choice: Best tool after MJ moodboards for pose-locked product shots: (a) ControlNet in Vol. 17, (b) Whisper, (c) Sora audio. Answer: (a).
- Short Answer: Why does public Discord history matter legally? Answer: Prompts, refs, and faces may be exposed; privacy/IP leak surface.
- True/False: Later MJ versions made text rendering perfect. Answer: False—improved, still not Ideogram-class typesetting.
- Multiple Choice: Commercial MJ use typically depends on: (a) Apache-2 checkpoint, (b) subscription ToS / plan, (c) RAIL-M only. Answer: (b).
- Short Answer: Which next lecture is the open-weight contrast? Answer: Stable Diffusion.
Key Takeaways
- Midjourney is closed, look-first, human-in-the-loop SaaS.
- Parameters and references are the control surface—not a Python client.
- No unofficial Discord “API.” If you need generate(), pick another vendor or self-host.
- Use MJ for moodboards and key art; use SD/FLUX/Firefly to industrialize.
- Continue with Stable Diffusion.
Lab: Same brief in MJ (with --ar and a style ref) vs DALL·E API. Score fidelity vs aesthetic. Discuss whether the team could ship MJ without a human clicking Upscale.
Whiteboard: Integration diagram: designer → MJ → Photoshop vs backend → Images API → CDN. Circle the missing MJ box.
Recap: Midjourney is an aesthetic closed studio, not an API platform. Continue with Stable Diffusion.