Qwen-Image-2.1部署实战:基于vLLM-Omni搭建图像生成 API 服务
- 摘要
- Qwen-Image-2.1
- 一、环境说明
- 二、创建 Conda 环境
- 三、下载模型
- 四、安装 vLLM-Omni
- 五、启动 API 服务
- 六、验证服务
- 七、接口调用
- 7.1 文生图
- 八、性能参考
摘要
本文记录了使用 vLLM-Omni 部署 Qwen-Image-2.1 图像生成模型的完整过程,包括环境准备、源码安装、模型下载、服务启动、OpenAI 兼容 API 调用
Qwen-Image-2.1
Qwen-Image-2.1 是通义千问推出的图像生成与编辑模型,支持文生图、参考图编辑,原生支持多张参考图和透明背景。本文使用 vLLM-Omni 将其部署为 OpenAI 兼容的 API 服务,方便其他程序调用。
一、环境说明
| 项目 | 内容 |
|---|---|
| 操作系统 | Ubuntu |
| GPU | NVIDIA RTX A6000 48GB |
| CUDA | 13.2 |
| Python | 3.12(Conda 环境) |
| 模型 | Qwen/Qwen-Image-2.1 |
| 推理框架 | vLLM-Omni |
| 服务端口 | 8000 |
二、创建 Conda 环境
conda create-nvllm-omnipython=3.12-yconda activate vllm-omni安装 PyTorch 和 vLLM:
pipinstalltorch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu130 pipinstallvllm==0.29.0配置国内 pip 镜像,加速依赖下载:
pip configsetglobal.index-url https://pypi.tuna.tsinghua.edu.cn/simple pip configsetglobal.trusted-host pypi.tuna.tsinghua.edu.cn三、下载模型
使用 ModelScope 下载:
pipinstall-Umodelscope modelscope download--modelQwen/Qwen-Image-2.1--local_dir/data/models/Qwen-Image-2.1下载完成后确认目录包含:
model_index.json transformer/ vae/ text_encoder/ scheduler/ tokenizer/四、安装 vLLM-Omni
mkdir-p/data/appsgitclone https://github.com/vllm-project/vllm-omni.git /data/apps/vllm-omnicd/data/apps/vllm-omnigitfetch origin pull/7759/head:qwen-image-2.1gitcheckout qwen-image-2.1 conda activate vllm-omni pipinstall-e.验证安装:
python-c"import vllm_omni; print(vllm_omni.__file__)"输出应指向/data/apps/vllm-omni/vllm_omni/__init__.py。
五、启动 API 服务
推荐用 tmux 挂后台,避免终端关闭导致服务中断。
tmux new-svllm-serve conda activate vllm-omnicd/data/apps/vllm-omni vllm serve /data/models/Qwen-Image-2.1\--omni\--host0.0.0.0\--port8000\--served-model-name qwen-image启动成功后,按 Ctrl+B 再按 D 退出 tmux,服务继续运行。
查看日志:tmux attach -t vllm-serve
六、验证服务
健康检查:
curlhttp://localhost:8000/health查看模型列表:
curl-shttp://localhost:8000/v1/models|python-mjson.tool应看到:
{"id":"qwen-image",...}七、接口调用
7.1 文生图
接口:POST /v1/images/edits
curl 示例:
curl-XPOST"http://localhost:8000/v1/images/edits"\-F"model=qwen-image"\-F"image=@input.png"\-F"prompt=把背景换成海滩"\-F"size=1024x1024"\-F"num_inference_steps=40"\-oedited_output.png当前 vLLM-Omni 分支限制单次最多 4 张参考图,模型原生支持 10 张。
八、性能参考
| 项目 | 数值 |
|---|---|
| 分辨率 | 1024×1024 |
| 推理步数 | 40 |
| 单张耗时 | 约 35 秒 |
| 显存占用 | 约 30GB |
| 硬件 | RTX A6000 48GB |