Skip to content

BluePixel Turbo · Download guide

BluePixel-Turbo Download & Local Setup

Get the model weights and inference code, check the environment requirements, and follow the publisher’s examples for local image editing.

Edit a photo in your browser

Open BluePixel Turbo, upload your photo and describe the change you want to make.

Skip the setup — edit online

The code blocks below are quoted unchanged from vivo’s GitHub README. Run them from the cloned repository; example paths and English instructions are preserved as published.

Environment requirements

The README calls for a CUDA environment with BF16 support. Its dependencies target the Diffusers 0.36 API. GPU inference must be validated in your own deployment environment.

Source:vivo README

v1 and v2 checkpoints

The model card identifies v1 as the initial ckpt800 SFT release and v2 as the current ckpt35 (STEP-35) release. The 2026-11-03 update is an intermediate SATP-distilled checkpoint without additional post-training; further reinforcement learning is planned. Only transformer weights were updated; the text encoder, VAE and tokenizer are unchanged, and metadata was refreshed.

Source:vivo model card

Download the code and complete checkpoint

Clone the linked vivo/BluePixel repository and open its directory. Install its dependencies, then download the complete openvivo/BluePixel-Turbo checkpoint into the directory used by the examples.

Install repository dependencies · Bash
pip install -r requirements.txt
Download the complete checkpoint · Bash
hf download openvivo/BluePixel-Turbo --local-dir ./BluePixel-Turbo

Source:vivo README

Single-image inference

This README example edits the repository’s assets/test_input.jpg with an English instruction and saves output.jpg. The code and all parameter values below are reproduced unchanged.

Single-image example · Python
import torch
from PIL import Image
from vins_infer import load_pipeline

pipe = load_pipeline(
    "BluePixel-Turbo",
    device="cuda",
    vae_tiling=False,
    lora_scale=None,
    shift=0,
    mu_mode="empirical",
)

result = pipe(
    image=Image.open("assets/test_input.jpg").convert("RGB"),
    instruction="Change the gray sweater to burgundy red.",
    num_inference_steps=4,
    guidance_scale=3.0,
    target_pixels=4096 * 4096,
    generator=torch.Generator(device="cuda").manual_seed(42),
).images[0]

result.save("output.jpg")

Source:vivo README

Batch inference with JSONL

Prepare one task per line with image_name and edit_prompt fields. Resume is enabled by default: successful tasks are skipped and failed tasks are retried. The --no-resume option reruns tasks and overwrites their outputs; use it with a single worker. Choose a new output directory when changing the model or inference settings.

One task line · JSONL
{"image_name": "/path/to/input.png", "edit_prompt": "make the hair red"}
Batch inference command · Bash
CUDA_VISIBLE_DEVICES=0 python vins_infer.py \
    --model-dir BluePixel-Turbo \
    --jsonl /path/to/your_tasks.jsonl \
    --out-dir ./output \
    --target-pixels 16777216 \
    --steps 4 \
    --guidance 3.0 \
    --seed 42 \
    --mu-mode empirical \
    --instruction-field edit_prompt

Source:vivo README

1K, 2K and 4K pixel budgets

The README defines target_pixels as 1024² for 1K, 1440² for 2K and 4096² for 4K. These are pixel budgets: the model card says non-square inputs approximately retain their aspect ratio, with dimensions aligned to multiples of 64.

Published pixel budgets · Python
target_pixels = {
    "1K": 1024 * 1024,      # 1048576
    "2K": 1440 * 1440,      # 2073600
    "4K": 4096 * 4096,      # 16777216
}

Source:vivo READMEvivo model card

Reduce memory use with VAE tiling

The README recommends vae_tiling=True for devices with limited memory. The command-line equivalent is --vae-tiling. This reduces autoencoder memory use; no minimum VRAM amount is specified in the linked README or model card.

VAE tiling example · Python
pipe = load_pipeline(
    "BluePixel-Turbo", device="cuda", vae_tiling=True, mu_mode="empirical"
)

Source:vivo README

Read LICENSE and NOTICE before deployment

The repository and model card label the release Apache-2.0. However, NOTICE lists the Flux 2 Klein base model under the FLUX Non-Commercial License. This guide does not establish permission for commercial self-hosting; review the applicable license documents before using the weights.

Source:vivo model cardLicense text (LICENSE)Third-party notices (NOTICE)

ComfyUI: a third-party integration

T8mars/Comfyui-BluePixel-T8 is a third-party repository, not a vivo release. We have not tested its nodes or workflows. Follow its own documentation; this guide does not provide a verified ComfyUI setup.

Source:T8mars repository

Download questions

Do I need the weights to use the browser editor?

No. Use the edit-online button to open the website’s editor. Downloading and running the publisher’s checkpoint is a separate local workflow.

Is every output exactly 4096 × 4096?

No. The publisher describes square 4K output at 4096 × 4096. Non-square images approximately retain their aspect ratio within the pixel budget, with dimensions aligned to multiples of 64.

Does the BF16 configuration mean the download is stored in BF16?

No. The model card says the transformer weights are stored in float32, with a total_size of 36,314,324,992 bytes. The bfloat16 configuration field describes the intended inference dtype, not the storage dtype.

Where can I find earlier checkpoints?

The model card says earlier revisions remain in the Hugging Face repository’s commit history and revision browser. Check the model card snapshot for the revision you select.

What language should my editing instructions use?

The model card describes the checkpoint as intended for English editing instructions. It also warns that outputs may contain artifacts or unintended changes, so review the result before use.