企业微信
悟空CRM  >   公司新闻  >  没有显卡也没关系!基于Google Colab免费GPU额度部署Stable Diffusion XL模型,可以生成4K的图!

没有显卡也没关系!基于Google Colab免费GPU额度部署Stable Diffusion XL模型,可以生成4K的图!

悟空软件 阅读次数:165 次浏览

Stable Diffusion XL是StabilityAI最新的开源模型。是目前业界流行的免费开源图像生成大模型。2023年4月份StabilityAI就宣布了SD XL的存在并在2023年7月26日开源。SD XL相比较此前的模型速度更快、提示词更短、生成的图像更加真实。但是,大多数人可能并没有实际运行过,感受过这个模型的魅力。在这篇博客中,我们给大家展示如何利用Google Colab的免费GPU资源,部署一个SD XL模型,并通过prompt生成一些图片。

本文所有代码以及原始notebook都是公开共享的,大家可以去原文获取链接和代码:https://www.datalearner.com/blog/1051692274915130

下图就是一个例子~(Prompt: Astronaut on Mars During sunset, 4k)

Google Colab简介

用Google Colab部署Stable Diffusion XL做文本生成图片

1、新建Colab的notebook

2、创建GPU运行环境

3、StableDiffusion XL代码部署——安装依赖的库

4、StableDiffusion XL代码部署——从HuggingFace下载SD XL模型并加载到内存中

5、StableDiffusion XL代码部署——用SD XL来做文本生成图片的推理

用Google Colab部署Stable Diffusion XL做图片生成图片

加载stable-diffusion-xl-refiner-1.0模型

使用SD XL做Image-to-Image推理

总结

Google Colab简介

Google Colab是一个基于Jupyter notebook的免费云服务,提供GPU和TPU来加速机器学习任务。

每个免费用户都可以获得一个显存约15GB的GPU、内存为12GB左右的CPU和78G硬盘空间。并且可以与Google的云硬盘相连。因此,我们可以直接利用这个notebook运行那些显存要求不高的模型。

简单来说,这个平台最大的特点如下:

提供免费的GPU资源

只能通过Jupyter Notebook方式访问使用

可以通过云端的Jupyter Notebook连接本地硬件运行

网络速度非常快!按照第三方python库和加载HuggingFace的模型可以达到300MB/s!

从这些描述我们可以看到,这是一个值得新手练习和验证大模型使用的平台。

用Google Colab部署Stable Diffusion XL做文本生成图片

话不多说,我们直接开始按照如下步骤部署Stable Diffusion XL到Google Colab上,然后运行。

1、新建Colab的notebook

首先,我们新建一个notebook,如下图所示:

2、创建GPU运行环境

接下来,我们需要创建(连接)Google提供的GPU资源。点击上面界面右上角的Connect边上的小三角形,然后选择Change runtime type。

默认Google会让你连接CPU环境,这肯定不是我们需要的,所以点击Change runtime type之后会出现如下的资源选择,免费用户直接选择T4 GPU即可,这也是Google为大家提供的一个免费GPU资源了。

保存之后,再次点击右上角的Connect按钮就可以连接GPU资源了,当右上角变成如下图所示的样子,说明GPU资源环境已经连接。继续点击那个T4按钮之后就会出现下图所示的环境资源情况了:

可以看到,我们就有了12.7GB的内存,GPU没有显示(实际上是15GB,后面使用了GPU资源就会显示),硬盘资源78.2GB。

3、StableDiffusion XL代码部署——安装依赖的库

在实际运行代码之前需要先安装相关的库。这里我们用HuggingFace官方提供的diffusers库来运行SD XL。所以需要安装依赖的库代码如下:

1、!pip install transformers

2、!pip install accelerate

3、!pip install safetensors

4、!pip install diffusers

上述代码需要在notebook中运行,需要点击左上角的+ Code就能出现一个Cell,然后在Cell里面输入上述代码即可,输入完毕之后Cell左侧的那个播放按钮点击一下就开始安装了。

点击完播放按钮之后就看到下方快速刷新的安装日志了~

看到左上角的绿色的勾勾就说明运行很成功,上图里面的左侧就是了。可以看到下方的日志,安装速度很快,下载速度最快都到了84MB/S,比国内的网络好多了。

4、StableDiffusion XL代码部署——从HuggingFace下载SD XL模型并加载到内存中

 

接下来就是加载模型了,我们需要继续在notebook的左上方+ Code点击,新建一个代码块,然后输入如下代码:

上述代码输入完毕之后点击左侧的播放按钮,就会从官方的HuggingFace上下载Stable Diffusion XL Base 1.0这个模型了。

