Stable Diffusion => Text to Image Model 简单试用
Stable Diffusion是2022年发布的深度学习文生图模型(英语)。它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如内补绘制、外补绘制,以及在提示词(英语)指导下产生图生图的翻译。
它是一种潜在(粤语)扩散模型,由慕尼黑大学的CompVis研究团体开发的各种生成性人工神經网络。它是由初创公司StabilityAI,CompVis与Runway合作开发的,并得到EleutherAI和LAION(英语)的支持。 截至2022年10月,StabilityAI筹集了1.01亿美元的资金。
Stable Diffusion的代码和模型权重已公开发布,可以在大多数配备有适度GPU的电脑硬件上运行。而以前的专有文生图模型(如DALL-E和Midjourney)只能通过云计算服务访问。
Stable Diffusion模型支持通过使用提示词来产生新的图像,描述要包含或省略的元素,以及重新绘制现有的图像,其中包含提示词中描述的新元素(该过程通常被称为“指导性图像合成”(guided image synthesis))通过使用模型的扩散去噪机制(diffusion-denoising mechanism)。此外,该模型还允许通过提示词在现有的图中进内联补绘制和外补绘制来部分更改,当与支持这种功能的用户界面使用时,其中存在许多不同的开源软件。
Stable Diffusion建议在10GB以上的VRAM下运行, 但是VRAM较少的用户可以选择以float16的精度加载权重,而不是默认的float32,以降低VRAM使用率。
由于艺术风格和构图不受著作权保护,因此通常认为使用Stable Diffusion生成艺术品图像的用户不应被视为侵犯视觉相似作品的著作权, 但是如果生成的图像中所描述的真人被使用,他们仍然受到人格权的保护,[31] 而且诸如可识别的品牌标识等知识产权仍然受到著作权保护。尽管如此,艺术家们表示担心Stable Diffusion等模型的广泛使用最终可能导致人类艺术家以及摄影师、模特、电影摄影师和演员逐渐失去与基于人工智能的竞争对手的商业可行性。
与其他公司的类似机器学习图像合成产品相比,Stable Diffusion在用户可能产生的内容类型方面明显更加宽容,例如暴力或性暴露的图像。
StabilityAI的首席执行官Emad Mostaque解决了该模型可能被用于滥用目的的担忧,他解释说:“人们有责任了解他们在操作这项技术时是否符合道德、道德和法律”,将Stable Diffusion的能力交到公众手中会使该技术在整体上提供净收益,即使有潜在的负面后果。此外,Mostaque认为,Stable Diffusion的开放可用性背后的意图是结束大公司对此类技术的控制和主导地位,他们之前只开发了封闭的人工智能系统进行图像合成。
Stable Diffusion是在LAION-5B的图片和标题对上训练的,LAION-5B是一个公开的数据集,源自从网络上抓取的Common Crawl(英语)数据。
该模型是在亚马逊云计算服务上使用256个NVIDIA A100 GPU训练,共花费15万个GPU小时,成本为60万美元。
stable diffusion github
https://github.com/CompVis/stable-diffusion
安装stable diffusion
官方项目并不适合我们这些新手直接使用,好在有一些基于 stable-diffusion 封装的 webui 开源项目,可以通过界面交互的方式来使用 stable-diffusion,极大的降低了使用门槛
https://github.com/AUTOMATIC1111/stable-diffusion-webui
AUTOMATIC1111 的 stable-diffusion-webui 是目前功能最多最好用的,强烈推荐,下面就来介绍如何使用它。
开源项目目前的更新频率很快,会不定期的修复一些 bug 或加入一些新功能,所以建议可以时常 git pull 拉取最新代码。
安装使用参考这个:
https://juejin.cn/post/7204356282588282940
常见错误:
ImportError: Using SOCKS proxy, but the 'socksio' package is not installed. Make sure to install httpx using pip install httpx[socks]
.
ERROR: Could not install packages due to an OSError: Missing dependencies for SOCKS support.
“ValueError: Unable to determine SOCKS version from socks://127.0.0.1:10008/”。
解决方法:
unset all_proxy && unset ALL_PROXY
export all_proxy="socks5://127.0.0.1:10008"
最后,到这儿就表示运行成功了
Creating model from config: /home/hesy/stable-diffusion-webui/configs/v1-inference.yaml
LatentDiffusion: Running in eps-prediction mode
DiffusionWrapper has 859.52 M params.
Applying cross attention optimization (Doggettx).
Textual inversion embeddings loaded(0):
Model loaded in 2.3s (create model: 0.5s, apply weights to model: 0.5s, apply half(): 0.4s, load VAE: 0.6s, move model to device: 0.3s).
Running on local URL: http://127.0.0.1:7860
To create a public link, set share=True
in launch()
.
在网页打开http://127.0.0.1:7860就可以测试了。
本文链接地址:https://const.net.cn/741.html