Signed-off-by: Gaohan123 <hgaoaf@connect.ust.hk> Signed-off-by: Hongsheng Liu <liuhongsheng4@huawei.com> Co-authored-by: Hongsheng Liu <liuhongsheng4@huawei.com>
2.4 KiB
2.4 KiB
Text-To-Image
This folder provides several entrypoints for experimenting with Qwen/Qwen-Image Qwen/Qwen-Image-2512 Tongyi-MAI/Z-Image-Turbo using vLLM-Omni:
text_to_image.py: command-line script for single image generation with advanced options.web_demo.py: lightweight Gradio UI for interactive prompt/seed/CFG exploration.
Note that when you pass in multiple independent prompts, they will be processed sequentially. Batching requests is currently not supported.
Basic Usage
from vllm_omni.entrypoints.omni import Omni
if __name__ == "__main__":
omni = Omni(model="Qwen/Qwen-Image")
prompt = "a cup of coffee on the table"
outputs = omni.generate(prompt)
images = outputs[0].request_output[0].images
images[0].save("coffee.png")
Or put more than one prompt in a request, processing them sequentially.
from vllm_omni.entrypoints.omni import Omni
if __name__ == "__main__":
omni = Omni(model="Qwen/Qwen-Image")
prompts = [
"a cup of coffee on a table",
"a toy dinosaur on a sandy beach",
"a fox waking up in bed and yawning",
]
outputs = omni.generate(prompts)
for i, output in enumerate(outputs):
image = output.request_output[0].images[0].save(f"{i}.jpg")
Local CLI Usage
python text_to_image.py \
--model Tongyi-MAI/Z-Image-Turbo \
--prompt "a cup of coffee on the table" \
--seed 42 \
--cfg_scale 4.0 \
--num_images_per_prompt 1 \
--num_inference_steps 50 \
--height 1024 \
--width 1024 \
--output outputs/coffee.png
Key arguments:
--prompt: text description (string).--seed: integer seed for deterministic sampling.--cfg_scale: true CFG scale (model-specific guidance strength).--num_images_per_prompt: number of images to generate per prompt (saves asoutput,output_1, ...).--num_inference_steps: diffusion sampling steps (more steps = higher quality, slower).--height/--width: output resolution (defaults 1024x1024).--output: path to save the generated PNG.
ℹ️ Qwen-Image currently publishes best-effort presets at
1328x1328,1664x928,928x1664,1472x1140,1140x1472,1584x1056, and1056x1584. Adjust--height/--widthaccordingly for the most reliable outcomes.
Web UI Demo
Launch the gradio demo:
python gradio_demo.py --port 7862
Then open http://localhost:7862/ on your local browser to interact with the web UI.