AI大模型教程
一起来学习

AI人工智能浪潮中,Stable Diffusion的技术应用探索

文章目录 隐藏
AI人工智能浪潮中,Stable Diffusion的技术应用探索

AI人工智能浪潮中,Stable Diffusion的技术应用探索

关键词:AI人工智能、Stable Diffusion、技术应用、图像生成、扩散模型

摘要:在当前AI人工智能的汹涌浪潮中,Stable Diffusion作为一款强大的开源文本到图像生成模型,引发了广泛的关注和应用。本文将深入探索Stable Diffusion的技术应用,从其背景知识入手,详细介绍核心概念与联系、算法原理、数学模型等内容。通过项目实战展示其代码实现与分析,探讨实际应用场景,并推荐相关的工具和资源。最后总结其未来发展趋势与挑战,为读者全面了解和应用Stable Diffusion提供有价值的参考。

1. 背景介绍

1.1 目的和范围

本文的目的在于全面深入地探索Stable Diffusion在AI人工智能浪潮中的技术应用。具体范围涵盖了Stable Diffusion的基本原理、核心算法、数学模型,以及在实际项目中的开发与应用。同时,还将探讨其在不同领域的应用场景,为读者提供关于Stable Diffusion技术的全面认知和实践指导。

1.2 预期读者

本文预期读者包括对人工智能、图像生成技术感兴趣的开发者、研究人员,以及希望了解Stable Diffusion在实际应用中如何发挥作用的企业技术人员和技术爱好者。无论你是初学者还是有一定经验的专业人士,都能从本文中获取有价值的信息。

1.3 文档结构概述

本文将按照以下结构进行阐述:首先介绍Stable Diffusion的背景知识,包括其目的、预期读者和文档结构概述。接着详细讲解核心概念与联系,包括相关原理和架构的文本示意图及Mermaid流程图。然后深入探讨核心算法原理和具体操作步骤,并使用Python源代码进行详细阐述。随后介绍数学模型和公式,通过举例说明加深理解。再通过项目实战展示代码实际案例和详细解释说明。之后探讨实际应用场景,推荐相关的工具和资源。最后总结未来发展趋势与挑战,并提供常见问题与解答以及扩展阅读和参考资料。

1.4 术语表

1.4.1 核心术语定义
  • Stable Diffusion:一种基于潜在扩散模型(Latent Diffusion Model)的开源文本到图像生成模型,能够根据输入的文本描述生成高质量的图像。
  • 扩散模型(Diffusion Model):一类生成模型,通过逐步向数据中添加噪声,然后再从噪声中恢复出原始数据的过程来学习数据的分布。
  • 潜在空间(Latent Space):数据在经过编码器压缩后所处的低维空间,在Stable Diffusion中,潜在空间可以有效减少计算量和内存占用。
  • U-Net:一种卷积神经网络架构,在Stable Diffusion中用于预测噪声,其特点是具有对称的编码器 – 解码器结构。
1.4.2 相关概念解释
  • 文本编码器(Text Encoder):将输入的文本描述转换为向量表示的模型,在Stable Diffusion中通常使用预训练的Transformer模型,如CLIP。
  • 去噪过程(Denoising Process):扩散模型的核心步骤,通过迭代地去除图像中的噪声,逐步生成清晰的图像。
  • 提示词(Prompt):用户输入的文本描述,用于指导Stable Diffusion生成特定风格、主题的图像。
1.4.3 缩略词列表
  • CLIP:Contrastive Language – Image Pretraining,一种对比学习模型,用于学习图像和文本之间的关联。
  • VAE:Variational Autoencoder,变分自编码器,用于将图像编码到潜在空间和从潜在空间解码回图像。

2. 核心概念与联系

2.1 潜在扩散模型原理

潜在扩散模型是Stable Diffusion的基础。其核心思想是将图像数据映射到一个低维的潜在空间,在这个潜在空间中进行扩散过程,从而减少计算量和内存占用。具体来说,潜在扩散模型包括三个主要部分:编码器、U – Net和译码器。

