Run SenseNova U1.5 8B Locally for 4K Image Gen & Editing

SenseTime shipped the production release of SenseNova-U1.5-8B-MoT on August 20 — an Apache-2.0, 8-billion-parameter checkpoint that handles text-to-image, image editing, and visual understanding in a single native unified model. It generates native 4K images, follows 3,000–4,000-character instructions, and holds its own against GPT-Image-2 on dense layouts and localized edits. The model runs on one consumer GPU, and the repo ships inference scripts, ComfyUI workflows, and a distilled 8-step LoRA for fast generation.

What makes this worth your time: no router, no pipeline of separate expert models. Everything stays in one 8B checkpoint, which means shorter call chains and cheaper deployment — and for once, "8B" actually means it runs on hardware you can buy.

What changed from the preview

U1.5 keeps the NEO-unify architecture from the original SenseNova-U1: pixels and tokens live in one Mixture-of-Transformers backbone, with no visual encoder (VE) and no VAE standing between understanding and generation. The production release adds a smarter training recipe on top:

  • Split-train, merge-back: specialized experts for text rendering, aesthetics, and editing are trained separately, then fused back into one model with MOPD (multi-teacher online policy distillation). You deploy one 8B checkpoint, not a fleet of models.
  • Post-training targets the three classic pain points: instruction following (counts, positions, styles, "don't touch X"), visual preference (composition, material, lighting), and edit preservation (keep unedited regions intact).
  • Prompt Enhancement (PE): a standalone script turns a short brief into structured Render JSON before generation — recommended for complex or multi-constraint requests.

Local deployment

The reference environment is Python 3.11, PyTorch 2.8, CUDA 12.8. Use uv to get the exact locked environment:

# 1. Install
git clone https://github.com/OpenSenseNova/SenseNova-U1.git
cd SenseNova-U1
uv sync
source .venv/bin/activate
# 2. Text-to-image — native 4K output
python examples/t2i/inference.py \
  --model_path sensenova/SenseNova-U1.5-8B-MoT \
  --prompt "A cinematic mountain lake at sunrise, realistic photography." \
  --width 2048 --height 2048 \
  --device_map auto \
  --output output.png
# 3. Image editing — say explicitly what must NOT change
python examples/editing/inference.py \
  --model_path sensenova/SenseNova-U1.5-8B-MoT \
  --image input.png \
  --prompt "Change the jacket to cobalt blue. Preserve the face, pose, background, lighting, and framing." \
  --output edited.png

Speed it up: 8-step distilled LoRA

The official base runs 50 sampling steps at cfg_scale 4.0. The released 8-step LoRA cuts inference to 8 steps at cfg_scale 1.0 — several times faster for iteration-heavy workflows:

hf download sensenova/SenseNova-U1.5-8B-MoT-LoRAs \
  SenseNova-U1.5-8B-MoT-LoRA-8step.safetensors \
  --local-dir ./sensenova/SenseNova-U1.5-8B-MoT-LoRAs

python examples/t2i/inference.py \
  --model_path sensenova/SenseNova-U1.5-8B-MoT \
  --lora_path ./sensenova/SenseNova-U1.5-8B-MoT-LoRAs/SenseNova-U1.5-8B-MoT-LoRA-8step.safetensors \
  --prompt "A recipe sharing card with nine dishes arranged in a clean grid." \
  --cfg_scale 1.0 --cfg_norm none --timestep_shift 3.0 --num_steps 8 \
  --output fast.png

No 24 GB card? Community Q8 GGUF checkpoints exist for the U1.5 preview line, and official GGUF weights are on the way — pass the quantized file with --gguf_checkpoint and keep --model_path on the base checkpoint. There are also ComfyUI workflows under apps/comfyui, plus a LightLLM + LightX2V path for production serving.

Prompt best practices

  • State the negative space explicitly. Editing quality depends on what you tell the model not to touch: "Preserve the face, pose, background, lighting, and framing."
  • Lower cfg_scale when output looks over-cooked. Over-emphasized high-frequency detail or oversaturated color is the known failure mode; dropping cfg fixes it in most cases.
  • Route complex requests through PE. For multi-subject, multi-reference, or text-heavy work, run the brief through src/sensenova_u1_5/image_pe.py (any OpenAI-compatible API) and feed the resulting JSON as the prompt.
  • Know the weak spots: dense small mixed Chinese-English text, exact counts in constrained layouts, faces and hands, and multi-turn multi-reference edits can drift. One-shot edits with a single reference are the most reliable.

Resources

Leave a Comment

Scroll to top