哈哈哈哈哈打不过我吧,没有办法我(vllm)就是这么强大!

前文在微信公众号平台爆了 ,接近1w自然阅读,文生文已经满足不了博主的分享欲,今天记录vllm咧一个文生图模型。

在文本生成领域,99%的应用都基于自回归模型(Autoregressive Models),也就是我们熟知的GPT系列、LLaMA等。

文本(Text)是离散的,由词元(Token)组成;而图像、视频是连续的像素或信号。扩散模型天生擅长处理连续数据, 故文生图和文生视频的是当前扩散模型的核心战场。

什么是扩散模型diffusion models?

使用文生图工具时,内部真实发生的"魔法":

起点:你看到的完全随机的噪声图。这相当于前向过程走到了终点。

反向去噪第一步:

模型看着这张纯噪声图,结合你的提示词,预测出"这张图上现在应该被加上了什么噪声"。

然后,从当前图片中减去这个预测出的噪声。

结果得到一张噪声少了一点点的、略微能看出模糊轮廓的图片。

循环往复:把上一步得到的、稍微清晰一点的图片作为新的输入,再次让模型预测并减去噪声。

终点:重复几十步后,噪声被逐步移除干净,一张清晰的、符合你描述的图片就诞生了。

这个一步步预测并减去噪声的循环,从方向上看是前向加噪的"反向",从动作上看就是在"去噪"。

vllm旗下的子项目vllm-omni提供了简单、快速且低成本的多模态模型服务。

Z-Image是阿里开源的完整版本、未经蒸馏的的 Transformer 文生图模型, 10.26B权重参数, 20.55GB GPU显存, 专为高质量、强生成多样性、广泛的风格覆盖能力以及精准的提示词遵循而设计。

启动推理服务器: vllm serve Tongyi-MAI/Z-Image --omni --port 8000 --tensor-parallel-size 2

注意: 不是用原生vllm(对应的docker镜像是vllm-openai)带omni参数, 而是要一个包含omni扩展的多模态vllm (对应的docker镜像是vllm-omni)。

支持两种接口, 都是兼容openai的接口

arduino 复制代码
curl -s http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      {"role": "user", "content": "A beautiful landscape painting"}
    ],
    "extra_body": {
      "num_inference_steps": 50,
      "seed": 42
    }
  }'

输出的二进制图片被base64 编码,解码可得图片。

arduino 复制代码
curl -X POST http://localhost:8000/v1/images/generations \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "a dragon laying over the spine of the Green Mountains of Vermont",
    "size": "1024x1024",
    "seed": 42
  }' | jq -r '.data[0].b64_json' | base64 -d > dragon.png

jq 是json格式化和取值工具, 从json响应体字段中取值。

相关推荐
invicinble7 小时前
spring事务相关信息量的沉淀
java·后端·spring
jieyucx8 小时前
从基础语法到面向对象:Go语言如何实现封装、继承与多态?
开发语言·后端·golang
神奇小汤圆8 小时前
Spring Boot 3.2 + JDK 21 虚拟线程压测:传统线程池与 Project Loom 的吞吐量对比实践
后端
SuperArc19998 小时前
jar包文件修改(java编译与反编译)
java·开发语言·后端·jar·反编译
羡寒.8 小时前
接口突然变慢,你怎么排查?
java·后端·spring
ltlovezh8 小时前
AAC 元数据:ADTS 与 ASC 的区别、转换和常见坑
后端·ffmpeg·音视频开发
金銀銅鐵9 小时前
[Java] 自己写程序,来解析字段的 descriptor
java·后端
椰椰椰耶9 小时前
[SpringCloud][8]Spring Cloud LoadBanlancer快速上手以及LoadBalancer原理
后端·spring·spring cloud
Genlt9 小时前
Docker 镜像与 Dockerfile 基础指南:从编写到管理
后端