编码器(通常是VAE)将高分辨率的图像编码为低维的潜在表示。U – Net在潜在空间中进行去噪操作,根据输入的噪声和文本编码器生成的文本嵌入,预测噪声的分布。译码器(同样是VAE)将去噪后的潜在表示解码回高分辨率的图像。

2.2 文本编码器与图像生成的关联

文本编码器(如CLIP)的作用是将输入的文本提示转换为向量表示。这个向量表示包含了文本的语义信息,在图像生成过程中作为条件信息传递给U – Net。U – Net根据文本嵌入和噪声信息,生成与文本描述相匹配的潜在表示,最终通过译码器生成图像。

2.3 架构的文本示意图

Stable Diffusion的整体架构可以描述如下:用户输入文本提示,文本编码器将其转换为文本嵌入。同时,随机噪声被输入到潜在空间。U – Net结合文本嵌入和噪声信息,对噪声进行预测和去噪。经过多次迭代的去噪过程,得到去噪后的潜在表示。最后,译码器将潜在表示解码为最终的图像。

2.4 Mermaid流程图

#mermaid-svg-c1Vry0UJnF6B6QK9 {font-family:”trebuchet ms”,verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .error-icon{fill:#552222;}#mermaid-svg-c1Vry0UJnF6B6QK9 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-c1Vry0UJnF6B6QK9 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .marker.cross{stroke:#333333;}#mermaid-svg-c1Vry0UJnF6B6QK9 svg{font-family:”trebuchet ms”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-c1Vry0UJnF6B6QK9 .label{font-family:”trebuchet ms”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .cluster-label text{fill:#333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .cluster-label span{color:#333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .label text,#mermaid-svg-c1Vry0UJnF6B6QK9 span{fill:#333;color:#333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .node rect,#mermaid-svg-c1Vry0UJnF6B6QK9 .node circle,#mermaid-svg-c1Vry0UJnF6B6QK9 .node ellipse,#mermaid-svg-c1Vry0UJnF6B6QK9 .node polygon,#mermaid-svg-c1Vry0UJnF6B6QK9 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-c1Vry0UJnF6B6QK9 .node .label{text-align:center;}#mermaid-svg-c1Vry0UJnF6B6QK9 .node.clickable{cursor:pointer;}#mermaid-svg-c1Vry0UJnF6B6QK9 .arrowheadPath{fill:#333333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-c1Vry0UJnF6B6QK9 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-c1Vry0UJnF6B6QK9 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-c1Vry0UJnF6B6QK9 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-c1Vry0UJnF6B6QK9 .cluster text{fill:#333;}#mermaid-svg-c1Vry0UJnF6B6QK9 .cluster span{color:#333;}#mermaid-svg-c1Vry0UJnF6B6QK9 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:”trebuchet ms”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-c1Vry0UJnF6B6QK9 :root{–mermaid-font-family:”trebuchet ms”,verdana,arial,sans-serif;}#mermaid-svg-c1Vry0UJnF6B6QK9 .process>*{fill:#E5F6FF!important;stroke:#73A6FF!important;stroke-width:2px!important;}#mermaid-svg-c1Vry0UJnF6B6QK9 .process span{fill:#E5F6FF!important;stroke:#73A6FF!important;stroke-width:2px!important;}
文本提示
文本编码器
随机噪声
潜在空间
U – Net
多次去噪迭代
去噪后的潜在表示
译码器
生成图像

3. 核心算法原理 & 具体操作步骤

3.1 扩散过程原理

扩散过程是Stable Diffusion的核心算法之一。其基本思想是通过逐步向图像中添加高斯噪声,将图像转换为纯噪声,然后再从噪声中逐步恢复出原始图像。具体来说,扩散过程可以分为正向扩散和反向扩散两个阶段。

