Kolors

Kolors

高性能文本到图像生成模型

Kolors是一款基于潜在扩散的大规模文本到图像生成模型。该模型经过数十亿文本-图像对的训练,在视觉质量、复杂语义理解和中英文字符渲染方面表现优异。Kolors支持中英文输入,能够出色地理解和生成中国特色内容。通过人工和机器评估,Kolors在多个维度上展现了业界领先的性能,适用于各种高质量图像生成任务。

KolorsAI绘图文生图模型开源多语言Github开源项目
<p align="left"> <a href="#">English</a>&nbsp | &nbsp<a href="README_CN.md">中文</a>&nbsp </p> <br><br> <p align="center"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/e00e58ad-c646-4f4e-8f72-16ba1a98ced4.png" width="400"/> <p> <br> <div align="center"> <a href='https://huggingface.co/Kwai-Kolors/Kolors'><img src='https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-HF-yellow'></a> &ensp; <a href="https://github.com/Kwai-Kolors/Kolors"><img src="https://img.shields.io/static/v1?label=Kolors Code&message=Github&color=blue&logo=github-pages"></a> &ensp; <a href="https://kwai-kolors.github.io/"><img src="https://img.shields.io/static/v1?label=Team%20Page&message=Page&color=green"></a> &ensp;

<a href='https://huggingface.co/spaces/Kwai-Kolors/Kolors '><img src='https://img.shields.io/badge/%F0%9F%A4%97%20HF Space-HF-yellow'></a><a href="https://github.com/Kwai-Kolors/Kolors/blob/master/imgs/Kolors_paper.pdf"><img src="https://img.shields.io/static/v1?label=Tech Report&message=Arxiv:Kolors&color=red&logo=arxiv"></a><a href="https://kolors.kuaishou.com/"><img src="https://img.shields.io/static/v1?label=Official Website&message=Page&color=green"></a>

</div>

Kolors: 用于逼真文本到图像合成的高效扩散模型训练

<figure> <img src="https://yellow-cdn.veclightyear.com/835a84d5/12bb5687-49ce-4d41-a6bb-fb8b821a70d1.png"> </figure> <br><br>

目录

<a name="News"></a>🎉 最新消息

  • 2024.08.06 🔥 姿势ControlNet已发布!请查看ControlNet(姿势)以获取更多详情。

  • 2024.08.01 🔥 Kolors-Dreambooth-LoRA训练和推理代码已发布!请查看Dreambooth-LoRA以获取更多详情。

  • 2024.07.31 🔥 Kolors-IP-Adapter-FaceID-Plus权重和推理代码已发布!请查看IP-Adapter-FaceID-Plus以获取更多详情。

  • 2024.07.26 🔥 ControlNet和修复模型已发布!请查看ControlNet(Canny, Depth)修复模型以获取更多详情。

  • 2024.07.17 🔥 Kolors-IP-Adapter-Plus权重和推理代码已发布!请查看IP-Adapter-Plus以获取更多详情。

  • 2024.07.12 🤗 Kolors现已在Diffusers中可用!请查看kolors-diffusers或下面的示例以获取详情!感谢Diffusers团队的技术支持。

  • 2024.07.10 🤖 Kolors支持ModelScope

  • 2024.07.09 💥 Kolors支持ComfyUI。感谢@kijai的出色工作。

  • 2024.07.06 🔥🔥🔥 我们发布了Kolors,这是一个在数十亿文本-图像对上训练的大型文本到图像模型。该模型支持中英双语,并支持256个token的上下文长度。有关更多技术细节,请参阅技术报告

  • 2024.07.03 📊 Kolors在FlagEval多模态文本到图像排行榜上获得第二名,特别是在中文和英文主观质量评估中表现出色,Kolors获得第一名。

  • 2024.07.02 🎉 恭喜!我们关于可控视频生成的论文DragAnything: 使用实体表示的任意物体运动控制已被ECCV 2024接收。

  • 2024.02.08 🎉 恭喜!我们关于生成模型评估的论文学习多维人类偏好用于文本到图像生成已被CVPR 2024接收。 <br><br>

