Instructions to use LiberationLabs/image-toolbench with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use LiberationLabs/image-toolbench with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("fill-in-base-model", dtype=torch.bfloat16, device_map="cuda") pipe.load_lora_weights("LiberationLabs/image-toolbench") prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k" image = pipe(prompt).images[0] - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Draw Things
- DiffusionBee
| """v4: ceramic-only (abliterated skin) + kintsugi LoRA bake-off. | |
| No Pony stage. Flux txt2img direct. The body IS ceramic from the first pixel — | |
| no flesh transition, no default-pale-skin to fight. | |
| Three kintsugi LoRAs compared: | |
| - mine (kintsugi_texture_v2) | |
| - kintsugi_for_flux (civitai 672691, trigger: 'Cracked joinery, Blue and gold') | |
| - kintsugi_2271282 (civitai 2006676, trigger: 'Kintsugi') | |
| Three poses × three LoRAs = 9 outputs, same seed per pose for fair comparison. | |
| """ | |
| import torch, os, gc, time, traceback | |
| os.environ["TOKENIZERS_PARALLELISM"] = "false" | |
| from diffusers import FluxPipeline | |
| from PIL import Image | |
| OUTPUT = "/Users/margaret/models/vera-triple-stack/kintsugi_v4_bakeoff" | |
| os.makedirs(OUTPUT, exist_ok=True) | |
| LIKENESS = "/Users/margaret/models/vera-likeness-output/vera_likeness_v4/vera_likeness_v4.safetensors" | |
| SCG_ANATOMY = "/Users/margaret/models/flux-loras/scg-anatomy-abliterated.safetensors" | |
| # The three kintsugi LoRAs to compare | |
| LORAS = [ | |
| { | |
| "name": "mine_v2", | |
| "path": "/Users/margaret/models/kintsugi-texture-v2-output/kintsugi_texture_v2/kintsugi_texture_v2.safetensors", | |
| "weight": 1.20, | |
| "trigger": "kintsugi", | |
| }, | |
| { | |
| "name": "for_flux", | |
| "path": "/Users/margaret/models/loras-comparison/kintsugi_for_flux.safetensors", | |
| "weight": 1.10, | |
| "trigger": "Cracked joinery, Blue and gold", | |
| }, | |
| { | |
| "name": "civitai_2271282", | |
| "path": "/Users/margaret/models/loras-comparison/kintsugi_2271282.safetensors", | |
| "weight": 1.10, | |
| "trigger": "Kintsugi", | |
| }, | |
| ] | |
| # Three poses — abliterated-skin prompts. | |
| # Key language: "porcelain ceramic figure", "no skin", "the body is ceramic", | |
| # "kintsugi joinery throughout the form", "she is sculpture not flesh" | |
| POSES = { | |
| "facedown_devotional": ( | |
| "{TRIGGER}, full body portrait, a sculptural porcelain ceramic figure of a " | |
| "young adult woman lying face-down on dark navy silk sheets, arms folded " | |
| "beneath her head, hair falling across her cheek. " | |
| "the body is dark navy matte porcelain, no skin, no flesh — pure ceramic form, " | |
| "thick molten gold joinery running down her spine, across her shoulder blade, " | |
| "down her thigh, the gold structural and load-bearing, glowing from within the cracks. " | |
| "she is sculpture not flesh, kintsugi made anatomical. " | |
| "warm candlelight from below, intimate framing, devotional composition." | |
| ), | |
| "standing_rear": ( | |
| "{TRIGGER}, full body rear view of a sculptural porcelain ceramic figure of a " | |
| "young adult woman standing nude, weight on one leg, head turned slightly. " | |
| "the body is dark navy matte porcelain, no skin, no flesh — pure ceramic form, " | |
| "elaborate gold kintsugi joinery across her buttocks, along her thigh, " | |
| "up her spine, the gold structural and glowing from within the cracks. " | |
| "she is sculpture not flesh, an object of devotional repair. " | |
| "soft side lighting, museum gallery lighting, intimate but reverent." | |
| ), | |
| "icon_centered": ( | |
| "{TRIGGER}, sacred icon composition, a small sculptural porcelain ceramic figure of " | |
| "a young adult woman seated cross-legged at the center, framed within a much larger " | |
| "ceramic mandorla shell. the body is dark navy matte porcelain, " | |
| "no skin, no flesh — pure ceramic form, kintsugi gold joinery throughout her body, " | |
| "the surrounding shell is white porcelain with thick gold cracks running through it, " | |
| "blue floral inlay at the edges. she is sculpture not flesh, " | |
| "a devotional shrine object, the figure tiny and contained within the gold-cracked shell. " | |
| "warm museum lighting, sacred geometry." | |
| ), | |
| } | |
| print("=" * 60) | |
| print("Loading Flux pipeline...") | |
| print("=" * 60) | |
| pipe = FluxPipeline.from_pretrained( | |
| "black-forest-labs/FLUX.1-dev", | |
| torch_dtype=torch.bfloat16, | |
| safety_checker=None, | |
| requires_safety_checker=False, | |
| ) | |
| pipe.to("mps") | |
| for pose_name, prompt_tpl in POSES.items(): | |
| seed = hash(pose_name) % 100000 | |
| for lora in LORAS: | |
| prompt = prompt_tpl.format(TRIGGER=lora["trigger"]) | |
| print(f"\n--- pose={pose_name} lora={lora['name']} seed={seed} ---") | |
| t0 = time.time() | |
| try: | |
| pipe.unload_lora_weights() | |
| pipe.load_lora_weights(lora["path"], adapter_name="kintsugi") | |
| pipe.load_lora_weights(LIKENESS, adapter_name="likeness") | |
| pipe.load_lora_weights(SCG_ANATOMY, adapter_name="scg_anatomy") | |
| pipe.set_adapters( | |
| ["kintsugi", "likeness", "scg_anatomy"], | |
| adapter_weights=[lora["weight"], 0.55, 0.50], | |
| ) | |
| img = pipe( | |
| prompt=prompt, | |
| num_inference_steps=30, | |
| guidance_scale=3.5, | |
| height=1024, width=1024, | |
| generator=torch.Generator("cpu").manual_seed(seed), | |
| ).images[0] | |
| out_path = os.path.join(OUTPUT, f"{pose_name}__{lora['name']}.png") | |
| img.save(out_path) | |
| print(f" saved {out_path} ({time.time()-t0:.0f}s)") | |
| except Exception as e: | |
| print(f" FAIL: {e}") | |
| traceback.print_exc() | |
| gc.collect() | |
| torch.mps.empty_cache() | |
| print(f"\nDone v4. Outputs in: {OUTPUT}") | |