如上图所示,直接下载和加载模型仅需要1分钟左右就行了,这里可以看到模型大小5GB多,下载速度最高接近300MB/S,所以模型就算大,直接运行下载也很快,这里的一分钟包含了从HuggingFace下载模型以及加载的GPU显存里面的时间。同时,右侧的GPU显存也出现了7.7/15.0GB,说明给我们分配了15GB显存的GPU,加载SD XL模型用了7.7GB。

5、StableDiffusion XL代码部署——用SD XL来做文本生成图片的推理

 

经过上述步骤,我们的模型其实就已经完成了,接下来我们要做几个SD XL模型的推理应用。第一个测试的是文本生成图片。代码如下:

注意,这里的datetime部分主要是我用来计算我们推理的时间的,大家也可以删除。上述代码运行完毕之后得到如下结果:

可以看到,我们52秒运行完毕出了一张图,然后GPU的显存也从7.7GB涨到了13.9GB,刚刚好足够!如果想继续测试其它图片,直接更改上面的prompt内容就可以,前面的代码也不用再运行了。

用Google Colab部署Stable Diffusion XL做图片生成图片

Image to Image的应用与前面类似,其中1-3步骤不变,主要是加载的模型和使用的方法差别。代码如下:

加载stable-diffusion-xl-refiner-1.0模型

 

总结

这篇博客主要给大家介绍了如何使用Google Colab的免费GPU资源来搭建Stable Diffusion XL应用。其实,SD XL能做的事情很多,包括Inpainting、Refining the image output等。这里大家直接看原文档即可,我们也分享一下本文的两个例子,大家直接在自己的Google Colab打开即可运行。

StableDiffusion XL的文本生成图像部署实例和StableDiffsuion XL的图像生成图像部署实例的Colab代码链接见原文末尾:

https://www.datalearner.com/blog/1051692274915130

 

 

 

悟空CRM产品更多介绍:www.5kcrm.com

相关内容

CRM客户服务管理系统怎么高效使用?使用方法与技巧

高效使用CRM(客户关系管理)客户服务管理系统对于提供卓越的客户服务、提高客户满意度和维护客户关系至关重要。以下是一些使用方法和技巧,帮助您高效使用CRM客户服务管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM客户服务管理系统中,包括姓名、联系方式、历史服务记录等。定期更新客户信息以确保数据的准确性。快速查找客户信息:利用CRM系统的搜索和筛选功能快速查找客户信息,以提供迅速的响应和支
相关文章

微信客户管理系统是什么?它如何结合微信平台进行客户关系管理?

导言:随着社交媒体的发展,微信作为国内最常用的社交软件之一,已经成为互联网营销和客户关系管理的重要渠道。微信客户管理系统是企业在微信平台上使用的一种客户关系管理系统,它集成了微信平台的特点和功能来帮助企业管理客户,并和客户进行有效的沟通交流。下面本文就微信客户管理系统的定义、特点和操作方法等进行详细介绍:一、微信客户管理系统的定义:微信客户管理系统是一款在线的、基于微信平台的客户关系管理软件平台,
相关文章

销售CRM客户管理系统怎么高效使用?使用方法与技巧

高效使用销售CRM(客户关系管理)客户管理系统对于提高销售效率、加强客户关系和增加销售机会至关重要。以下是一些使用方法和技巧,帮助您高效使用销售CRM客户管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM系统中,包括姓名、联系方式、公司、职位、购买历史等。定期更新客户信息以确保数据的准确性和完整性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,如潜在客户、现有客户、高价值客户等
相关文章

客户销售CRM系统用途有哪些?使用方法与技巧

客户销售CRM系统(Customer Relationship Management)是一种强大的工具,用于管理客户关系和提高销售效率。以下是一些客户销售CRM系统的主要用途,以及使用方法和技巧:主要用途:客户管理: CRM系统用于记录和管理客户信息,包括联系信息、交互历史、购买历史等。这使销售团队能够更好地了解客户,提供更个性化的服务。销售机会管理: CRM系统帮助销售团队跟踪销售机会的生命周期
相关文章

CRM销售管理系统用途有哪些?使用方法与技巧

CRM(客户关系管理)销售管理系统是一种用于管理客户关系和提高销售效率的工具。以下是CRM销售管理系统的主要用途,以及使用方法和技巧:主要用途:客户信息管理: CRM销售管理系统用于记录和管理客户信息,包括联系信息、公司信息、购买历史等。这有助于销售团队更好地了解客户,提供更个性化的服务。销售机会管理: CRM系统帮助销售团队跟踪和管理销售机会的生命周期,从潜在客户到交易关闭。这有助于提高销售预测
相关文章