<a name="open-source-plan"></a>📑 开源计划

  • Kolors (文本到图像模型)
    • 推理
    • 检查点
    • IP-Adapter
    • ControlNet (Canny, Depth)
    • 修复
    • IP-Adapter-FaceID
    • LoRA
    • ControlNet (姿势)
  • ComfyUI
  • Gradio
  • Diffusers <br><br>

<a name="Introduction"></a>📖 简介

Kolors是由快手Kolors团队开发的基于潜在扩散的大规模文本到图像生成模型。通过在数十亿文本-图像对上训练,Kolors在视觉质量、复杂语义准确性以及中英文字符的文本渲染方面都展现出显著优势,超越了开源和闭源模型。此外,Kolors支持中英双语输入,在理解和生成中国特定内容方面表现出色。更多详情请参阅这份<a href="https://github.com/Kwai-Kolors/Kolors/blob/master/imgs/Kolors_paper.pdf">技术报告</a></b><br><br>

<a name="Evaluation"></a>📊 评估

我们收集了一个名为KolorsPrompts的综合文本到图像评估数据集,用于比较Kolors与其他最先进的开放模型和闭源模型。KolorsPrompts包含超过1,000个提示,涵盖14个类别和12个评估维度。评估过程结合了人工和机器评估。在相关基准评估中,Kolors展示了极具竞争力的表现,达到了行业领先水平。

<br><br>

人工评估

对于人工评估,我们邀请了50位图像专家对不同模型生成的结果进行比较评估。专家根据视觉吸引力、文本忠实度和整体满意度三个标准对生成的图像进行评分。在评估中,Kolors获得了最高的整体满意度得分,并在视觉吸引力方面显著领先于其他模型。

模型平均整体满意度平均视觉吸引力平均文本忠实度
Adobe-Firefly3.033.463.84
Stable Diffusion 33.263.504.20
DALL-E 33.323.544.22
Midjourney-v53.323.684.02
Playground-v2.53.373.734.04
Midjourney-v63.583.924.18
Kolors3.593.994.17

<div style="color: gray; font-size: small;">

所有模型结果均使用2024年4月的产品版本进行测试

</div> <br>

机器评估

我们在KolorsPrompts上使用MPS(多维人类偏好得分)作为机器评估的评估指标。Kolors获得了最高的MPS得分,这与人工评估的结果一致。

<div style="text-align:center">
模型总体MPS
Adobe-Firefly8.5
Stable Diffusion 38.9
DALL-E 39.0
Midjourney-v59.4
Playground-v2.59.8
Midjourney-v610.2
Kolors10.3
</div> <br>

有关更多实验结果和详细信息,请参阅我们的技术报告

<br><br>

<a name="Visualization"></a>🎥 可视化

  • 高质量人像
<div style="display: flex; justify-content: space-between;"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/ee3d0256-70d3-4bf2-9d8f-72fbb0569849.png" /> </div> <br>
  • 中国元素生成
<div style="display: flex; justify-content: space-between;"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/e7a5b4a2-f8e1-47b5-8547-7e13f705a6d7.png"/> </div> <br>
  • 复杂语义理解
<div style="display: flex; justify-content: space-between;"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/b5409f6c-1be6-4e1a-9af5-8a6a52a0ffc6.png"/> </div> <br>
  • 文本渲染
<div style="display: flex; justify-content: space-between;"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/b91a279f-45d7-441a-9952-1b7b6f474def.png" /> </div> <br> </div>

上述可视化的案例提示可以在这里访问。 <br><br>

<a name="Usage"></a>🛠️ 使用方法

要求

  • Python 3.8 或更高版本
  • PyTorch 1.13.1 或更高版本
  • Transformers 4.26.1 或更高版本
  • 推荐:CUDA 11.7 或更高版本 <br>
  1. 克隆仓库并安装依赖
apt-get install git-lfs git clone https://github.com/Kwai-Kolors/Kolors cd Kolors conda create --name kolors python=3.8 conda activate kolors pip install -r requirements.txt python3 setup.py install
  1. 下载权重(链接):
huggingface-cli download --resume-download Kwai-Kolors/Kolors --local-dir weights/Kolors

git lfs clone https://huggingface.co/Kwai-Kolors/Kolors weights/Kolors
  1. 推理:
python3 scripts/sample.py "一张瓢虫的照片,微距,变焦,高质量,电影,拿着一个牌子,写着"可图"" # 图像将保存在 "scripts/outputs/sample_text.jpg"
  1. Web演示:
python3 scripts/sampleui.py

使用Diffusers

确保升级到最新版本(0.30.0.dev0)的diffusers:

git clone https://github.com/huggingface/diffusers
cd diffusers
python3 setup.py install

注意:

  • 该pipeline默认使用EulerDiscreteScheduler。我们建议使用此调度器时,设置guidance scale=5.0num_inference_steps=50
  • 该pipeline还支持EDMDPMSolverMultistepScheduler。对于此调度器,guidance scale=5.0num_inference_steps=25是一个不错的默认设置。
  • 除了文本到图像外,KolorsImg2ImgPipeline还支持图像到图像。

然后你可以运行:

import torch from diffusers import KolorsPipeline pipe = KolorsPipeline.from_pretrained( "Kwai-Kolors/Kolors-diffusers", torch_dtype=torch.float16, variant="fp16" ).to("cuda") prompt = '一张瓢虫的照片,微距,变焦,高质量,电影,拿着一个牌子,写着"可图"' image = pipe( prompt=prompt, negative_prompt="", guidance_scale=5.0, num_inference_steps=50, generator=torch.Generator(pipe.device).manual_seed(66), ).images[0] image.show()

IP-Adapter-Plus

我们提供了IP-Adapter-Plus权重和推理代码,详见ipadapter

# 下载权重 huggingface-cli download --resume-download Kwai-Kolors/Kolors-IP-Adapter-Plus --local-dir weights/Kolors-IP-Adapter-Plus
# 推理: python3 ipadapter/sample_ipadapter_plus.py ./ipadapter/asset/test_ip.jpg "穿着黑色T恤衫,上面中文绿色大字写着"可图"" python3 ipadapter/sample_ipadapter_plus.py ./ipadapter/asset/test_ip2.png "一只可爱的小狗在奔跑" # 图像将保存在 "scripts/outputs/"

ControlNet

我们提供了三个ControlNet权重和推理代码,详见controlnet

# 下载权重 # Canny - ControlNet huggingface-cli download --resume-download Kwai-Kolors/Kolors-ControlNet-Canny --local-dir weights/Kolors-ControlNet-Canny # Depth - ControlNet huggingface-cli download --resume-download Kwai-Kolors/Kolors-ControlNet-Depth --local-dir weights/Kolors-ControlNet-Depth # Pose - ControlNet huggingface-cli download --resume-download Kwai-Kolors/Kolors-ControlNet-Pose --local-dir weights/Kolors-ControlNet-Pose

如果你打算使用深度估计网络,请确保下载其对应的模型权重。

huggingface-cli download lllyasviel/Annotators ./dpt_hybrid-midas-501f0c75.pt --local-dir ./controlnet/annotator/ckpts

感谢DWPose,你可以使用姿势估计网络。请下载Pose模型dw-ll_ucoco_384.onnx(百度网盘谷歌云盘)和Det模型yolox_l.onnx(百度网盘谷歌云盘)。然后请将它们放入controlnet/annotator/ckpts/

# 推理: python ./controlnet/sample_controlNet.py ./controlnet/assets/woman_1.png 一个漂亮的女孩,高品质,超清晰,色彩鲜艳,超高分辨率,最佳品质,8k,高清,4K Canny python ./controlnet/sample_controlNet.py ./controlnet/assets/woman_2.png 新海诚风格,丰富的色彩,穿着绿色衬衫的女人站在田野里,唯美风景,清新明亮,斑驳的光影,最好的质量,超细节,8K画质 Depth python ./controlnet/sample_controlNet.py ./controlnet/assets/woman_3.png 一位穿着紫色泡泡袖连衣裙、戴着皇冠和白色蕾丝手套的女孩双手托脸,高品质,超清晰,色彩鲜艳,超高分辨率,最佳品质,8k,高清,4K Pose # 图像将保存在 "controlnet/outputs/"

图像修复

我们提供了图像修复权重和推理代码,详见inpainting

