部分章节由团队小吴撰写
首先来澄清一个常见的误解:
有一些人认为 Disco Diffusion (以下简称 DD) 是由 Google 开发的,其实它只是运行在 Google 免费提供的计算资源上。
DD 是 2021 年上半年诞生的一个开源项目,是一个年轻的 TTI 开发社区的集体努力的成果。它还是机器学习-文字转图像生成领域的一个新生阶段的实验性应用模型,而非一个成熟的商业产品。所以 DD 并不像常见的绘图或设计软件/App 有一个友好的界面。而是使用一个 2600 行多代码的 ipynb 文件来完成交互和运行。
而我们使用 DD 的过程也就是修改和运行这个 ipynb 文件的过程。
>> 点这里了解 Disco Diffusion 能画出什么
什么是 ipynb 文件?
.ipynb 是 Jupyter Notebook 所创建的文件格式,就像 .docx 是 Word 文件一样。
Jupyter Notebook 是一款能在浏览器里运行的交互式开发环境。设计初衷是用于科学计算和数据科学的交互应用。编写和运行 Python 是最常见的用法,还能支持 R 和 JavaScript 40 多种编程语言。人们喜欢用它编写教程和代码、实时运行、跑数学方程和可视化。
它方便协作和共享,使用起来比传统的开发环境简单灵活很多(当然缺点也有,此处不提)。所以成为数据科学/机器学习社区内一款非常流行的工具。
Jupyter Notebook 是开源的。而 Colab 就是 Google 二次开发并托管的 Jupyter Notebook 服务。无需设置,你就可以直接使用,同时还能免费使用 Google 提供的 GPU 等计算资源。
Google 账号 和 Google Driver
(下面有详尽的如何注册设置账号的图文教程)
Colab 需注册/登陆后才能使用。所以你首先得开一个 Google(Gmail)账号
Google 的服务在国内无法直接使用,这部分请自己解决
每个 Google 账号都提供了 15G 的免费 Google Driver (云盘空间)。你运行 DD 需要的模型会被下载到你的 Driver 里
使用 DD 时会用到的 initial_image (底图)需要你上传到 Driver
每次运行完生成的作品图片也会被自动保存到 Driver 。包括不同进度时的中间步骤结果预览(需修改一处设置,随后介绍)
运行过程中,Colab 会请求授权取得你 Driver 的访问权限,请允许。
关于 GPU
运行所有 DD 这类的 AI 创作工具都需要消耗惊人的 GPU(显卡)计算资源。假设你希望在自己机器上本地部署DD,显存起码要有 10G,约等于 1080 ti 这个级别的 Nvidia 显卡起步(可以生成 1024*1024 尺寸的作品)。如果你显卡是 AMD 的,或指望在一台几年前的笔记本上跑个试试,我的建议是:想都不要想。
使用部署在 Colab 上的 DD,使用的 GPU 都是 Google 免费提供的(财大气粗)
Colab notebook 需要连接云端提供计算资源的虚拟机才能运行,免费账号最长有机会运行 12 小时,注意是有机会
Colab notebook 如果处于空闲状态的时间过长,会与虚拟机断开连接
每次你打开 Colab 开始运行,都会先随机抽到一款 GPU (像开箱子抽武器)。同一个 IP 地址在一段时间内刷新页面,被分配到也是同一款显卡(此结论未经过充分验证)
你会从这五款武器里随机抽取:
NVIDIA® Tesla® K80 (普通大剑)
NVIDIA® Tesla® T4 (标准重剑)
NVIDIA® Tesla® P100 (银骑士的剑)
NVIDIA® Tesla® V100(深渊大剑)
NVIDIA® Tesla® A100(霜之哀伤)
如果你抽到 V100,记得截屏转发锦鲤。
如果你抽到 A100,记得跟屏幕合影,把照片留给你孙子做纪念。
V100 VS A100
https://lambdalabs.com/blog/nvidia-a100-vs-v100-benchmarks/
Colab 的用量限制
由于是免费的,Colab 随机分配给你 GPU 资源供应没有保证,也不会无限量供应,用量限额会随用户们的总体用量消耗而变化。
Google 并没有公布免费用户每天的用量限额,因为整体系统消耗状况是快速变化、不可预测的。
长时间占着 Notebook 运行计算,或 GPU 资源消耗量大的用户,更有