将 Stable Diffusion API 应用于 Google Colab
Stable Diffusion 是一种文本到图像的扩散模型,可以应用于图像生成。扩散模型能够从文本生成逼真的图像。Stable Diffusion 由来自 CompVis、LAION 和 StabilityAI 的研究人员和工程师共同创建。由于研究人员的低成本和公共可用性,Stable Diffusion 比其他图像生成模型更有优势。公开可用允许用户直接将代码导入集成开发环境,例如 Google Colabatory。
稳定扩散到 Google Colab
下面的最小稳定扩散代码适用于免费使用。Google Colab 可能会提示笔记本需要高 RAM。最小代码不会超过 RAM 分配,尽管扩展进程可能会超过可用资源分配。
如何在 Google Colab 中运行 Stable Diffusion 代码:
创建拥抱脸帐户
接受 stable-diffusion-v1-4 的服务条款访问您的 Huggingface 令牌
打开 Google Colab 并按顺序运行每个单元格(Google Colab 正在安装功能所需的包和库。)
安装后,使用 1.1 中提到的令牌验证您的 Huggingface 登录名运行最终单元格并输入所需的稳定扩散提示
!pip install transformers scipy ftfy "ipywidgets>=7,<8" datasets
!git clone https://github.com/huggingface/diffusers.git
!pip install git+https://github.com/huggingface/diffusers.git
cd diffusers
from huggingface_hub import notebook_loginnotebook_login()
import torchfrom torch import autocastfrom diffusers import StableDiffusionPipeline, LMSDiscreteSchedulerimport requestsfrom PIL import Imagefrom io import BytesIOfrom google.colab import fileslms = LMSDiscreteScheduler( beta_start=0.00085, beta_end=0.012, beta_schedule="scaled_linear")pipe = StableDiffusionPipeline.from_pretrained( "CompVis/stable-diffusion-v1-4", scheduler=lms, revision="fp16", use_auth_token=True).to("cuda")user_input = input('Enter prompt for Stable Diffusion: ')prompt = user_inputwith autocast("cuda"): image = pipe(prompt)["sample"][0] Image
上面的代码是在 Google Colab 中使用 Stable Diffusion API 的最小方法。可以在此代码上构建高级技术,例如使用 gradio 的 Web 应用程序或增强所需效果的自动后处理。高级文档由 Huggingface 在 https://github.com/huggingface/diffusers 提供。
有关 Stable Diffusion 和 Google Colab 的深入文档,请访问 https://colab.research.google.com/github/huggingface/notebooks/blob/main/diffusers/stable_diffusion.ipynb