多场景PAI-Diffusion中文模型家族大升级,12个模型、2个工具全部开源

本文涉及的产品
模型训练 PAI-DLC,5000CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 在本文中,将详细介绍PAI-Diffusion中文模型家族及其工具Chinese Diffusion WebUI和Diffuser-API的使用。

1.概述


在过去几年中,随着AI生成内容(AI Generated Content,AIGC)的快速发展,Stable Diffusion模型在该领域崭露头角。阿里云机器学习PAI团队为推动这一领域的发展,参考了Stable Diffusion的模型结构,结合中文语言的特点,通过大量对模型预训练数据的处理和过滤,以及训练过程的优化,提出了PAI-Diffusion中文文图生成模型,实现了图像生成质量的大幅提升和风格多样化(看这里)。PAI-Diffusion模型的Pipeline不仅包含了标准的Diffusion Model,还集成了中文CLIP跨模态对齐模型,使得模型能够生成符合中文文本描述的各种场景下的高清大图(看这里)。此外,我们也推出了PAI的自研Prompt美化器BeautifulPrompt,赋能Stable Diffusion类应用一键出美图(看这里)。

我们在这次的工作中,将PAI-Diffusion中文模型家族扩展到多种应用场景,支持文生图、文图生图、图像修复、LoRA、ControlNet等多种常见功能。为了更好地与开源社区互动,我们将12个PAI-Diffusion中文模型(包括基础模型、LoRA、ControlNet等)全部开源,并支持用户自由下载和使用,与开发者一起共同推动AI生成内容技术的发展,创造出更有创意和影响力的作品。此外,PAI-Diffusion中文模型对应两个推理工具也在开源社区推出。其中,Chinese Diffusion WebUI作为Stable Diffusion WebUI的插件与PAI-EAS无缝兼容,支持5分钟内一键在PAI-EAS拉起中文AIGC应用;Diffusers-API也完美支持中文模型的快速部署和推理。

在下文中,我们详细介绍PAI-Diffusion中文模型家族及其工具Chinese Diffusion WebUI和Diffuser-API的使用。


2.多场景的PAI-Diffusion中文模型家族


我们利用海量中文图文对数据,训练了如下12个模型,包括基础模型、LoRA、ControlNet等,模型列表如下:

模型名

类别

使用场景

pai-diffusion-general-large-zh

基础模型

中文文图生成通用模型,默认支持生成图像分辨率为512*512

pai-diffusion-general-large-zh-controlnet-canny

ControlNet

上述模型用于边缘图的ControlNet

pai-diffusion-general-large-zh-controlnet-depth

ControlNet

上述模型用于深度图的ControlNet

pai-diffusion-general-xlarge-zh

基础模型

中文文图生成通用模型(更大分辨率),默认支持生成图像分辨率为768*768

pai-diffusion-artist-large-zh

基础模型

中文文图生成艺术模型,默认支持生成图像分辨率为512*512

pai-diffusion-artist-large-zh-controlnet-canny

ControlNet

上述模型用于边缘图的ControlNet

pai-diffusion-artist-large-zh-controlnet-depth

ControlNet

上述模型用于深度图的ControlNet

pai-diffusion-artist-large-zh-lora-poem

LoRA

上述模型用于中文古诗画的LoRA

pai-diffusion-artist-large-zh-lora-25d

LoRA

上述模型用于2.5D插画的LoRA

pai-diffusion-artist-xlarge-zh

基础模型

中文文图生成艺术模型(更大分辨率),默认支持生成图像分辨率为768*768

pai-diffusion-food-large-zh

基础模型

中文文图生成美食模型,默认支持生成图像分辨率为768*768

pai-diffusion-anime-large-zh

基础模型

中文文图生成二次元模型,默认支持生成图像分辨率为768*512

上述所有模型都可以在我们的Hugging Face Space进行下载,我们的模型也可以通过ModelScope进行调用模型生成的效果如下所示:

下面给出了三个PAI-Diffusion中文模型的应用场景:

应用场景一:输入草稿图和对应的Prompt,生成精细的艺术图画。

应用场景二:污染破损的古诗词绘画图像的修复,即image in-painting。

应用场景三:为国风游戏绘制中国古代室内场景

为了尽可能提升模型输出图像的质量,我们搜集海量开源的图文对数据集,包括大规模中文跨模态预训练数据集WuKong、大规模多语言多模态数据集LAION-5B等。此外,我们也搜集了大量不同领域、不同场景的数据集,用于扩展PAI-Diffusion中文模型家族的应用场景。我们针对图像和文本进行了多种清洗方式,筛选掉低质量数据。具体的数据处理方式包括NSFW(Not Safe From Work)数据过滤、水印数据去除,我们也使用CLIP分数和美观值分数评分,过滤CLIP分数和美观值分数较低的数据,保证生成图像的语义一致性和质量。为了适配中文语义场景,我们的CLIP Text Encoder采用EasyNLP自研的中文CLIP模型(https://github.com/alibaba/EasyNLP)进行建模,使得模型更懂中文语言。


3.PAI-Diffusion中文模型部署工具


本节详细介绍PAI-Diffusion中文模型对应的两个开源工具。Chinese Diffusion WebUI作为插件与PAI-EAS无缝兼容,支持5分钟内一键拉起中文AIGC应用;Diffusers-API通过API形式支持中文模型的快速部署和推理。

3.1Chinese Diffusion WebUI

由于Stable Diffusion WebUI无法原生支持中文模型,我们开发了Chinese Diffusion WebUI,作为Stable Diffusion WebUI的插件提供给用户。它提供了图形划的用户界面,使用户(尤其是没有编程经验的设计师)可以使用PAI-Diffusion中文模型的多种功能,例如文生图、图生图、图像风格迁移、图像编辑等。Chinese Diffusion WebUI的界面如下图所示:

为了方便用户在PAI-EAS上使用Chinese Diffusion WebUI,我们的插件也支持了两种模式:单机版本和集群版本,用户可以根据需求和资源选择不同的模式。在单机版中,用户在独占的节点上使用Chinese Diffusion WebUI,特别方便个人设计师的使用。集群版利用PAI的弹性推理服务,实现并行处理,高效利用和共享计算资源,从而实现了更高的资源利用率。

此外,Chinese Diffusion WebUI也可以在非PAI-EAS环境下使用,用户只需要在下载Chinese Diffusion WebUI插件,放置在标准Stable Diffusion WebUI的插件目录下就可以实现本地的使用了。

3.2Diffusers-API

Diffusers-API是阿里云机器学习PAI团队开源的、基于Diffusers的文图生成云服务SDK。用户可以直接基于本项目提供的镜像,在PAI-EAS上部署各种Diffusion相关服务,例如文生图、图生图、LoRA、ControlNet等。Diffusers-API还基于PAI-Blade对模型进行了推理优化,降低推理流程的端到端延迟 2.3 倍,同时可显著降低显存占用,超过TensorRT-v8.5等业内SOTA优化手段。

在Diffusers-API中,我们使用StableDiffusionLongPromptWeightingPipeline作为默认的推理接口,以支持带有权重的、无长度限制的英文Prompt。然而,Diffusers默认的推理接口无法无缝支持中文文本的处理。我们扩展了StableDiffusionLongPromptWeightingPipeline,根据载入模型的Text Encoder,自动检测语言,并且进行适配,使得无需修改Diffusers-API的任何接口的条件下,支持社区Stable Diffusion和PAI-Diffusion中文模型的一键部署,其HTTP请求体示例如下:

{
  "task_id" : "001",
  "prompt": "一只可爱的小猫咪",
  "negative_prompt": "模糊",
  "cfg_scale": 7,
  "steps": 25,
  "image_num": 1,
  "width": 512,
  "height": 512,
  "use_base64": True
}

部署PAI-Diffusion中文模型的步骤详见这里


4.总结


通过先前的PAI-Diffusion中文模型的开源,我们成功提升了图像生成质量和风格多样化,并实现了中文文本描述下各种场景的高清大图生成。此外,我们还推出了自研的Prompt美化器BeautifulPrompt,为Stable Diffusion类应用提供了一键美图的能力。在本次的工作中,我们不仅将PAI-Diffusion中文模型家族扩展到多种应用场景,还全面开源了12个PAI-Diffusion中文模型,包括基础模型、LoRA、ControlNet等。我们的工作希望为开发者们提供更多的创作可能性和创新机会,共同推动AI生成内容技术的发展,创造出更有创意和影响力的作品。此外,我们还推出了两个开源工具,Chinese Diffusion WebUI和Diffuser-API,提供便捷的使用体验。Chinese Diffusion WebUI作为插件与PAI-EAS无缝兼容,支持用户在5分钟内快速搭建中文AIGC应用;而Diffusers-API则完美支持中文模型的快速部署和推理。我们期待与开发者们共同推动AI生成内容技术的前进。


5.PAI-Diffusion系列文章回顾


相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
18天前
|
机器学习/深度学习 人工智能 算法
探索机器学习中的线性回归模型
本文深入探讨了机器学习中广泛使用的线性回归模型,从其基本概念和数学原理出发,逐步引导读者理解模型的构建、训练及评估过程。通过实例分析与代码演示,本文旨在为初学者提供一个清晰的学习路径,帮助他们在实践中更好地应用线性回归模型解决实际问题。
|
27天前
|
机器学习/深度学习 数据采集 监控
如何使用机器学习模型来自动化评估数据质量?
如何使用机器学习模型来自动化评估数据质量?
|
24天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
67 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
28天前
|
机器学习/深度学习 算法 PyTorch
用Python实现简单机器学习模型:以鸢尾花数据集为例
用Python实现简单机器学习模型:以鸢尾花数据集为例
73 1
|
1月前
|
机器学习/深度学习 数据采集 Python
从零到一:手把手教你完成机器学习项目,从数据预处理到模型部署全攻略
【10月更文挑战第25天】本文通过一个预测房价的案例,详细介绍了从数据预处理到模型部署的完整机器学习项目流程。涵盖数据清洗、特征选择与工程、模型训练与调优、以及使用Flask进行模型部署的步骤,帮助读者掌握机器学习的最佳实践。
85 1
|
1月前
|
机器学习/深度学习 数据采集 监控
如何使用机器学习模型来自动化评估数据质量?
如何使用机器学习模型来自动化评估数据质量?
|
2月前
|
机器学习/深度学习 并行计算 数据挖掘
R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域
【10月更文挑战第21天】R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域。本文将介绍R语言中的一些高级编程技巧,包括函数式编程、向量化运算、字符串处理、循环和条件语句、异常处理和性能优化等方面,以帮助读者更好地掌握R语言的编程技巧,提高数据分析的效率。
54 2
|
22天前
|
机器学习/深度学习 自然语言处理 语音技术
探索机器学习中的深度学习模型:原理与应用
探索机器学习中的深度学习模型:原理与应用
33 0
|
2月前
|
人工智能 算法 测试技术
PAI 大语言模型评测平台现已支持裁判员模型评测
本文将为您介绍如何在 PAI 大语言模型评测平台,基于裁判员模型,评价开源模型或者微调后模型的性能。该功能限时免费,欢迎使用。
|
2月前
|
机器学习/深度学习 数据挖掘 Serverless
手把手教你全面评估机器学习模型性能:从选择正确评价指标到使用Python与Scikit-learn进行实战演练的详细指南
【10月更文挑战第10天】评估机器学习模型性能是开发流程的关键,涉及准确性、可解释性、运行速度等多方面考量。不同任务(如分类、回归)采用不同评价指标,如准确率、F1分数、MSE等。示例代码展示了使用Scikit-learn库评估逻辑回归模型的过程,包括数据准备、模型训练、性能评估及交叉验证。
92 1

相关产品

  • 人工智能平台 PAI