ArtSpew - 版本 0.1.0
无数只猴子随机向画布泼洒颜料
探索Stable Diffusion的多样性,通过快速大量随机图像生成来获取艺术创意。
无论是要求以"太空猫咪牛仔"为主题的变体,还是要求1000张完全随机的图像,这都是你的得力工具。使用SD1.5模型,你可以在45秒内用NVidia 4090生成1000张图像。我们还全面支持SDXL。你会在这个宇宙中发现什么呢?
另外,作为一个纯粹展示荒谬性能的例子,我提供了maxperf,它可以在4090上每秒生成149张图像。这种全新的技术将如何带来实时视频的新现实?事情很快就会变得非常有趣。
开个玩笑: 在2022年8月底附近的古老花岗岩维基百科雕刻中,Stable Diffusion被铭刻,人类艺术家不复存在。他们被AI艺术家取代,这些AI艺术家输入文字,三分之二的时间拼写正确,通常能找到"生成"按钮。现在,无数年后,我们已经到了AI艺术家即将被取代的地步。ArtSpew的黎明即将来临。利用随机数生成器的魔力,你可以很快地吐出1000张随机图像。
安装
Linux
# 获取代码
git clone https://github.com/aifartist/ArtSpew
cd ArtSpew
# 在当前目录创建虚拟环境
python3 -m venv ./venv
# 激活虚拟环境
source venv/bin/activate
# 安装所需依赖
pip3 install -r requirements.txt
Windows
请贡献Windows安装说明。
如何在没有明显才能的情况下喷射艺术。 :-)
尝试以下命令进行首次运行:
python3 artspew.py --xl -p "太空猫咪牛仔" -c 10 -n 11
这将生成10张图像。你的主题是"太空猫咪牛仔"。"-n 11"告诉应用程序在你的提示词中添加11个完全随机的标记,以增加多样性并使图像更有趣。通过使用LCM,即使是1024x1024的生成也比SDXL通常的速度快得多。查看你的**spew/**目录中的图像。如果你有4090,第一次就直接生成100张。
你的下一个实验是去掉"-p"提示词,只生成完全随机的图像。耐心点,生成100张。你应该会得到许多有趣的图像。
现在,如果你想要快速但质量降低的效果,使用非常老的sd1.5默认模型,去掉'--xl',至少生成100张图像,有无提示词都可以。在我的机器上,这花了12.45秒。高级用户可以尝试"--help"中的"compile"选项,也许可以在6秒内创建100张图像。编译可能在没有WSL的Windows上无法工作(未测试)。另一种获得更快性能的方法是使用"-b"设置批量大小,以并行生成多个图像。在VRAM较小的GPU上,如果内存不足,请减少批量大小。
注意:与SDXL不同,基本的SD 1.5模型质量不是很好。然而,有成千上万的微调或合并SD1.5模型质量要好得多。你可能已经下载了一些。"-m"选项可用于指定你最喜欢的本地SD 1.5模型的路径。使用--xl但用"-m"指定sd1.5模型可能会毁掉整个宇宙。请避免这样做。
使用:python3 artspew.py --help
获取完整用法。
你的想象力会带你去哪里?
H.R.吉格风格的变异猫怪物,眼睛发光
记得使用"-n"增加一些随机标记到你的提示词中以增加多样性。如果需要更高质量,请使用--xl。使用"-s"增加步数也会改善结果。
未来:虽然"compile"功能大大提高了速度,但除非你想生成大量图像,否则使用起来很痛苦。除非你熟悉torch.compile(),否则不要使用。我下面提到的maxperf使用了一种称为stable-fast的新编译器技术,远远更好。我很快就会将其集成到artspew程序中,使你的速度翻倍。
maxperf
这是一个疯狂快速的GUI应用程序,仅用于展示我们已经取得了多大进步。不要抱怨几天前刚出来的东西的质量。阅读README-maxperf.md获取运行说明。
作为Python模块
from artspew import ArtSpew
artspew = ArtSpew()
image_generator = artspew.create_generator("疯狂的猫")
idx = -1
for image in image_generator:
idx += 1
image.save(f"{idx}.jpg")