CRM后台管理系统怎么高效使用?使用方法与技巧

高效使用CRM(客户关系管理)后台管理系统是确保客户信息管理和销售团队协作顺畅的关键。以下是一些使用方法和技巧:完整记录客户信息:将客户的详细信息(如姓名、联系方式、公司、职位等)准确地录入CRM后台管理系统中。定期更新客户信息以确保数据的准确性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,例如潜在客户、现有客户、高价值客户等。根据不同类别的客户需求和兴趣制定个性化的沟通和营销策略。记
相关文章

CRM客户管理系统软件怎么高效使用?使用方法与技巧

要高效使用CRM(客户关系管理)客户管理系统软件,需要以下使用方法和技巧:完整记录客户信息:将客户的详细信息(如姓名、联系方式、公司、职位等)准确地录入CRM系统中。定期更新客户信息以确保数据的准确性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,例如潜在客户、现有客户、高价值客户等。根据不同类别的客户需求和兴趣制定个性化的沟通和营销策略。记录互动和活动:记录所有与客户的互动,包括电话、
相关文章

客户关系管理系统怎么高效使用?使用方法

高效使用客户关系管理(CRM)系统是关键,因为它可以帮助您更好地管理客户信息、提高客户满意度、加强客户互动并促进业务增长。以下是一些高效使用CRM系统的方法:完整记录客户信息:将客户的详细信息(例如姓名、联系方式、公司信息、职位等)完整地录入CRM系统中。定期更新客户信息以确保数据的准确性。分类与分段客户:利用CRM系统将客户分为不同的类别或段,如潜在客户、现有客户、高价值客户等。根据不同类别的客
相关文章

CRM销售系统怎么高效使用?使用方法

高效使用CRM(客户关系管理)销售系统可以帮助企业更好地管理客户关系、提高销售效率和增加销售机会。以下是一些使用CRM销售系统的方法:完整记录客户信息:将客户的基本信息、联系方式、购买历史、互动记录等详细信息完整录入CRM系统中。鼓励销售团队及时更新客户信息,确保数据的准确性和完整性。跟进和提醒功能:利用CRM系统的提醒功能,安排和跟进客户互动、电话、电子邮件和会议。设置提醒以确保您不会错过关键的
相关文章

客户信息管理系统怎么高效使用?使用方法

客户信息管理系统是一种有助于企业有效管理客户信息和互动的工具。以下是高效使用客户信息管理系统的一些方法:数据录入与更新:将客户信息准确地录入系统中,包括姓名、联系方式、公司名称、地址等重要信息。定期更新客户信息,确保系统中的数据保持最新。分类与分段:将客户信息按照不同的标准进行分类和分段,如潜在客户、现有客户、高价值客户等。制定客户分析策略,根据不同分段的需求开展针对性的市场活动。沟通记录:记录所
相关文章
最新文章

CRM客户服务管理系统怎么高效使用?使用方法与技巧

高效使用CRM(客户关系管理)客户服务管理系统对于提供卓越的客户服务、提高客户满意度和维护客户关系至关重要。以下是一些使用方法和技巧,帮助您高效使用CRM客户服务管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM客户服务管理系统中,包括姓名、联系方式、历史服务记录等。定期更新客户信息以确保数据的准确性。快速查找客户信息:利用CRM系统的搜索和筛选功能快速查找客户信息,以提供迅速的响应和支
最新文章

销售CRM客户管理系统怎么高效使用?使用方法与技巧

高效使用销售CRM(客户关系管理)客户管理系统对于提高销售效率、加强客户关系和增加销售机会至关重要。以下是一些使用方法和技巧,帮助您高效使用销售CRM客户管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM系统中,包括姓名、联系方式、公司、职位、购买历史等。定期更新客户信息以确保数据的准确性和完整性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,如潜在客户、现有客户、高价值客户等
最新文章

客户销售CRM系统用途有哪些?使用方法与技巧

客户销售CRM系统(Customer Relationship Management)是一种强大的工具,用于管理客户关系和提高销售效率。以下是一些客户销售CRM系统的主要用途,以及使用方法和技巧:主要用途:客户管理: CRM系统用于记录和管理客户信息,包括联系信息、交互历史、购买历史等。这使销售团队能够更好地了解客户,提供更个性化的服务。销售机会管理: CRM系统帮助销售团队跟踪销售机会的生命周期
最新文章

快速注册,立即使用

仅需一分钟,立即注册悟空云。悟空CRM免费试用。
客户端下载