正向扩散过程是一个马尔可夫链,通过在每个时间步

t

t

t 向图像

x

0

x_0

x0 中添加高斯噪声,得到噪声图像

x

t

x_t

xt

x

t

=

α

t

x

t

1

+

1

α

t

ϵ

x_t = sqrt{alpha_t}x_{t – 1}+sqrt{1 – alpha_t}epsilon

xt=αt
xt1+
1αt
ϵ

其中,

α

t

alpha_t

αt 是一个预定义的衰减系数,

ϵ

epsilon

ϵ 是从标准高斯分布中采样得到的噪声。

反向扩散过程则是从噪声图像

x

T

x_T

xT 开始,通过迭代地去除噪声,逐步恢复出原始图像

x

0

x_0

x0。在每个时间步

t

t

t,使用U – Net预测噪声

ϵ

θ

(

x

t

,

t

,

c

)

epsilon_{theta}(x_t, t, c)

ϵθ(xt,t,c),其中

c

c

c 是文本嵌入。然后根据预测的噪声更新图像:

x

t

1

=

1

α

t

(

x

t

1

α

t

ϵ

θ

(

x

t

,

t

,

c

)

)

+

σ

t

ϵ

x_{t – 1}=frac{1}{sqrt{alpha_t}}(x_t-sqrt{1 – alpha_t}epsilon_{theta}(x_t, t, c))+sigma_tepsilon’

xt1=αt
1
(xt
1αt
ϵθ(xt,t,c))+
σtϵ

其中,

σ

t

sigma_t

σt 是一个噪声标准差,

ϵ

epsilon’

ϵ 是从标准高斯分布中采样得到的噪声。

3.2 具体操作步骤

以下是使用Python实现Stable Diffusion图像生成的具体操作步骤:

3.2.1 安装必要的库
!pip install diffusers transformers ftfy accelerate
3.2.2 导入所需的库
import torch
from diffusers import StableDiffusionPipeline

# 检查是否有可用的GPU
device = "cuda" if torch.cuda.is_available() else "cpu"
3.2.3 加载模型
model_id = "runwayml/stable-diffusion-v1-5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to(device)
3.2.4 生成图像
prompt = "A beautiful sunset over the ocean"
image = pipe(prompt).images[0]
image.save("sunset_over_ocean.png")

3.3 代码解释

上述代码首先安装了必要的库,包括 diffuserstransformers 等。然后导入所需的库,并检查是否有可用的GPU。接着使用 StableDiffusionPipeline 从预训练模型中加载Stable Diffusion模型,并将其移动到GPU上(如果可用)。最后,定义一个文本提示,使用模型生成图像,并将图像保存到本地。

4. 数学模型和公式 & 详细讲解 & 举例说明

4.1 正向扩散过程公式

正向扩散过程的公式为:

x

t

=

α

ˉ

t

x

0

+

1

α

ˉ

t

ϵ

x_t = sqrt{bar{alpha}_t}x_0+sqrt{1 – bar{alpha}_t}epsilon

xt=αˉt
x0+
1αˉt
ϵ

其中,

α

ˉ

t

=

i

=

1

t

α

i

bar{alpha}_t=prod_{i = 1}^{t}alpha_i

αˉt=i=1tαi,表示从时间步

1

1

1

t

t

t 的衰减系数的累积乘积。这个公式表明,在时间步

t

t

t 的噪声图像

x

t

x_t

xt 是原始图像

x

0

x_0

x0 和高斯噪声

ϵ

epsilon

ϵ 的线性组合。

4.2 反向扩散过程公式

反向扩散过程的公式为:

x

t

1

=

1

α

t

(

x

t

1

α

t

ϵ

θ

(

x

t

,

t

,

c

)

)

+

σ

t

ϵ

x_{t – 1}=frac{1}{sqrt{alpha_t}}(x_t-sqrt{1 – alpha_t}epsilon_{theta}(x_t, t, c))+sigma_tepsilon’

