模型简介
模型特点
模型能力
使用案例
🚀 GLIGEN:开放式基础文本到图像生成
GLIGEN模型由来自威斯康星大学麦迪逊分校、哥伦比亚大学和微软的研究人员和工程师创建。[StableDiffusionGLIGENTextImagePipeline
]能够根据基础输入生成逼真的图像。
除了文本和边界框外,如果提供了输入图像,此管道可以将文本描述的对象插入到边界框定义的区域中。否则,它将生成由标题/提示描述的图像,并将文本描述的对象插入到边界框定义的区域中。该模型在COCO2014D和COCO2014CD数据集上进行训练,并使用冻结的CLIP ViT - L/14文本编码器来根据基础输入进行条件设置。
这里的权重旨在与🧨 Diffusers库一起使用。如果您想使用官方检查点进行某项任务,请探索gligen Hub组织!
🚀 快速开始
我们建议使用🤗的Diffusers库来运行GLIGEN。
安装
pip install --upgrade diffusers transformers scipy
运行示例
运行带有默认调度器的管道:
# 使用参考图像在生成的图像中添加对象
import torch
from diffusers import StableDiffusionGLIGENTextImagePipeline
from diffusers.utils import load_image
pipe = StableDiffusionGLIGENTextImagePipeline.from_pretrained("anhnct/Gligen_Inpainting_Text_Image", torch_dtype=torch.float16)
pipe = pipe.to("cuda")
input_image = load_image(
"https://hf.co/datasets/huggingface/documentation-images/resolve/main/diffusers/gligen/livingroom_modern.png"
)
prompt = "a backpack"
boxes = [[0.2676, 0.4088, 0.4773, 0.7183]]
phrases = None
gligen_image = load_image(
"https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/gligen/backpack.jpeg"
)
images = pipe(
prompt=prompt,
gligen_phrases=phrases,
gligen_inpaint_image=input_image,
gligen_images=[gligen_image],
gligen_boxes=boxes,
gligen_scheduled_sampling_beta=1,
output_type="pil",
num_inference_steps=50,
).images
images[0].save("./gligen-inpainting-text-image-box.jpg")
✨ 主要特性
- 可根据文本提示、边界框和参考图像生成图像。
- 无需使用文本反转、DreamBooth或LoRA微调,即可在生成的图像中添加新对象或风格。
📦 安装指南
使用以下命令安装所需的库:
pip install --upgrade diffusers transformers scipy
💻 使用示例
基础用法
# 使用参考图像在生成的图像中添加对象
import torch
from diffusers import StableDiffusionGLIGENTextImagePipeline
from diffusers.utils import load_image
pipe = StableDiffusionGLIGENTextImagePipeline.from_pretrained("anhnct/Gligen_Inpainting_Text_Image", torch_dtype=torch.float16)
pipe = pipe.to("cuda")
input_image = load_image(
"https://hf.co/datasets/huggingface/documentation-images/resolve/main/diffusers/gligen/livingroom_modern.png"
)
prompt = "a backpack"
boxes = [[0.2676, 0.4088, 0.4773, 0.7183]]
phrases = None
gligen_image = load_image(
"https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/gligen/backpack.jpeg"
)
images = pipe(
prompt=prompt,
gligen_phrases=phrases,
gligen_inpaint_image=input_image,
gligen_images=[gligen_image],
gligen_boxes=boxes,
gligen_scheduled_sampling_beta=1,
output_type="pil",
num_inference_steps=50,
).images
images[0].save("./gligen-inpainting-text-image-box.jpg")
📚 详细文档
模型详情
属性 | 详情 |
---|---|
开发者 | Yuheng Li, Haotian Liu, Qingyang Wu, Fangzhou Mu, Jianwei Yang, Jianfeng Gao, Chunyuan Li, Yong Jae Lee |
模型类型 | 基于扩散的基础文本到图像生成模型 |
语言 | 英语 |
许可证 | CreativeML OpenRAIL M许可证 是一种Open RAIL M许可证,改编自BigScience和RAIL Initiative在负责任的AI许可领域的联合工作。另见关于BLOOM Open RAIL许可证的文章,我们的许可证基于此。 |
模型描述 | 这是一个可根据文本提示、边界框和参考图像生成图像的模型。它无需使用文本反转、DreamBooth或LoRA微调,即可在生成的图像中添加新对象或风格。它是一个潜在扩散模型,使用固定的预训练文本编码器(CLIP ViT - L/14)来根据基础输入进行条件设置。 |
更多信息资源 | GitHub仓库,论文 |
用途
直接使用
该模型仅用于研究目的。可能的研究领域和任务包括:
- 安全部署有可能生成有害内容的模型。
- 探索和理解生成模型的局限性和偏差。
- 生成艺术作品并用于设计和其他艺术过程。
- 在教育或创意工具中的应用。
- 对生成模型的研究。
滥用、恶意使用和超出范围的使用
该模型不应被用于故意创建或传播会为人们创造敌对或疏离环境的图像。这包括生成人们可预见会感到不安、痛苦或冒犯的图像;或传播历史或当前刻板印象的内容。
超出范围的使用
该模型并非用于生成真实或准确反映人物或事件的内容,因此使用该模型生成此类内容超出了该模型的能力范围。
滥用和恶意使用
使用该模型生成对个人残忍的内容是对该模型的滥用。这包括但不限于:
- 生成贬低、非人性化或以其他方式有害的人物或其环境、文化、宗教等的表现形式。
- 故意推广或传播歧视性内容或有害的刻板印象。
- 在未经个人同意的情况下冒充他人。
- 未经可能看到该内容的人的同意而生成性内容。
- 错误信息和虚假信息。
- 令人震惊的暴力和血腥场面的表现形式。
- 违反使用条款分享受版权保护或许可的材料。
- 违反使用条款分享受版权保护或许可材料的修改内容。
局限性和偏差
局限性
- 模型无法实现完美的逼真度。
- 模型无法渲染清晰可读的文本。
- 模型在涉及组合性的更困难任务上表现不佳,例如渲染与“红色立方体在蓝色球体上”对应的图像。
- 面部和人物通常可能无法正确生成。
- 模型主要使用英语字幕进行训练,在其他语言中的效果不佳。
- 模型的自动编码部分存在信息损失。
- 模型在大规模数据集LAION - 5B上进行训练,该数据集包含成人内容,在没有额外安全机制和考虑的情况下不适合用于产品。
- 未使用额外措施对数据集进行去重。因此,我们观察到对于训练数据中重复的图像存在一定程度的记忆现象。可以在[https://rom1504.github.io/clip - retrieval/](https://rom1504.github.io/clip - retrieval/)上搜索训练数据,以协助检测记忆的图像。
偏差
虽然图像生成模型的能力令人印象深刻,但它们也可能强化或加剧社会偏差。Stable Diffusion v1在LAION - 2B(en)的子集上进行训练,该子集主要由英语描述的图像组成。使用其他语言的社区和文化的文本和图像可能未得到充分考虑。这影响了模型的整体输出,因为白人及西方文化通常被设定为默认。此外,该模型使用非英语提示生成内容的能力明显低于使用英语提示的能力。
安全模块
该模型的预期用途是与Diffusers中的安全检查器一起使用。该检查器通过将模型输出与已知的硬编码NSFW概念进行比较来工作。这些概念被故意隐藏,以降低反向工程此过滤器的可能性。具体而言,检查器在图像生成之后,在CLIPTextModel
的嵌入空间中比较有害概念的类别概率。这些概念与生成的图像一起传入模型,并与每个NSFW概念的手工设计权重进行比较。
🔧 技术细节
该模型使用冻结的CLIP ViT - L/14文本编码器来根据基础输入进行条件设置,并且在COCO2014D和COCO2014CD数据集上进行训练。
📄 许可证
该模型使用CreativeML OpenRAIL M许可证。
引用
@article{li2023gligen,
author = {Li, Yuheng and Liu, Haotian and Wu, Qingyang and Mu, Fangzhou and Yang, Jianwei and Gao, Jianfeng and Li, Chunyuan and Lee, Yong Jae},
title = {GLIGEN: Open-Set Grounded Text-to-Image Generation},
publisher = {arXiv:2301.07093},
year = {2023},
}
此模型卡片由Nguyễn Công Tú Anh编写,并基于DALL - E Mini模型卡片。









