Instructions to use lvladikov/Krea2-Turbo-Distill-2step-LoRA with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use lvladikov/Krea2-Turbo-Distill-2step-LoRA with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("krea/Krea-2-Turbo", dtype=torch.bfloat16, device_map="cuda") pipe.load_lora_weights("lvladikov/Krea2-Turbo-Distill-2step-LoRA") prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k" image = pipe(prompt).images[0] - Inference
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Draw Things
- DiffusionBee
Download krea2_turbo_2step_lora_t2i.json from lvladikov/Krea2-Turbo-Distill-2step-LoRA: direct link, hf CLI and curl.
- Browser
- Download file 10.8 kB
-
https://huggingface.co/lvladikov/Krea2-Turbo-Distill-2step-LoRA/resolve/a13553def5b5457798094de179b47d8d1a55127e/krea2_turbo_2step_lora_t2i.json
- Command line
-
hf download hf://lvladikov/Krea2-Turbo-Distill-2step-LoRA@a13553def5b5457798094de179b47d8d1a55127e/krea2_turbo_2step_lora_t2i.json
-
curl -L -o krea2_turbo_2step_lora_t2i.json https://huggingface.co/lvladikov/Krea2-Turbo-Distill-2step-LoRA/resolve/a13553def5b5457798094de179b47d8d1a55127e/krea2_turbo_2step_lora_t2i.json
10.8 kB
| { | |
| "id": "00000000-0000-0000-0000-000004ea24e7", | |
| "revision": 0, | |
| "last_node_id": 11, | |
| "last_link_id": 10, | |
| "nodes": [ | |
| { | |
| "id": 1, | |
| "type": "UNETLoader", | |
| "pos": [ | |
| 40, | |
| 60 | |
| ], | |
| "size": [ | |
| 370, | |
| 82 | |
| ], | |
| "flags": {}, | |
| "order": 0, | |
| "mode": 0, | |
| "inputs": [], | |
| "outputs": [ | |
| { | |
| "name": "MODEL", | |
| "type": "MODEL", | |
| "links": [ | |
| 1 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "UNETLoader", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| "krea2_turbo_bf16.safetensors", | |
| "default" | |
| ] | |
| }, | |
| { | |
| "id": 2, | |
| "type": "LoraLoaderModelOnly", | |
| "pos": [ | |
| 40, | |
| 190 | |
| ], | |
| "size": [ | |
| 370, | |
| 82 | |
| ], | |
| "flags": {}, | |
| "order": 1, | |
| "mode": 0, | |
| "inputs": [ | |
| { | |
| "name": "model", | |
| "type": "MODEL", | |
| "link": 1 | |
| } | |
| ], | |
| "outputs": [ | |
| { | |
| "name": "MODEL", | |
| "type": "MODEL", | |
| "links": [ | |
| 2 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "LoraLoaderModelOnly", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| "krea2_turbo_2step_rank_64_lora_comfyui.safetensors", | |
| 1.0 | |
| ] | |
| }, | |
| { | |
| "id": 3, | |
| "type": "CLIPLoader", | |
| "pos": [ | |
| 40, | |
| 320 | |
| ], | |
| "size": [ | |
| 370, | |
| 106 | |
| ], | |
| "flags": {}, | |
| "order": 2, | |
| "mode": 0, | |
| "inputs": [], | |
| "outputs": [ | |
| { | |
| "name": "CLIP", | |
| "type": "CLIP", | |
| "links": [ | |
| 3 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "CLIPLoader", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| "qwen3vl_4b_bf16.safetensors", | |
| "krea2", | |
| "default" | |
| ] | |
| }, | |
| { | |
| "id": 8, | |
| "type": "VAELoader", | |
| "pos": [ | |
| 40, | |
| 470 | |
| ], | |
| "size": [ | |
| 370, | |
| 58 | |
| ], | |
| "flags": {}, | |
| "order": 3, | |
| "mode": 0, | |
| "inputs": [], | |
| "outputs": [ | |
| { | |
| "name": "VAE", | |
| "type": "VAE", | |
| "links": [ | |
| 9 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "VAELoader", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| "qwen_image_vae.safetensors" | |
| ] | |
| }, | |
| { | |
| "id": 4, | |
| "type": "CLIPTextEncode", | |
| "pos": [ | |
| 450, | |
| 60 | |
| ], | |
| "size": [ | |
| 430, | |
| 200 | |
| ], | |
| "flags": {}, | |
| "order": 4, | |
| "mode": 0, | |
| "inputs": [ | |
| { | |
| "name": "clip", | |
| "type": "CLIP", | |
| "link": 3 | |
| } | |
| ], | |
| "outputs": [ | |
| { | |
| "name": "CONDITIONING", | |
| "type": "CONDITIONING", | |
| "links": [ | |
| 4, | |
| 5 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "CLIPTextEncode", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| "Portrait of a young woman with freckles and windswept auburn hair, soft window light, shallow depth of field, photograph, sharp detail" | |
| ] | |
| }, | |
| { | |
| "id": 5, | |
| "type": "ConditioningZeroOut", | |
| "pos": [ | |
| 450, | |
| 300 | |
| ], | |
| "size": [ | |
| 430, | |
| 30 | |
| ], | |
| "flags": {}, | |
| "order": 5, | |
| "mode": 0, | |
| "inputs": [ | |
| { | |
| "name": "conditioning", | |
| "type": "CONDITIONING", | |
| "link": 5 | |
| } | |
| ], | |
| "outputs": [ | |
| { | |
| "name": "CONDITIONING", | |
| "type": "CONDITIONING", | |
| "links": [ | |
| 6 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "ConditioningZeroOut", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [] | |
| }, | |
| { | |
| "id": 6, | |
| "type": "EmptyLatentImage", | |
| "pos": [ | |
| 450, | |
| 380 | |
| ], | |
| "size": [ | |
| 430, | |
| 106 | |
| ], | |
| "flags": {}, | |
| "order": 6, | |
| "mode": 0, | |
| "inputs": [], | |
| "outputs": [ | |
| { | |
| "name": "LATENT", | |
| "type": "LATENT", | |
| "links": [ | |
| 7 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "EmptyLatentImage", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| 1024, | |
| 1024, | |
| 1 | |
| ] | |
| }, | |
| { | |
| "id": 7, | |
| "type": "KSampler", | |
| "pos": [ | |
| 930, | |
| 60 | |
| ], | |
| "size": [ | |
| 330, | |
| 262 | |
| ], | |
| "flags": {}, | |
| "order": 7, | |
| "mode": 0, | |
| "inputs": [ | |
| { | |
| "name": "model", | |
| "type": "MODEL", | |
| "link": 2 | |
| }, | |
| { | |
| "name": "positive", | |
| "type": "CONDITIONING", | |
| "link": 4 | |
| }, | |
| { | |
| "name": "negative", | |
| "type": "CONDITIONING", | |
| "link": 6 | |
| }, | |
| { | |
| "name": "latent_image", | |
| "type": "LATENT", | |
| "link": 7 | |
| } | |
| ], | |
| "outputs": [ | |
| { | |
| "name": "LATENT", | |
| "type": "LATENT", | |
| "links": [ | |
| 8 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "KSampler", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| 0, | |
| "randomize", | |
| 2, | |
| 1, | |
| "euler", | |
| "simple", | |
| 1 | |
| ] | |
| }, | |
| { | |
| "id": 9, | |
| "type": "VAEDecode", | |
| "pos": [ | |
| 1300, | |
| 60 | |
| ], | |
| "size": [ | |
| 210, | |
| 46 | |
| ], | |
| "flags": {}, | |
| "order": 8, | |
| "mode": 0, | |
| "inputs": [ | |
| { | |
| "name": "samples", | |
| "type": "LATENT", | |
| "link": 8 | |
| }, | |
| { | |
| "name": "vae", | |
| "type": "VAE", | |
| "link": 9 | |
| } | |
| ], | |
| "outputs": [ | |
| { | |
| "name": "IMAGE", | |
| "type": "IMAGE", | |
| "links": [ | |
| 10 | |
| ], | |
| "slot_index": 0 | |
| } | |
| ], | |
| "properties": { | |
| "Node name for S&R": "VAEDecode", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [] | |
| }, | |
| { | |
| "id": 10, | |
| "type": "SaveImage", | |
| "pos": [ | |
| 1300, | |
| 150 | |
| ], | |
| "size": [ | |
| 420, | |
| 460 | |
| ], | |
| "flags": {}, | |
| "order": 9, | |
| "mode": 0, | |
| "inputs": [ | |
| { | |
| "name": "images", | |
| "type": "IMAGE", | |
| "link": 10 | |
| } | |
| ], | |
| "outputs": [], | |
| "properties": { | |
| "Node name for S&R": "SaveImage", | |
| "cnr_id": "comfy-core" | |
| }, | |
| "widgets_values": [ | |
| "krea2_turbo_2step_lora" | |
| ] | |
| }, | |
| { | |
| "id": 11, | |
| "type": "MarkdownNote", | |
| "pos": [ | |
| 930, | |
| 380 | |
| ], | |
| "size": [ | |
| 560, | |
| 400 | |
| ], | |
| "flags": {}, | |
| "order": 10, | |
| "mode": 0, | |
| "inputs": [], | |
| "outputs": [], | |
| "properties": {}, | |
| "widgets_values": [ | |
| "## Krea 2 Turbo \u2014 2-step distillation LoRA\n\nKrea 2 Turbo normally needs **8 steps**. With this LoRA it runs at **2** \u2014 a fast preview, a quarter of the cost.\n\n### Files\n| file | put it in |\n| --- | --- |\n| `krea2_turbo_bf16.safetensors` | `models/diffusion_models/` |\n| `qwen3vl_4b_bf16.safetensors` | `models/text_encoders/` |\n| `qwen_image_vae.safetensors` | `models/vae/` |\n| `krea2_turbo_2step_rank_64_lora_comfyui.safetensors` | `models/loras/` |\n\nThe first three are from [Comfy-Org/Krea-2](https://huggingface.co/Comfy-Org/Krea-2).\n\n**The LoRA is independent of the base build.** It is applied on top of the diffusion model by ComfyUI's own loader, which handles any dequantisation, so a quantised or otherwise optimised build of Krea 2 Turbo behaves just as bf16 does. Please use whichever variant suits your hardware \u2014 set it in **Load Diffusion Model** and leave the rest of the workflow untouched.\n\nThis workflow ships **full bf16** only because it is the one build guaranteed to run everywhere: bf16 needs no backend-specific kernel, so it works on CUDA, Apple Silicon and CPU alike. Smaller options: `krea2_turbo_int8_convrot` (13.5 GB, either platform), or `krea2_turbo_fp8_scaled` (13.1 GB) which is **NVIDIA-only** \u2014 MPS has no `Float8_e4m3fn` support and fails at the sampler. The text encoder has bf16 and fp8 builds only; there is no int8 one.\n\n> **Do not use `fp8_scaled` on Apple Silicon.** MPS has no `Float8_e4m3fn` support, so it fails at the sampler with *\"Trying to convert Float8_e4m3fn to the MPS backend\"*. It is fine on NVIDIA. `krea2_turbo_bf16` (26.3 GB) also works everywhere if you prefer full precision \u2014 just set the matching name in the loader.\n\n### Settings that matter\n- **steps 2**, **cfg 1.0** (Turbo is CFG-free), sampler **euler**, scheduler **simple**\n- LoRA strength **1.0**\n- The negative is a `ConditioningZeroOut` \u2014 at cfg 1.0 it is not evaluated, so there is nothing to write in it\n\nSet steps back to 8 and bypass the LoRA node (Ctrl+B) to compare against stock Turbo.\n\n### Metadata\nThe LoRA file in this repository is always the **latest** published checkpoint of the run \u2014 the file name never changes, so this workflow never needs updating. Which checkpoint it is today is in `krea2_turbo_2step_rank_64_lora_checkpoint_info.md` next to it, and in the file's own safetensors metadata along with the base model, the method and the inference settings above." | |
| ], | |
| "color": "#432", | |
| "bgcolor": "#653" | |
| } | |
| ], | |
| "links": [ | |
| [ | |
| 1, | |
| 1, | |
| 0, | |
| 2, | |
| 0, | |
| "MODEL" | |
| ], | |
| [ | |
| 2, | |
| 2, | |
| 0, | |
| 7, | |
| 0, | |
| "MODEL" | |
| ], | |
| [ | |
| 3, | |
| 3, | |
| 0, | |
| 4, | |
| 0, | |
| "CLIP" | |
| ], | |
| [ | |
| 4, | |
| 4, | |
| 0, | |
| 7, | |
| 1, | |
| "CONDITIONING" | |
| ], | |
| [ | |
| 5, | |
| 4, | |
| 0, | |
| 5, | |
| 0, | |
| "CONDITIONING" | |
| ], | |
| [ | |
| 6, | |
| 5, | |
| 0, | |
| 7, | |
| 2, | |
| "CONDITIONING" | |
| ], | |
| [ | |
| 7, | |
| 6, | |
| 0, | |
| 7, | |
| 3, | |
| "LATENT" | |
| ], | |
| [ | |
| 8, | |
| 7, | |
| 0, | |
| 9, | |
| 0, | |
| "LATENT" | |
| ], | |
| [ | |
| 9, | |
| 8, | |
| 0, | |
| 9, | |
| 1, | |
| "VAE" | |
| ], | |
| [ | |
| 10, | |
| 9, | |
| 0, | |
| 10, | |
| 0, | |
| "IMAGE" | |
| ] | |
| ], | |
| "groups": [], | |
| "config": {}, | |
| "extra": { | |
| "ds": { | |
| "scale": 0.85, | |
| "offset": [ | |
| 0, | |
| 0 | |
| ] | |
| } | |
| }, | |
| "version": 0.4 | |
| } |