xt1=αt
1
(xt
1αt
ϵθ(xt,t,c))+
σtϵ

这个公式描述了如何从时间步

t

t

t 的噪声图像

x

t

x_t

xt 恢复到时间步

t

1

t – 1

t1 的图像

x

t

1

x_{t – 1}

xt1。其中,

ϵ

θ

(

x

t

,

t

,

c

)

epsilon_{theta}(x_t, t, c)

ϵθ(xt,t,c) 是U – Net预测的噪声,

σ

t

sigma_t

σt 是噪声标准差,

ϵ

epsilon’

ϵ 是从标准高斯分布中采样得到的噪声。

4.3 举例说明

假设我们有一个原始图像

x

0

x_0

x0,在正向扩散过程中,我们逐步向图像中添加噪声。在时间步

t

=

1

t = 1

t=1,我们根据公式

x

1

=

α

1

x

0

+

1

α

1

ϵ

1

x_1 = sqrt{alpha_1}x_0+sqrt{1 – alpha_1}epsilon_1

x1=α1
x0+
1α1
ϵ1
得到噪声图像

x

1

x_1

x1。随着时间步的增加,图像中的噪声越来越多,最终在时间步

T

T

T 得到纯噪声图像

x

T

x_T

xT

在反向扩散过程中,我们从纯噪声图像

x

T

x_T

xT 开始,使用U – Net预测噪声

ϵ

θ

(

x

T

,

T

,

c

)

epsilon_{theta}(x_T, T, c)

ϵθ(xT,T,c),然后根据公式

x

T

1

=

1

α

T

(

x

T

1

α

T

ϵ

θ

(

x

T

,

T

,

c

)

)

+

σ

T

ϵ

x_{T – 1}=frac{1}{sqrt{alpha_T}}(x_T-sqrt{1 – alpha_T}epsilon_{theta}(x_T, T, c))+sigma_Tepsilon’

xT1=αT
1
(xT
1αT
ϵθ(xT,T,c))+
σTϵ
恢复到时间步

T

1

T – 1

T1 的图像

x

T

1

x_{T – 1}

xT1。通过多次迭代,最终恢复出原始图像

x

0

x_0

x0

5. 项目实战:代码实际案例和详细解释说明

5.1 开发环境搭建

5.1.1 操作系统

建议使用Linux或Windows操作系统,因为它们支持大多数深度学习框架和工具。

5.1.2 Python环境

安装Python 3.7及以上版本。可以使用Anaconda或Miniconda来管理Python环境。创建一个新的虚拟环境:

conda create -n stable_diffusion python=3.8
conda activate stable_diffusion
5.1.3 安装依赖库

安装 diffuserstransformersftfyaccelerate 等库:

pip install diffusers transformers ftfy accelerate

5.2 源代码详细实现和代码解读

以下是一个完整的Python代码示例,用于生成一张带有特定风格的风景图像:

import torch
from diffusers import StableDiffusionPipeline

# 检查是否有可用的GPU
device = "cuda" if torch.cuda.is_available() else "cpu"

# 加载模型
model_id = "runwayml/stable-diffusion-v1-5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to(device)

# 定义提示词
prompt = "A beautiful and serene landscape in the style of Van Gogh"

# 生成图像
image = pipe(prompt).images[0]

# 保存图像
image.save("van_gogh_landscape.png")

5.3 代码解读与分析

  • 导入库:导入 torchStableDiffusionPipeline 库,用于深度学习计算和图像生成。
  • 检查GPU:使用 torch.cuda.is_available() 检查是否有可用的GPU,如果有则使用GPU进行计算。
  • 加载模型:使用 StableDiffusionPipeline.from_pretrained() 从预训练模型中加载Stable Diffusion模型,并将其移动到指定的设备上。
  • 定义提示词:定义一个文本提示,描述要生成的图像的主题和风格。
  • 生成图像:使用 pipe(prompt) 生成图像,并从返回的结果中获取第一张图像。
  • 保存图像:使用 image.save() 方法将生成的图像保存到本地。

