Instructions to use ViTeX-Bench/ViTeX-Edit-14B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use ViTeX-Bench/ViTeX-Edit-14B with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("ViTeX-Bench/ViTeX-Edit-14B", dtype=torch.bfloat16, device_map="cuda") prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k" image = pipe(prompt).images[0] - Notebooks
- Google Colab
- Kaggle
| import torch | |
| def decomposite(tensor_A, tensor_B, rank): | |
| dtype, device = tensor_A.dtype, tensor_A.device | |
| weight = tensor_B @ tensor_A | |
| U, S, V = torch.pca_lowrank(weight.float(), q=rank) | |
| tensor_A = (V.T).to(dtype=dtype, device=device).contiguous() | |
| tensor_B = (U @ torch.diag(S)).to(dtype=dtype, device=device).contiguous() | |
| return tensor_A, tensor_B | |
| def reset_lora_rank(lora, rank): | |
| lora_merged = {} | |
| keys = [i for i in lora.keys() if ".lora_A." in i] | |
| for key in keys: | |
| tensor_A = lora[key] | |
| tensor_B = lora[key.replace(".lora_A.", ".lora_B.")] | |
| tensor_A, tensor_B = decomposite(tensor_A, tensor_B, rank) | |
| lora_merged[key] = tensor_A | |
| lora_merged[key.replace(".lora_A.", ".lora_B.")] = tensor_B | |
| return lora_merged |