Chroma Local Guide: The Apache-2.0 Uncensored FLUX Model
Want to go deeper than this article?
Free account unlocks the first chapter of all 22 courses — RAG, agents, MCP, voice AI, MLOps, real GitHub repos.
Generating images locally? Take it further. From FLUX and ComfyUI setup to building real image pipelines and apps. First chapter free, no card.
Short answer: download Chroma1-HD. It is an 8.9B-parameter, Apache 2.0 image model rebuilt from FLUX.1-schnell with the alignment stripped out — no safety filter, real CFG, working negative prompts. The BF16 checkpoint is 17.8GB (24GB cards run it natively); GGUF quants go down to 5.57GB (Q4_K_M) for 8GB GPUs. ComfyUI supports it natively, and the model repo ships a ready-made workflow JSON.
That one paragraph is the whole recommendation. The rest of this page is the detail: what Chroma actually changed inside FLUX, which of the five(!) Chroma variants to ignore, the exact file-by-file ComfyUI setup verified against the model card and the official ComfyUI example, and the honest list of things Chroma does worse than the model it came from.
What Chroma Is (and Which Checkpoint to Get) {#what-is-chroma}
Answer first: Chroma1-HD is the finished, stable release — every other Chroma variant is either a speed fork or an open work-in-progress. 56.9K downloads on Hugging Face as of early August 2026.
Chroma is a community project by the Hugging Face user lodestones, and it is more surgery than fine-tune. Per the model card: the team took the 12B-parameter FLUX.1-schnell, replaced a 3.3B-parameter timestep-encoding block with a 250M-parameter FFN — shrinking the model to 8.9B parameters — then retrained it on a 5M-image dataset curated from a 20M pool, without applying a safety filter. The result behaves like a FLUX that is smaller, unrestricted, and takes instructions from negative prompts again.
One naming trap the card clears up directly: "Chroma1-HD is not the old Chroma-v.50, it has been retrained from v.48." If you tried an early Chroma epoch in 2025 and bounced off, HD is a different animal.
The family, as listed on the lodestones Hugging Face profile (August 2026):
| Checkpoint | What it is | Status | Should you use it? |
|---|---|---|---|
| Chroma1-HD | The main 8.9B release, 17.8GB BF16 | Stable, 56.9K downloads | Yes — this guide |
| Chroma1-Flash | HD with CFG "baked in" for fast low-step generation | Released, 9B, Apache 2.0 | If you need speed over control |
| Chroma1-Radiance | Experimental successor; checkpoints update hourly | WIP — card warns of "squiggles" | Not yet |
| Chroma2-Kaleidoscope | Fine-tune of FLUX.2-klein-base-4B | WIP — "IT'S STILL WIP GUYS CHILL!!" | Not yet |
| Kroma | Newer experiment, updated within days | Early | Not yet |
Table: Hugging Face model cards and repo metadata (lodestones), retrieved August 2026.
The pattern to internalize: this is one prolific developer shipping experiments in public. The experiments churn; Chroma1-HD is the one with a finished README, an official ComfyUI example, and a stable file. Build on that.
Reading articles is good. Building is better.
Free account = 20+ free chapters across 22 courses, with a per-chapter AI tutor. No card. Cancel anytime if you ever upgrade.
Chroma vs FLUX: What Actually Changed {#chroma-vs-flux}
Answer first: Chroma trades FLUX's polish for freedom — 8.9B params instead of 12B, Apache 2.0 instead of FLUX.1-dev's non-commercial license, real CFG and negative prompts instead of schnell's locked 4-step distillation, and no content filter at all.
| FLUX.1-schnell | FLUX.1-dev | Chroma1-HD | |
|---|---|---|---|
| Parameters | 12B | 12B | 8.9B |
| License | Apache 2.0 | Non-commercial | Apache 2.0 |
| Real CFG / negative prompts | No (distilled, ~4 steps) | Limited (distilled guidance) | Yes |
| Safety alignment | Yes | Yes | None applied |
| Typical steps | 4 | 20-50 | 26-40 |
| BF16 checkpoint | 23.8GB | ~23.8GB | 17.8GB |
Sources: Black Forest Labs model repos and the Chroma1-HD model card on Hugging Face, August 2026.
Three of those rows matter more than the rest:
License. FLUX.1-dev — the FLUX most people actually generate with — is non-commercial. Chroma inherits from schnell (Apache 2.0) and keeps the license clean all the way down: the card commits to it being usable, modifiable, and buildable-upon by anyone. If you are producing commercial work locally, this row alone decides it. It is also why a real LoRA ecosystem is forming around Chroma — training a LoRA on an Apache base means you can actually ship what you train.
De-distillation. Schnell is a 4-step distilled model — fast, but CFG is effectively dead and negative prompts do nothing. Chroma's retraining restores classic guidance: the model card's own example runs guidance_scale 3.0 with a full negative prompt. If you came from Stable Diffusion and missed telling the model what not to draw, this is the FLUX-quality model that listens. (For how FLUX proper handles this, see our ComfyUI FLUX workflow guide.)
No safety filter. Covered honestly in its own section below.
Against SDXL the calculus is different — Chroma is a much bigger, slower, more prompt-faithful model; our SDXL vs FLUX comparison applies to Chroma almost unchanged since the architecture is FLUX's.
VRAM: What You Actually Need {#vram}
Answer first: 24GB runs the full 17.8GB BF16 checkpoint; 16GB wants the 9.74GB Q8_0 GGUF; 12GB the 7.65GB Q6_K; 8GB the 5.57GB Q4_K_M. These are file sizes from the repos, not benchmarks — treat "fits comfortably" as file size plus 2-3GB of working headroom at 1024px.
| File | Size | Sensible target GPU |
|---|---|---|
| Chroma1-HD.safetensors (BF16) | 17.8GB | 24GB (RTX 3090/4090-class) |
| Q8_0 GGUF | 9.74GB | 16GB |
| Q6_K GGUF | 7.65GB | 12GB |
| Q5_K_M GGUF | 6.65GB | 10-12GB |
| Q4_K_M GGUF | 5.57GB | 8GB |
| Q3_K_S GGUF | 4.29GB | 8GB, tight |
| Q2_K GGUF | 3.41GB | Last resort — visible quality loss at this depth |
File sizes: lodestones/Chroma1-HD and silveroxides/Chroma1-HD-GGUF on Hugging Face, retrieved August 2026. GPU targets are our sizing guidance from those file sizes, not lab measurements.
Two budget notes. First, the T5-XXL text encoder adds 9.79GB (FP16) or 4.89GB (FP8) on disk, but ComfyUI loads the encoder and diffusion model sequentially, so your VRAM ceiling is set by the larger of the two stages, not their sum. On low-VRAM cards, use the FP8 encoder and let ComfyUI offload. Second, quantization behaves like it does for FLUX — Q8 is hard to tell from BF16, Q4 is where you start noticing, Q2 is an emergency. The FLUX-specific numbers in our FLUX VRAM requirements table and the offloading tricks in running FLUX on low-VRAM GPUs transfer directly, since Chroma is architecturally FLUX with a smaller trunk.
Buying a card for this workload? Start from our best GPU for image generation guide, then check individual cards in the GPU database — the short version is that image models reward VRAM over compute at every price point.
ComfyUI Setup, File by File {#comfyui-setup}
Answer first: three files in three folders — checkpoint into models/diffusion_models, T5-XXL into models/text_encoders, FLUX VAE into models/vae — then load the workflow JSON that ships in the model repo. Chroma support is native in current ComfyUI; no custom nodes needed for the BF16/safetensors path.
This layout is verified against both the Chroma1-HD model card and the official ComfyUI example page (August 2026). From your ComfyUI root:
# 1. The Chroma1-HD checkpoint (17.8GB)
wget -P models/diffusion_models \
https://huggingface.co/lodestones/Chroma1-HD/resolve/main/Chroma1-HD.safetensors
# 2. T5-XXL text encoder — FP8 shown (4.89GB); use t5xxl_fp16.safetensors (9.79GB) on 24GB+ cards
wget -P models/text_encoders \
https://huggingface.co/comfyanonymous/flux_text_encoders/resolve/main/t5xxl_fp8_e4m3fn.safetensors
# 3. The FLUX VAE (168MB) — shipped inside the Chroma repo itself
wget -O models/vae/chroma-vae.safetensors \
https://huggingface.co/lodestones/Chroma1-HD/resolve/main/vae/diffusion_pytorch_model.safetensors
# 4. The ready-made workflow
wget https://huggingface.co/lodestones/Chroma1-HD/resolve/main/ComfyUI_Chroma1-HD_T2I-workflow.json
Then drag ComfyUI_Chroma1-HD_T2I-workflow.json onto the ComfyUI canvas, point the three loader nodes at the files above, and queue.
Worth knowing before you hit download:
- The VAE is FLUX's VAE. The canonical
ae.safetensors(335MB) lives in the black-forest-labs/FLUX.1-schnell repo, which is gated — free, but you must log in and accept the terms. The 168MB copy inside the Chroma repo'svae/folder (step 3) is ungated; if your ComfyUI build rejects that diffusers-format file, fall back to the gatedae.safetensors. - No CLIP-L needed. Unlike FLUX proper, Chroma's documented setup uses only T5-XXL. One encoder, one loader node.
- Older guides say
models/clip. The model card places T5 there; the current ComfyUI example saysmodels/text_encoders. Both work — ComfyUI treats them as the same location. - GGUF path: grab your quant from silveroxides/Chroma1-HD-GGUF, install city96's ComfyUI-GGUF extension, and swap the diffusion-model loader for its Unet Loader (GGUF) node (per that extension's README, GGUF files go in
models/unet). Everything else in the workflow stays identical.
New to the node graph entirely? Do our complete ComfyUI guide first — twenty minutes there saves an evening here.
Reading articles is good. Building is better.
Free account = 20+ free chapters across 22 courses, with a per-chapter AI tutor. No card. Cancel anytime if you ever upgrade.
Settings That Work {#settings}
Answer first: start at 26-40 steps, CFG 3.0-4.0, with a real negative prompt — this is a de-distilled model, so schnell's 4-step habit does not apply.
Both reference points come from the author. The workflow JSON shipped in the repo runs euler with a beta scheduler, 26 steps, CFG 3.8, at 1152×1152; the model card's own diffusers example uses 40 steps at guidance 3.0. Treat 26 as the speed end and 40 as the quality end of the same band. The card also ships this negative prompt, which is a sane default:
low quality, ugly, unfinished, out of focus, deformed, disfigure,
blurry, smudged, restricted palette, flat colors
Practical notes from the FLUX-family playbook:
- Steps cost linearly. 40 steps at 8.9B parameters is not fast on mid-range hardware. If you iterate on prompts, rough at ~26 steps and rerun keepers at 40.
- CFG is real again — which means it can burn. Past ~4.5 expect oversaturation and contrast clipping, same as classic SD behavior.
- Prompt like you mean it. T5-XXL is the only encoder, and it rewards full sentences over tag soup. Describe the scene, the light, the lens.
- Need speed? That is what Chroma1-Flash exists for — the CFG-baked variant built for low step counts. You trade away negative prompts, the exact thing that makes HD interesting, so pick per job.
The Uncensored Part, Honestly {#uncensored}
Answer first: Chroma ships with no safety alignment — the card says it plainly, and that makes you, not the model, the safety layer.
The model card does not wink about it: Chroma "has not been aligned with a specific safety filter" and "has the potential to generate content that may be considered harmful, explicit, or offensive." The original Chroma repo carries Hugging Face's Not-For-All-Audiences flag. This is a deliberate design position — the project's pitch is a capable base model with no opinions baked in, and it is the main reason the model has the community it has.
Our position, same as everywhere in our uncensored local image generation guide: unfiltered local models are legitimate tools — for art, for research, for the simple principle that your own GPU should not tell you no. But the filter's absence moves the responsibility to you. Local and private does not mean legal is optional: depictions of real people, non-consensual content, and anything involving minors remain off-limits everywhere, model weights notwithstanding. The tool is neutral. Your use of it is not.
Limitations, Because Every Model Has Them {#limitations}
Answer first: Chroma is slower per image than distilled FLUX, carries community-project risk, and its most exciting successors are not finished — know all three before you commit a workflow to it.
- It is not fast. De-distillation is the feature and the bill: 26-40 real steps versus schnell's 4. On an 8GB card with a Q4 quant and an offloaded T5, expect to wait. If throughput is the job, a distilled/turbo-class model wins.
- One-developer project. No company, no SLA, no press page — a prolific developer and a Discord. The Apache license means the current weights are yours forever, but the roadmap is whatever lodestones does next, and the profile shows at least three parallel experiments in flight.
- The successors are loud but unfinished. Radiance updates hourly and warns about artifacts; Kaleidoscope's own card shouts WIP. Resist building on them yet; HD's advantage is precisely that it is done.
- FLUX-family weaknesses persist. Text rendering is passable, not magic; hands and complex anatomy fail in the familiar ways; and the smaller 8.9B trunk plus a 5M-image diet means some subjects are simply thinner in the training data than in FLUX.1-dev.
- We have not published our own benchmarks for it. Sizes, settings, and setup above are verified from the repos and official docs; speed and quality judgments beyond that are the FLUX-family baseline plus community consensus, labeled as such. Where Chroma ranks against everything else we track lives in our model roundups.
Verdict {#verdict}
Chroma1-HD earns a specific slot: the FLUX-quality model you can use for anything, on anything. Apache 2.0 with no asterisks, no content filter, real negative prompts, and a checkpoint 6GB smaller than the FLUX it came from. For commercial work where FLUX.1-dev's license is a wall, or for an uncensored image stack where alignment gets in the way of legitimate output, it is the current default — and the 5.57GB Q4_K_M means an 8GB card is genuinely enough to start.
It is not the fastest local image model, it is not corporate-backed, and its successors are still wet paint. But as of August 2026, "de-distilled, unrestricted, Apache-licensed FLUX" describes exactly one stable checkpoint. Three files, one workflow JSON, and it is yours.
Sources {#sources}
- lodestones/Chroma1-HD — model card: parameters, architecture changes, license, safety statement, ComfyUI layout, settings, file sizes
- ComfyUI official Chroma example — native-support setup and folder paths
- comfyanonymous/flux_text_encoders — T5-XXL encoder files and sizes
- silveroxides/Chroma1-HD-GGUF — GGUF quant sizes
- black-forest-labs/FLUX.1-schnell — base model license and VAE
- city96/ComfyUI-GGUF — GGUF loader node and folder path
- lodestones Hugging Face profile — Chroma family status and download counts, retrieved August 2026
FAQ {#faq}
Generating images locally? Take it further.
From FLUX and ComfyUI setup to building real image pipelines and apps. First chapter free, no card.
Liked this? 20 full AI courses are waiting.
From fundamentals to RAG, agents, MCP servers, voice AI, and production deployment with real GitHub repos. First chapter free, every course.
Build Real AI on Your Machine
RAG, agents, NLP, vision, and MLOps - chapters across 22 courses that take you from reading about AI to building AI.
Want structured AI education?
22 courses, 519+ chapters, from $9. Understand AI, don't just use it.
Continue Your Local AI Journey
- PILLARRun FLUX.1 Locally in 2026: VRAM Needs + 5-Minute Setup
- Best GPU for Local AI Image Generation (2026): Ranked
- Best Local AI Image Models 2026: FLUX vs SDXL vs Qwen
- ComfyUI 2026: Install + ControlNet + FLUX Setup (Full Tutorial)
- ComfyUI FLUX Workflow (2026): JSON Nodes Explained
- FLUX VRAM Requirements by GPU (2026): 8GB to 24GB Guide
- Image-to-Text AI: 89% Caption Accuracy (2026)
- Ollama Image Generation: Run Z-Image & FLUX.2 Locally (2026)
- Run FLUX on 6-8GB VRAM (2026): GGUF & Offloading
- Run FLUX.2 Locally (2026): Klein 9B/4B VRAM + ComfyUI
Comments (0)
No comments yet. Be the first to share your thoughts!