6. 实际应用场景

6.1 艺术创作

Stable Diffusion在艺术创作领域有着广泛的应用。艺术家可以使用它来获取灵感,生成各种风格的艺术作品,如绘画、插画等。通过输入不同的提示词,如“印象派风格的城市风景”、“科幻风格的外星生物”,可以快速生成具有独特风格的图像,为艺术创作提供了新的思路和方法。

6.2 游戏开发

在游戏开发中,Stable Diffusion可以用于生成游戏中的场景、角色、道具等资产。游戏开发者可以根据游戏的主题和风格,输入相应的提示词,生成高质量的图像素材,从而节省开发时间和成本。例如,生成奇幻风格的游戏地图、卡通风格的游戏角色等。

6.3 广告设计

广告设计师可以利用Stable Diffusion生成吸引人的广告图像。根据广告的产品特点和目标受众,输入相关的提示词,如“时尚的化妆品广告海报”、“健康食品的宣传图片”,可以快速生成符合要求的广告图像,提高广告设计的效率和质量。

6.4 教育领域

在教育领域,Stable Diffusion可以用于辅助教学。教师可以使用它生成与教学内容相关的图像,如历史事件的场景、科学实验的示意图等,帮助学生更好地理解和掌握知识。同时,学生也可以通过自己输入提示词生成图像,培养创造力和想象力。

7. 工具和资源推荐

7.1 学习资源推荐

7.1.1 书籍推荐
  • 《深度学习》(Deep Learning):由Ian Goodfellow、Yoshua Bengio和Aaron Courville撰写,是深度学习领域的经典教材,涵盖了神经网络、优化算法、生成模型等方面的内容。
  • 《Python深度学习》(Deep Learning with Python):由Francois Chollet编写,介绍了如何使用Python和Keras进行深度学习开发,包括图像生成、自然语言处理等应用。
7.1.2 在线课程
  • Coursera上的“深度学习专项课程”(Deep Learning Specialization):由Andrew Ng教授讲授,包括神经网络、卷积神经网络、循环神经网络等多个课程,是学习深度学习的优质资源。
  • Udemy上的“Stable Diffusion从入门到精通”(Stable Diffusion from Beginner to Expert):专门讲解Stable Diffusion的使用和原理,适合初学者和有一定基础的学习者。
7.1.3 技术博客和网站
  • Hugging Face博客:提供了关于Stable Diffusion和其他深度学习模型的最新研究成果和应用案例。
  • Medium上的深度学习相关博客:有许多开发者和研究人员分享的关于Stable Diffusion的技术文章和经验分享。

7.2 开发工具框架推荐

7.2.1 IDE和编辑器
  • PyCharm:是一款专业的Python集成开发环境,提供了代码编辑、调试、版本控制等功能,适合Python开发。
  • Visual Studio Code:是一款轻量级的代码编辑器,支持多种编程语言,具有丰富的插件生态系统,可用于深度学习开发。
7.2.2 调试和性能分析工具
  • TensorBoard:是TensorFlow的可视化工具,可用于监控模型的训练过程、查看模型的结构和性能指标。
  • PyTorch Profiler:是PyTorch的性能分析工具,可用于分析模型的运行时间、内存使用等情况。
7.2.3 相关框架和库
  • Diffusers:是Hugging Face开发的一个用于扩散模型的库,提供了Stable Diffusion等模型的实现和使用接口。
  • Transformers:是Hugging Face开发的一个用于自然语言处理的库,包含了许多预训练的模型,如CLIP、BERT等。

7.3 相关论文著作推荐

7.3.1 经典论文
  • “Denoising Diffusion Probabilistic Models”:提出了扩散模型的基本原理和算法,是扩散模型领域的经典论文。
  • “Latent Diffusion Models”:介绍了潜在扩散模型的概念和实现,是Stable Diffusion的理论基础。