# 下载权重 huggingface-cli download --resume-download Kwai-Kolors/Kolors-Inpainting --local-dir weights/Kolors-Inpainting
# 推理: python3 inpainting/sample_inpainting.py ./inpainting/asset/3.png ./inpainting/asset/3_mask.png 穿着美少女战士的衣服,一件类似于水手服风格的衣服,包括一个白色紧身上衣,前胸搭配一个大大的红色蝴蝶结。衣服的领子部分呈蓝色,并且有白色条纹。她还穿着一条蓝色百褶裙,超高清,辛烷渲染,高级质感,32k,高分辨率,最好的质量,超级细节,景深 python3 inpainting/sample_inpainting.py ./inpainting/asset/4.png ./inpainting/asset/4_mask.png 穿着钢铁侠的衣服,高科技盔甲,主要颜色为红色和金色,并且有一些银色装饰。胸前有一个亮起的圆形反应堆装置,充满了未来科技感。超清晰,高质量,超逼真,高分辨率,最好的质量,超级细节,景深 # 图像将保存在 "scripts/outputs/"

IP-Adapter-FaceID-Plus

我们提供了IP-Adapter-FaceID-Plus权重和推理代码,详见ipadapter_FaceID

# 下载权重 huggingface-cli download --resume-download Kwai-Kolors/Kolors-IP-Adapter-FaceID-Plus --local-dir weights/Kolors-IP-Adapter-FaceID-Plus
# 推理: python ipadapter_FaceID/sample_ipadapter_faceid_plus.py ./ipadapter_FaceID/assets/image1.png "穿着晚礼服,在星光下的晚宴场景中,烛光闪闪,整个场景洋溢着浪漫而奢华的氛围" python ipadapter_FaceID/sample_ipadapter_faceid_plus.py ./ipadapter_FaceID/assets/image2.png "西部牛仔,牛仔帽,荒野大镖客,背景是西部小镇,仙人掌,日落余晖, 暖色调, 使用XT4胶片拍摄, 噪点, 晕影, 柯达胶卷,复古" # 图片将保存在 "scripts/outputs/" 目录下

Dreambooth-LoRA

我们提供了LoRA训练和推理代码,详细内容请参见Dreambooth-LoRA

# 训练: sh train.sh
# 推理: python infer_dreambooth.py "ktxl狗在草地上跑"

<br><br>

<a name="License"></a>📜 许可证 & 引用 & 致谢

许可证

Kolors权重对学术研究完全开放。如果您打算根据许可条款和条件将Kolors模型或其衍生品用于商业用途,请将问卷发送至kwai-kolors@kuaishou.com,以向许可方注册。如果被许可方提供的所有产品或服务在上一个日历月的月活跃用户不超过3亿,您向许可方的注册将被视为已获得相应的商业许可;如果被许可方提供的所有产品或服务在上一个日历月的月活跃用户超过3亿,您必须向许可方申请许可,许可方可自行决定是否授予您许可,在我方明确授予您此类权利之前,您不被授权行使本协议下的任何权利。

我们开源Kolors是为了与开源社区合作推动大型文本到图像模型的发展。本项目的代码在Apache-2.0许可下开源。我们诚挚地敦促所有开发者和用户严格遵守开源许可,避免将开源模型、代码及其衍生品用于任何可能危害国家和社会的目的,或用于任何未经安全评估和注册的服务。请注意,尽管我们尽最大努力确保训练过程中数据的合规性、准确性和安全性,但由于生成内容的多样性和组合性以及影响模型的概率随机性,我们无法保证输出内容的准确性和安全性,且模型容易受到误导。本项目不承担因使用开源模型和代码而导致的任何数据安全问题、舆论风险,或因模型被误导、滥用、误用或不当使用而产生的风险和责任。

引用

如果您觉得我们的工作有帮助,请引用它!

@article{kolors,
  title={Kolors: Effective Training of Diffusion Model for Photorealistic Text-to-Image Synthesis},
  author={Kolors Team},
  journal={arXiv preprint},
  year={2024}
}

致谢

  • 感谢Diffusers提供的代码基础。
  • 感谢ChatGLM3提供的强大中文语言模型。 <br>

联系我们

如果您想给我们的研发团队和产品团队留言,欢迎加入我们的微信群。您也可以通过电子邮件(kwai-kolors@kuaishou.com)与我们联系。

Star History Chart

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多