Repository navigation
Releases: jia1217/vigenflow
Release list
🚀 VigenFlow v0.2.0 Beta 3: Qwen Image 2.1 Turbo and One-Command Install
This is a beta release. Please report any problems in Issues.
This release adds Qwen Image 2.1 Turbo for both text-to-image and image editing, so VigenFlow now has seven models. It also makes installation a single command. On Windows, a PowerShell installer sets everything up. On Ubuntu 24.04, a Docker installer does the same. Both installers start VigenFlow and OpenWebUI already connected to each other, so you don't have to install or configure OpenWebUI yourself.
✅ What's New
- 🆕 Qwen Image 2.1 Turbo (
qwen-image-2.1-turbo) is a new text-to-image model. It is especially good at rendering text in images. - 🖼️ Qwen Image 2.1 Turbo Edit (
qwen-image-2.1-turbo-edit) is a second image-editing model, alongsideflux2-klein-4B-edit. Attach a picture and describe the change you want. Like the FLUX.2 edit model, it edits 1024 × 1024 images only; see Supported Models. - 📦 One download covers both Qwen models. They share a 19.6 GB set of weights from Kelsey1217/Qwen-Image-2.1-Turbo-NPU-BFP16. Qwen's weights are under a research license, so the download asks you to accept it first. See Qwen License.
- 🪟 One-command install on Windows. A single PowerShell command checks the NPU driver, installs VigenFlow and downloads the models you pick. It then starts VigenFlow and OpenWebUI. OpenWebUI runs with its own private Python, so Docker and Python are not needed.
- 🐧 Docker install on Ubuntu 24.04. A single command installs the NPU driver and Docker if they are missing and downloads the models you pick. It then starts VigenFlow and OpenWebUI in containers.
- 💬 Images stay in your chats. OpenWebUI now stores each image with the chat. Images remain visible after VigenFlow restarts, and they also load when you open OpenWebUI through SSH or port forwarding. Each reply ends with the model, seed, steps and generation time.
- ⚡ Faster Krea 2 Turbo on Windows. The final VAE decode step takes 1.85 s instead of 2.24 s, and the images are byte-for-byte identical.
🧠 Supported Models
All models make 1024 × 1024 images. You can switch between them from the OpenWebUI model list without restarting VigenFlow. Times are approximate, for one image on a Ryzen AI 9 HX PRO 370.
Text-to-Image
| Model ID | Steps | Time per image |
|---|---|---|
flux2-klein-4B |
4 | ~9 s |
z-image-turbo |
4 or 8 | ~18 s |
flux1-schnell |
4 | ~20 s |
qwen-image-2.1-turbo 🆕 |
8 | ~35 s |
krea2-turbo |
8 | ~50 s |
Type a prompt to create a new image.
Image-to-Image (Editing)
| Model ID | Steps | Time per edit |
|---|---|---|
flux2-klein-4B-edit |
4 | ~18 s |
qwen-image-2.1-turbo-edit 🆕 |
8 | ~52 s |
Attach a picture and describe the change.
Both edit models only edit one 1024 × 1024 image.
🪟 Install on Windows (recommended)
You need a Ryzen AI 300-series PC with an XDNA 2 NPU and the AMD NPU driver installed. Open PowerShell (administrator rights are not needed) and run:
irm https://raw.githubusercontent.com/jia1217/vigenflow/main/install.ps1 | iexThe installer asks three questions:
- Install folder. The default is
%USERPROFILE%\VigenFlow. Pick a drive with room for the weights you want; see Model Weights. - Which models to download. Type their numbers separated by spaces. Choose 5 for Qwen; that one download gives you both text-to-image and editing.
- Whether to start OpenWebUI. Press Enter for yes. The first start downloads about 2 GB and takes several minutes.
When it finishes, OpenWebUI opens in your browser:
- Create an account. The first account becomes the admin.
- Start a new chat and pick a VigenFlow model.
- Turn on Image under Integrations in the message box, then type what you want to see. To edit a picture, pick an edit model, attach the picture and describe the change.
After a restart, open the Start menu and launch VigenFlow server and OpenWebUI for VigenFlow from the VigenFlow folder. You can also use the .cmd files in the install folder.
To update VigenFlow or add models, run the same command again. Weights you already have are kept and only updated if they have changed.
The install folder looks like this:
VigenFlow\
├── vigenflow_0.2.0-beta.3_windows_amd64\ the release package
├── all_model_weights\ model weights, shared by every version
├── openwebui\ OpenWebUI, its Python and your chats
├── Start VigenFlow.cmd
└── Start OpenWebUI.cmd
To run the installer without questions, set environment variables first. For example, $env:VIGENFLOW_MODELS = 'qwen_image_2_1_turbo'. The full list is at the top of install.ps1.
🐧 Install on Ubuntu 24.04 (recommended: Docker)
You need a Ryzen AI 300-series PC. Run:
curl -fsSL https://raw.githubusercontent.com/jia1217/vigenflow/main/docker/install.sh | bashThe installer:
- Checks for the NPU driver. If the driver is missing, it offers to install
amdxdna-dkmsfrom the Lemonade PPA. After that, reboot and run the same command again. - Installs Docker if neither Docker nor Podman is installed.
- Asks which models to download. Choose 5 for Qwen.
- Starts VigenFlow and OpenWebUI in containers and prints the address to open, usually http://localhost:8080.
In OpenWebUI, follow the same three steps as on Windows: create an account, pick a model, and turn on Image.
With Docker, both containers start again automatically after a reboot. To check or control them:
docker logs -f vigenflow # VigenFlow's log
docker stop vigenflow vigenflow-webui # stop both
docker start vigenflow vigenflow-webui # start both againThe installer prints the exact commands for your setup, with sudo if your user is not in the docker group yet, or podman in place of docker. To update VigenFlow or add models, run the installer again. Weights are kept in the vigenflow-weights Docker volume and chats in vigenflow-webui.
Notes:
- Use Docker Engine or Podman. Docker Desktop runs containers in a virtual machine that cannot see the NPU.
- XRT is not needed on the host. The image includes its own copy.
- To pin this exact release, set
VIGENFLOW_IMAGE=ghcr.io/jia1217/vigenflow:0.2.0-beta.3. By default the installer useslatest.
See docs/docker.md for the manual Docker steps and all installer options.
🧰 Manual Install (Windows ZIP)
Use this if you already run your own OpenWebUI or prefer to set things up by hand.
-
Download
vigenflow_0.2.0-beta.3_windows_amd64.zipbelow and extract it. The weights are saved next to the extracted folder, not inside it, so pick a drive with enough space. -
Download the weights:
cd vigenflow_0.2.0-beta.3_windows_amd64\prepare .\prepare_base.exe # FLUX.1-schnell, FLUX.2-klein-4B, Z-Image-Turbo, Krea 2 Turbo .\prepare_base.exe --only qwen_image_2_1_turbo # Qwen (both models)
You have to request Qwen by name. Running
prepare_base.exewithout--onlyskips it. -
Start the server:
cd ..\server_running .\vgf-serve.exeThe default model is
z-image-turbo. If you did not download it, add--modelwith a model you have, for example--model qwen-image-2.1-turbo. -
Connect OpenWebUI. The full steps are in the Beta 2 release notes. In short:
- Add a connection to
http://127.0.0.1:11283/v1. No API key is needed. - In Admin Panel → Settings → Images, turn on Image Generation, keep the engine set to OpenAI, set the API base URL to
http://127.0.0.1:11283/v1, and type any text as the API key. OpenWebUI won't save the setting without a key; VigenFlow ignores it. - For each model, set Function Calling to Native and keep Image Generation and Builtin Tools checked.
- For both edit models, also check Vision.
- Add a connection to
⬆️ Upgrading from Beta 2
- Installed with one of the installers: run the same command again. It installs Beta 3 and keeps your weights and OpenWebUI chats. Choose 5 to add Qwen.
- Installed from the Beta 2 Windows ZIP: you can switch to the installer and keep your weights. When it asks for the install folder, enter the folder that holds your existing
all_model_weightsfolder. Models you already have are only checked for updates. - Prefer the ZIP? Extract Beta 3 next to your existing
all_model_weightsfolder and runprepare_base.exe --only qwen_image_2_1_turboto add Qwen. Then stop the Beta 2 server and start the Beta 3 one. Once Beta 3 works, you can delete the Beta 2 folder.
In OpenWebUI, refresh the model list to see the two Qwen models. If you set up your models by hand, set up the Qwen models the same way, and check Vision for qwen-image-2.1-turbo-edit.
📥 Model Weights
| Weights | Used by | Download | Installer choice | --only name |
|---|---|---|---|---|
| FLUX.2-klein-4B | flux2-klein-4B, flux2-klein-4B-edit |
8 GB | 1 | flux2_klein_4B |
| Z-Image-Turbo | z-image-turbo |
12 GB | 2 | z_image_turbo |
| Krea 2 Turbo | krea2-turbo |
19 GB | 3 | krea2_turbo |
| FLUX.1-schnell | flux1-schnell |
27 GB | 4 | `... |
# 🚀 VigenFlow v0.2.0 Beta 2 — Krea 2 Turbo, a Shared Weights Folder, and Windows Fixes
This is a beta release. Please report any problems in Issues.
This release adds Krea 2 Turbo as a fifth model and moves the model weights to a folder next to the package, so every VigenFlow version on the PC shares one copy. It also fixes three Windows problems from Beta 1. It is available for Windows and Ubuntu 24.04.
If you already downloaded the weights with Beta 1, you can keep them: see Changes from Beta 1 below.
✅ What's New
- 🆕 Krea 2 Turbo is a new text-to-image model (
krea2-turbo, 8 steps). Its weights are under the Krea 2 Community License, soprepare_base.exeshows the license links and waits for you to typeI agreebefore it downloads them. - 📁 One weights folder for every version.
prepare_base.exenow saves the weights in anall_model_weightsfolder next to the extracted package, not inside it, and the server reads them from there. A later version extracted in the same place uses the same weights. - 🗂️ Each model has its own Hugging Face repository: FLUX.1-schnell, FLUX.2-klein-4B, Z-Image-Turbo and Krea 2 Turbo. All four are public; no Hugging Face account is needed.
- ⚡ FLUX.1-schnell starts faster on Windows. After a Windows Defender update, the first FLUX.1-schnell image could take more than a minute longer, because Defender scanned 8.6 GB of weight files that the worker opened but never read. The worker no longer opens them.
- 🧹 The Windows workers no longer leave files behind. They used to write
generated.txtordenoising_iteration_0.loginto their folders on every run. - 🧩 The Windows package includes one more runtime file,
msvcp140_atomic_wait.dll, which four of the workers need. In Beta 1 those workers started only on PCs that had the Microsoft Visual C++ Redistributable installed.
🧠 Supported Models
| Model ID | Task | Steps | Output size |
|---|---|---|---|
z-image-turbo |
Text-to-image | 4 or 8 | 1024 × 1024 |
flux1-schnell |
Text-to-image | 4 | 1024 × 1024 |
flux2-klein-4B |
Text-to-image | 4 | 1024 × 1024 |
krea2-turbo |
Text-to-image | 8 | 1024 × 1024 |
flux2-klein-4B-edit |
Image editing | 4 | 1024 × 1024 |
Switch between them from the OpenWebUI model list without restarting vgf-serve.
Krea 2 Turbo accepts 8 steps only, so an image takes longer than with the 4-step models. If your client sends "steps": 4 with every request (for example an OpenWebUI Additional Parameters setting), remove it so that each model uses its own default.
For editing, the input image is center-cropped to a square and resized to 1024 × 1024.
⚠️ Changes from Beta 1
The weights folder moved out of the package. Beta 1 kept the weights in all_model_weights inside the extracted folder. Beta 2 expects them next to it:
any folder/
├── all_model_weights/ model weights, created by prepare_base.exe
│ ├── flux1_schnell/
│ ├── flux2_klein_4B/
│ ├── krea2_turbo/
│ └── z_image_turbo/
└── vigenflow_0.2.0-beta.2_windows_amd64/ the extracted package
To keep the weights you downloaded with Beta 1, move the all_model_weights folder out of the Beta 1 folder so that it sits next to the Beta 2 folder, then run prepare_base.exe. It reports the three existing models as up to date and downloads only Krea 2 Turbo. If you do not move the folder, prepare_base.exe downloads everything again.
There are now five models in OpenWebUI. Set up krea2-turbo the same way as the others; see Connect OpenWebUI Desktop below.
📦 Downloads
| File | System |
|---|---|
vigenflow_0.2.0-beta.2_windows_amd64.zip |
Windows (x64) |
vigenflow_0.2.0-beta.2_ubuntu_amd64.zip |
Ubuntu 24.04 (x64) |
Both packages need an AMD XDNA 2 NPU (tested on the Ryzen AI 9 HX PRO 370) with the AMD NPU driver installed, and about 65 GB of free disk space for all the model weights, plus up to 10 GB more while they download. You can download fewer models; see About the Model Weights.
While it generates an image, Krea 2 Turbo uses about 15 GB of memory, FLUX.1-schnell about 11 GB, and the other models 8 to 9 GB (measured on Windows).
🪟 Getting Started on Windows
1. Download and extract
Download vigenflow_0.2.0-beta.2_windows_amd64.zip below and extract it on a drive with room for the weights. They are saved next to the extracted folder, not inside it.
2. Download the model weights (one time)
cd vigenflow_0.2.0-beta.2_windows_amd64\prepare
.\prepare_base.exeWhen it reaches Krea 2 Turbo, type I agree to accept the Krea license. Any other answer skips that model; the other three are still downloaded.
3. Start the server
cd ..\server_running
.\vgf-serve.exe🐧 Getting Started on Ubuntu 24.04
1. Install the requirements
Install the AMD XDNA driver (amdxdna) and XRT by following the AMD XDNA / MLIR-AIE installation guide. The workers look for XRT in /opt/xilinx/xrt/lib and in the system library path.
Then install the runtime libraries:
sudo apt install libboost-program-options1.83.0 libgomp1 libpng16-16t64 curl unzip2. Download and extract
unzip vigenflow_0.2.0-beta.2_ubuntu_amd64.zip
cd vigenflow_0.2.0-beta.2_ubuntu_amd643. Download the model weights (one time)
./prepare/prepare_base.exeWhen it reaches Krea 2 Turbo, type I agree to accept the Krea license.
4. Start the server
./server_running/vgf-serve📥 About the Model Weights
prepare_base.exe saves the weights into the all_model_weights folder next to the package. All four models together are about 65 GB (FLUX.1-schnell 27 GB, Krea 2 Turbo 19 GB, Z-Image-Turbo 12 GB, FLUX.2-klein-4B 8 GB). The edit model uses the FLUX.2-klein-4B weights.
To download fewer models, do one of these:
- Set
"enabled": falsefor a model inprepare/prepare_models.jsoncbefore you run the command. It is then skipped on every run. - Name the models for one run:
prepare_base.exe --only flux2_klein_4B,z_image_turbo.
The server starts with any set of models on disk. A request for a model whose weights are missing returns an error, and the other models keep working.
The Krea license in scripts. prepare_base.exe --accept_license accepts the Krea terms without the prompt, for runs with nobody at the keyboard.
Mirrors. prepare_base.exe reads the HF_ENDPOINT environment variable, so you can download through a Hugging Face mirror.
You can run prepare_base.exe again at any time. It only downloads models whose weights have changed, and it resumes an interrupted download.
🔌 Connect OpenWebUI Desktop
The server listens on port 11283. All settings below are in OpenWebUI's Admin Panel → Settings.
- Add the connection. In Connections, add an OpenAI API connection with the URL
http://127.0.0.1:11283/v1. Keep API Type set to Chat Completions (the default). No API key is needed. The five VigenFlow models then appear in the model list. - Turn on image generation. In Images, turn on Image Generation, keep the engine set to OpenAI, set the API base URL to
http://127.0.0.1:11283/v1, and type any text as the API key, then click Save. OpenWebUI will not save this setting without a key; VigenFlow ignores it. - Set up each model. In Models, edit each VigenFlow model:
- Set Function Calling to Native in its advanced parameters. Recent OpenWebUI versions already use Native by default.
- Keep Image Generation and Builtin Tools checked under Capabilities.
- For
flux2-klein-4B-edit, also check Vision so you can attach images.
- Generate an image. In a chat, pick a VigenFlow model, open Integrations in the message box and turn on Image, then type your prompt. To edit a picture, pick
flux2-klein-4B-edit, attach the picture, and describe the change.
VigenFlow provides the OpenAI-compatible API only. The Automatic1111 connection type in OpenWebUI does not work with it.
🛠️ Useful Options
Run vgf-serve -h to see all options. On Windows the command is .\vgf-serve.exe; on Ubuntu it is ./vgf-serve.
vgf-serve --model flux1-schnell # change the default model
vgf-serve -k true # save every generated image to the images folder
vgf-serve -p 2048 # use a different port
The default model is z-image-turbo. If you did not download its weights, start the server with --model and the ID of a model you have.
🚀 VigenFlow v0.2.0 Beta 1 — Faster NPU Image Generation, FLUX.1-schnell, and Built-in Editing
This is a beta release. Please report any problems in Issues. If you need the LoRA models, keep using v0.1.2.
This release moves every VigenFlow model to BFP16 weights, adds FLUX.1-schnell, and serves image editing next to the text-to-image models. Running on the NPU, VigenFlow generates images several times faster than the same laptop's integrated GPU. It is available for Windows and Ubuntu 24.04.
The download is also much smaller. Model weights are no longer packed into the zip; a one-time prepare step downloads them from Hugging Face.
✅ What's New
- ⚡ Several times faster than the integrated GPU. On the same laptop (Ryzen AI 9 HX 370), Z-Image-Turbo, FLUX.1-schnell and FLUX.2-klein-4B generate images several times faster on the NPU with VigenFlow than on the laptop's Radeon 890M integrated GPU with PyTorch. The GPU also stays free for other work.
- 🆕 FLUX.1-schnell is a new text-to-image model.
- 🔢 BFP16 weights are used for all models.
- 🖼️ Image editing is always available. In v0.1.2 you had to start
vgf-servewith the edit model ID. Nowflux2-klein-4B-editappears in the OpenWebUI model list with the other models. Attach a picture, describe the change, and the reply shows the edited image. - 🔁 Follow-up edits. A message such as
now make it nightedits the previous result without attaching it again. You can also create an image with a text-to-image model, then switch toflux2-klein-4B-editto edit it. - 📥 Weights are downloaded separately.
prepare_base.exefetches the pre-packed NPU weights from Kelsey1217/vigenflow-npu-weights. No Hugging Face account is needed. - 💾 Images are not saved to disk by default. The latest 32 images are kept in memory. Start the server with
-k trueto keep every image as a PNG file. - 🌐 Non-English prompts are passed to the models intact on Windows.
🧠 Supported Models
| Model ID | Task | Steps | Output size |
|---|---|---|---|
z-image-turbo |
Text-to-image | 4 or 8 | 1024 × 1024 |
flux1-schnell |
Text-to-image | 4 | 1024 × 1024 |
flux2-klein-4B |
Text-to-image | 4 | 1024 × 1024 |
flux2-klein-4B-edit |
Image editing | 4 | 1024 × 1024 |
Switch between them from the OpenWebUI model list without restarting vgf-serve.
For editing, the input image is center-cropped to a square and resized to 1024 × 1024.
⚠️ Changes from v0.1.2
Model IDs have changed. Update any scripts or OpenWebUI settings that use the old names:
| v0.1.2 | v0.2.0 |
|---|---|
flux.2-klein-4B |
flux2-klein-4B |
flux.2-klein-4B-edit |
flux2-klein-4B-edit |
z-image-turbo-BF16 |
z-image-turbo |
LoRA models are not included in this release. The LoRA variants and z-image-turbo-Q4_1-GGUF have been removed. LoRA support for the BFP16 models is planned for a future release. If you need LoRA today, keep using v0.1.2.
OpenWebUI needs Function Calling set to Native. See Connect OpenWebUI Desktop below.
📦 Downloads
| File | System |
|---|---|
vigenflow_0.2.0-beta.1_windows_amd64.zip |
Windows (x64) |
vigenflow_0.2.0-beta.1_ubuntu_amd64.zip |
Ubuntu 24.04 (x64) |
Both packages need an AMD XDNA 2 NPU (tested on the Ryzen AI 9 HX PRO 370) with the AMD NPU driver installed, and about 46 GB of free disk space for all the model weights, plus up to 10 GB more while they download.
🪟 Getting Started on Windows
1. Download and extract
Download vigenflow_0.2.0-beta.1_windows_amd64.zip below and extract it.
2. Download the model weights (one time)
cd vigenflow_0.2.0-beta.1_windows_amd64\prepare
.\prepare_base.exe3. Start the server
cd ..\server_running
.\vgf-serve.exe🐧 Getting Started on Ubuntu 24.04
1. Install the requirements
Install the AMD XDNA driver (amdxdna) and XRT by following the AMD XDNA / MLIR-AIE installation guide. The workers look for XRT in /opt/xilinx/xrt/lib and in the system library path.
Then install the runtime libraries:
sudo apt install libboost-program-options1.83.0 libgomp1 libpng16-16t64 curl unzip2. Download and extract
unzip vigenflow_0.2.0-beta.1_ubuntu_amd64.zip
cd vigenflow_0.2.0-beta.1_ubuntu_amd643. Download the model weights (one time)
./prepare/prepare_base.exe4. Start the server
./server_running/vgf-serve📥 About the Model Weights
prepare_base.exe saves the weights into the all_model_weights folder. All three models together are about 46 GB (FLUX.1-schnell 27 GB, Z-Image-Turbo 12 GB, FLUX.2-klein-4B 8 GB). To skip a model, set "enabled": false for it in prepare/prepare_models.jsonc before running the command. The edit model uses the FLUX.2-klein-4B weights.
You can run prepare_base.exe again at any time. It only downloads models whose weights have changed, and it resumes an interrupted download.
🔌 Connect OpenWebUI Desktop
The server listens on port 11283. All settings below are in OpenWebUI's Admin Panel → Settings.
- Add the connection. In Connections, add an OpenAI API connection with the URL
http://127.0.0.1:11283/v1. Keep API Type set to Chat Completions (the default). No API key is needed. The four VigenFlow models then appear in the model list. - Turn on image generation. In Images, turn on Image Generation, keep the engine set to OpenAI, set the API base URL to
http://127.0.0.1:11283/v1, and type any text as the API key, then click Save. OpenWebUI will not save this setting without a key; VigenFlow ignores it. - Generate an image. In a chat, pick a VigenFlow model, open Integrations in the message box and turn on Image, then type your prompt. To edit a picture, pick
flux2-klein-4B-edit, attach the picture, and describe the change.
🛠️ Useful Options
Run vgf-serve -h to see all options. On Windows the command is .\vgf-serve.exe; on Ubuntu it is ./vgf-serve.
vgf-serve --model flux1-schnell # change the default model
vgf-serve -k true # save every generated image to the images folder
vgf-serve -p 2048 # use a different port
VigenFlow v0.1.2 — Simplified Image Generation Model Switching
🚀 VigenFlow v0.1.2 — Simplified Image Generation Model Switching
This release simplifies the way image generation models are served and switched in VigenFlow.
In previous versions, users needed to launch vgf-serve with a specific model name in order to use different image generation models or LoRA variants.
For example:
./vgf-serve flux.2-klein-4B
./vgf-serve flux.2-klein-4B-lora
./vgf-serve z-image-turbo-Q4_1-GGUF
./vgf-serve z-image-turbo-Q4_1-GGUF-loraStarting from v0.1.2, this is no longer required for image generation models.
✅What's New
You only need to launch vgf-serve once:
./vgf-serveBy default, VigenFlow will start the image generation model service and make the supported image generation models available in OpenWebUI.
You can then switch between different base models and LoRA models directly from the OpenWebUI model list, without restarting vgf-serve or manually entering a model name.
Supported Image Generation Models
The following image generation models can now be selected directly from the OpenWebUI model list:
z-image-turbo-BF16z-image-turbo-BF16-loraz-image-turbo-Q4_1-GGUFz-image-turbo-Q4_1-GGUF-loraflux.2-klein-4Bflux.2-klein-4B-lora
Previous Usage
In previous versions, users needed to launch vgf-serve with a specific model name to use different image generation models or LoRA variants.
For example:
./vgf-serve flux.2-klein-4B
./vgf-serve flux.2-klein-4B-lora
./vgf-serve z-image-turbo-Q4_1-GGUF
./vgf-serve z-image-turbo-Q4_1-GGUF-loraStarting from VigenFlow v0.1.2, this is no longer required for image generation models.
✅New Usage
For image generation models, simply run:
./vgf-serveThen select the model you want to use from the OpenWebUI model list.
You can switch between base models and LoRA-enabled model variants directly inside OpenWebUI.
Important Note for Image Editing Models
This update only changes the workflow for image generation models.
For image editing models, you still need to specify the model name when launching vgf-serve if you want to use a different image editing model.
Example:
./vgf-serve <image-edit-model-name>Summary
- Simplified the startup workflow for image generation models.
- Added default image generation model service startup with
./vgf-serve. - Removed the need to manually pass image generation model names when switching between supported image generation models.
- Added support for switching base models and LoRA models directly from the OpenWebUI model list.
- Image editing models still require specifying the model name manually when switching between different image editing models.
Vigenflow v0.1.1 — LoRA Support for Z-Image-Turbo and FLUX.2-Klein-4B
🚀 VigenFlow v0.1.1 — LoRA Models, GGUF Support, and Automatic Model Setup
This release adds LoRA model support for two base model families:
- 🧠 Z-Image-Turbo
- 🧠 FLUX.2-Klein-4B
It also adds support for GGUF model weights, automatic model downloading from Hugging Face, and automatic unpacking/conversion into the format required by the NPU backend.
✅ What's New
🧩 LoRA Support for Two Base Models
VigenFlow now supports LoRA models for:
- ✅ Z-Image-Turbo
- ✅ FLUX.2-Klein-4B
You can now run LoRA-enabled versions of these models directly with vgf-serve.
The LoRA configuration is flexible. You can add, delete, or modify LoRA models by editing the included .jsonc configuration files.
💾 GGUF Model Weight Support
VigenFlow now supports GGUF model weights, including quantized GGUF models such as:
z-image-turbo-Q4_1-GGUFz-image-turbo-Q4_1-GGUF-lora
This makes it possible to use GGUF-format model weights with the VigenFlow NPU runtime.
📥 Automatic Hugging Face Model Download
VigenFlow can now automatically download required model weights from Hugging Face.
When a model is launched for the first time, VigenFlow will:
- 🔍 Check whether the required model weights already exist
- 📥 Download missing weights from Hugging Face automatically
- 📦 Unpack the downloaded files
- ⚙️ Prepare the weights into the format required by the NPU backend
- 🚀 Start the selected model
This makes model setup much easier and reduces the amount of manual preparation needed.
🚀 Usage
Run a model with:
./vgf-serve model_nameFor example:
./vgf-serve flux.2-klein-4B
./vgf-serve flux.2-klein-4B-lora
./vgf-serve z-image-turbo-Q4_1-GGUF
./vgf-serve z-image-turbo-Q4_1-GGUF-loraTo view all available models, run:
./vgf-serve -h📋 Available Models
Available model examples include:
flux.2-klein-4B
flux.2-klein-4B-lora
flux.2-klein-4B-edit
flux.2-klein-4B-edit-lora
z-image-turbo-Q4_1-GGUF
z-image-turbo-Q4_1-GGUF-lora
z-image-turbo-BF16
z-image-turbo-BF16-lora
🛠 LoRA Configuration
The release .zip package includes four .jsonc configuration files.
These .jsonc files contain the LoRA model weight information used by VigenFlow.
You can customize the available LoRA models by editing these files:
- ➕ Add new LoRA model entries
- ➖ Delete existing LoRA model entries
- ✏️ Modify LoRA model weight paths or metadata
- 🔄 Update the LoRA list according to your own model package
After editing the .jsonc files, you can run the corresponding LoRA model with vgf-serve.
📦 Release Package Notes
The .zip package contains the required configuration files for LoRA model management.
Please check the included .jsonc files if you want to customize which LoRA models are available for:
- 🧠
flux.2-klein-4B-lora - 🧠
flux.2-klein-4B-edit-lora - 🧠
z-image-turbo-Q4_1-GGUF-lora - 🧠
z-image-turbo-BF16-lora
💡 Notes
- The first launch of a model may take longer because model weights may need to be downloaded and prepared.
- Make sure the model name passed to
./vgf-servematches one of the names shown by./vgf-serve -h. - LoRA models can be customized by editing the included
.jsoncfiles. - GGUF model weights are now supported for compatible models.
- VigenFlow will automatically unpack and prepare downloaded weights into the format required by the NPU backend.
✅ Summary
This release improves VigenFlow with:
- 🧩 LoRA support for Z-Image-Turbo
- 🧩 LoRA support for FLUX.2-Klein-4B
- 💾 GGUF model weight support
- 📥 Automatic Hugging Face model download
- 📦 Automatic unpacking and NPU-format preparation
- 🛠 Editable
.jsoncLoRA configuration files - 🚀 Simple model launching through
./vgf-serve model_name
Vigenflow v0.1.0 - Z-Image-Turbo and FLUX.2-Klein-4B on AMD NPU
🚀 Vigenflow v0.1.0 — Diffusion Models on AMD NPU
We’re excited to announce the v0.1.0 of Vigenflow, a lightweight and efficient diffusion transformer inference engine optimized exclusively for AMD NPUs (XDNA/XDNA2 architecture).
✅ Supported Models
Z-Image-Turbo(Fast 4-step/8-step image generation)FLUX.2-Klein-4B(High-quality quantized DiT using 4-step)
💾 Installation
💡 Platform: Linux (Ubuntu 24.04 recommended) and Windows
Prerequisites: AMD Xilinx Runtime (XRT) library must be installed.
🧠 Usage Modes
Windows systerm
Step 1: Download the ZIP File
Download the Windows ZIP package.
Step 2: Run the Server
Open PowerShell or Command Prompt in the extracted folder and run the generated server binary.
You can first check the available options with:
.\vgf-serve.exe -h
.\vgf-serve.exe z-image-turbo -p 2048Ubuntu systerm
📥 Download model weights via CLI
The fastest way to download the full weight structure:
sudo apt install python3.14-venv
python3 -m venv myenv
source myenv/bin/activate
sudo apt update- Install the Hub library:
pip install -U "huggingface_hub[cli]" - Login:
hf auth login - Download the whole repo:
hf download Kelsey1217/Z-Image-Turbo-npu --local-dir ./Z-Image-Turbo
Install the deb file
sudo dpkg -i vigenflow_1.3_amd64.debIf any dependencies are missing, run:
sudo apt-get install -fStart the Server After Installation
After installing the package, you should see a message indicating that vgf-serve has been installed successfully and added to your system path.
You can then verify the installation and view the available server options by running:
vgf-serve -hThis command will display the supported arguments, such as the model weights path, NPU files path, output directory, port, and other server settings.
After that, you can launch the server with your desired configuration. For example:
vgf-serve \
-w /path/to/model_weights \
-k false \
-m model_name \After installation, you can integrate VigenFlow with Open WebUI and use Open WebUI to call your own server.