7.3.2 最新研究成果
  • 关注arXiv上关于Stable Diffusion和扩散模型的最新研究论文,了解该领域的最新发展动态。
7.3.3 应用案例分析
  • 可以在ACM Digital Library、IEEE Xplore等数据库中查找关于Stable Diffusion在不同领域应用的案例分析论文,学习实际应用中的经验和方法。

8. 总结:未来发展趋势与挑战

8.1 未来发展趋势

  • 模型性能提升:随着技术的不断进步,Stable Diffusion的模型性能将不断提升,生成的图像质量将更高,细节更加丰富,风格更加多样化。
  • 跨模态应用拓展:Stable Diffusion将不仅仅局限于文本到图像的生成,还将拓展到跨模态应用,如文本到视频、音频到图像等,为用户提供更加丰富的创作体验。
  • 个性化定制:未来的Stable Diffusion将支持更加个性化的定制,用户可以根据自己的需求对模型进行微调,生成符合自己风格和偏好的图像。

8.2 挑战

  • 版权和伦理问题:由于Stable Diffusion可以生成各种图像,可能会涉及到版权和伦理问题。例如,生成的图像可能侵犯他人的版权,或者包含不适当的内容。因此,需要建立相应的法律法规和伦理准则来规范其使用。
  • 计算资源需求:Stable Diffusion的训练和推理需要大量的计算资源,这对于普通用户和小型企业来说可能是一个挑战。未来需要开发更加高效的算法和技术,降低计算资源的需求。
  • 模型可解释性:目前Stable Diffusion等深度学习模型的可解释性较差,难以理解模型是如何生成图像的。提高模型的可解释性是未来研究的一个重要方向。

9. 附录:常见问题与解答

9.1 生成的图像质量不高怎么办?

  • 调整提示词:尝试使用更加详细、准确的提示词,描述图像的主题、风格、细节等信息。
  • 增加步数:在生成图像时,可以增加去噪步数,提高图像的质量,但会增加生成时间。
  • 更换模型:尝试使用不同版本的Stable Diffusion模型,或者使用其他图像生成模型。

9.2 如何避免生成的图像侵犯版权?

  • 只使用自己拥有版权或授权使用的图像进行训练和生成。
  • 对生成的图像进行适当的修改和调整,使其具有独特性。
  • 遵守相关的法律法规和伦理准则,不生成侵犯他人版权的图像。

9.3 运行代码时出现GPU内存不足的错误怎么办?

  • 降低批量大小:在生成图像时,可以降低批量大小,减少GPU内存的使用。
  • 使用混合精度训练:在加载模型时,可以使用 torch.float16 数据类型,降低内存占用。
  • 释放不必要的内存:在代码中及时释放不再使用的变量和张量,避免内存泄漏。

10. 扩展阅读 & 参考资料

10.1 扩展阅读

  • 《生成对抗网络实战》(Generative Adversarial Networks in Action):介绍了生成对抗网络的原理和应用,与Stable Diffusion等生成模型有一定的关联。
  • 《计算机视觉:算法与应用》(Computer Vision: Algorithms and Applications):涵盖了计算机视觉的各个方面,包括图像生成、目标检测等内容。

10.2 参考资料

  • Hugging Face官方文档:https://huggingface.co/docs
  • Stable Diffusion官方GitHub仓库:https://github.com/CompVis/stable-diffusion
  • Diffusers库文档:https://huggingface.co/docs/diffusers/index

文章来源于互联网:AI人工智能浪潮中,Stable Diffusion的技术应用探索

赞(0)
未经允许不得转载:5bei.cn大模型教程网 » AI人工智能浪潮中,Stable Diffusion的技术应用探索
分享到: 更多 (0)

AI大模型,我们的未来

小欢软考联系我们