Lesson 59 of 2116
Open-Source vs. Closed Image Models
Flux Pro vs. Flux Dev. Midjourney vs. Stable Diffusion. The choice affects product architecture, cost, and what's possible. Here's the honest tradeoff.
Lesson map
What this lesson covers
Learning path
The main moves in order
- 1The strategic choice
- 2open weights
- 3closed API
- 4self-hosting
Concept cluster
Terms to connect while reading
Section 1
The strategic choice
For every product using image generation, you'll face a choice: hit a closed API (Midjourney, OpenAI, Flux Pro via fal/Replicate) or self-host open weights (SD 3.5, Flux Dev, SDXL). Both are valid — the tradeoffs are architectural, not moral.
Compare the options
| Dimension | Closed API | Open weights (self-hosted) |
|---|---|---|
| Setup cost | 5 minutes (API key). | Days (GPU infra, model store, inference stack). |
| Quality ceiling | Highest available (Flux Pro, Midjourney, Imagen 4). | Strong but typically 1-tier behind (Flux Dev, SD 3.5). |
| Per-image cost at scale | $0.02-0.15/image, forever. | Amortized $0.001-0.005/image after infra. |
| Latency control | At vendor's mercy; queue delays common. | You control it; can warm-pool GPUs. |
| Data privacy | Images + prompts leave your walls. | Everything stays on your infra. |
| Customization | Limited (Midjourney --cref, OpenAI vision edit). | Unlimited — ControlNet, LoRA, IP-Adapter, custom fine-tunes. |
| Legal indemnification | Available on some (Adobe Firefly, enterprise Flux). | You carry all risk. |
| Upgrade path | Vendor ships v2; you just use it. | You re-engineer for new architectures. |
When closed wins
- MVP — need to ship next week, volume is low.
- Non-technical team — no ML/ops headcount.
- Regulatory cover needed — Firefly's indemnification is real money.
- Highest possible aesthetic quality — Midjourney and Flux Pro are the ceiling.
When open wins
- Scale > 50k images/day — API costs beat amortized infra.
- Tight latency requirements — <2s per image on your GPUs.
- Data privacy — medical, legal, defense, financial.
- Heavy customization — branded character LoRAs, ControlNet pipelines.
- Air-gapped deployment — on-prem or edge.
The hybrid pattern
Real teams mix: use a closed API for the highest-quality hero shots, open weights for high-volume in-product generation. Or: prototype with closed, migrate high-volume paths to open once unit economics matter.
Self-hosting stack in 2026
- 1Inference engine: ComfyUI for graph-based workflows; Diffusers (Python) for programmatic; vLLM-style sglang or replicate/cog for serving.
- 2GPU infra: RunPod, Modal, fly.io GPUs, AWS/GCP for enterprise.
- 3Quantization: int8 / int4 Flux Dev runs on 16GB VRAM at acceptable quality.
- 4Distillation: Flux Schnell (4-step) or LCM-LoRAs for sub-second inference.
- 5Queue + cache: Redis/Upstash for job queue; R2/S3 for outputs.
Production Flux Dev service on Modal serverless GPU.
# Serving Flux Dev via Modal (Python serverless GPU)
import modal
app = modal.App("flux-service")
image = modal.Image.debian_slim().pip_install(
"diffusers==0.32.0", "torch==2.5.1", "transformers", "accelerate"
)
@app.cls(gpu="H100", image=image, container_idle_timeout=120)
class FluxService:
@modal.enter()
def load(self):
import torch
from diffusers import FluxPipeline
self.pipe = FluxPipeline.from_pretrained(
"black-forest-labs/FLUX.1-dev",
torch_dtype=torch.bfloat16,
).to("cuda")
# Load our LoRA stack
self.pipe.load_lora_weights("./brand_lora.safetensors")
@modal.method()
def generate(self, prompt: str, steps: int = 28):
result = self.pipe(
prompt=prompt,
num_inference_steps=steps,
guidance_scale=3.5,
).images[0]
return result
# Costs ~$0.001-0.003 per image amortized on H100 at utilization.What changed in 2026
- Black Forest Labs (Flux) ships Pro via API and Dev under a permissive non-commercial-research license for weights.
- Stability AI SD 3.5 has gentler community licensing than SD3 caused.
- Meta released Chameleon weights in late 2024; multimodal AR competitor.
- Inference costs on open weights dropped ~40% year-over-year due to quantization + distillation.
Key terms in this lesson
End-of-lesson quiz
Check what stuck
15 questions · Score saves to your progress.
Tutor
Curious about “Open-Source vs. Closed Image Models”?
Ask anything about this lesson. I’ll answer using just what you’re reading — short, friendly, grounded.
Progress saved locally in this browser. Sign in to sync across devices.
Related lessons
Keep going
Creators · 75 min
Capstone: Build and Ship a Real Agent
Everything comes together. Design, code, test, secure, and ship a production-quality agent with open-source code you can fork today.
Creators · 40 min
Video Generation at the API Level
Behind the glossy UIs, video models expose REST APIs. Here's how to call Sora, Veo, and Runway programmatically and build production pipelines.
Creators · 38 min
Audio Synthesis Pipelines
ElevenLabs, Stable Audio, and Suno expose APIs for voice, SFX, and music. Here's how to compose them into a production audio pipeline.
