好消息!好消息!阿里云服务器ECS推出了GPU云服务器,那么什么是GPU云服务器呢?
GPU云服务器
首先说一下什么是GPU云服务器?GPU云服务器是提供 GPU 算力的弹性计算服务,具有超强的计算能力,服务于深度学习、科学计算、图形可视化、视频处理多种应用场景。基于AIGC,GPU可以帮助更多企业快速搭建对话大模型服务、AI绘画功能、AI对话机器人等更多AIGC方案。
可以说,你对AIGC好奇吗?你对AIGC感兴趣吗?你想感受一下AIGC的魅力吗?欢迎您来开通GPU云服务器,助力您的AIGC不是梦。
AIGC来也
本文是基于GPU云服务器,利用AiaccTorch加速,实现搭建Stable Diffusion的WebUI框架2秒内文本生成图片的操作,下面开始上手实践吧。
开通GPU服务
在上手搭建Stable Diffusion的WebUI框架之前,我们首先需要开通GPU服务,GPU云服务器开通服务地址:AIGC入口,由于本次操作需要的是16核60G + 1张A10 24G显存(gn7i-c16g1.4xlarge)型号的GPU实例,这里我直接提供当前实例的开通地址:立即开通,点击【立即开通】进入GPU实例开通页面
其中【付费类型】和【地域】默认的即可,考虑到我们实验操作必须要gn7i-c16g1.4xlarge型号的GPU实例,那么我们把需要的型号放在【实例】搜索条件上
这时可以看到我们需要的实例型号只能在【可用区J】和【可用区K】中有,切换上方可用区
提示没有【交换机】,那么我们在按照提示创建交换机
其中输入交换机名称,选择好ip地址点击【确定创建】,创建成功后如图
第一个就是我们刚才创建成功的交换机,继续回到GPU实例开通页面
继续向下操作,选择【云市场镜像】,
点击【从云市场获取更多...】在弹框页面中输入 ai-inference-solution 搜索
点击【使用】然后继续向下配置【公网IP】,带宽峰值设置为10 Mbps
然后配置服务器密钥对
完成以后点击右侧【确认下单】
这里需要注意的是,由于开通了按量计费,因此在点击【确认下单】后如果账户低于100需要充值,具体的充值操作按跳转的去操作即可。
这里需要注意的是,整个开通GPU服务的操作并不是很流畅,官方文档中并没有详细的说明,对于开通中缺少的【交换机】信息,大家可以参考我操作步骤中的相关内容。
配置安全组规则
首先需要为GPU服务器添加安全组规则,找到安全组规则列表,补充如下安全组规则’
远程连接GPU云服务器
登录GPU云服务器控制台:https://ecs.console.aliyun.com/home,可以看到我们已经创建好的实例
点击实例名称进入实例详情,点击【远程连接】打开远程连接页面
点击【立即登录】跳转到服务器操作页面,输入服务器密码root
提示登录失败,回到实例详情页点击【重置实例密码】输入新的密码
点击【保存密码】然后选择立即重启GPU云服务器。再次输入密码成功进入服务器操作界面
配置nginx用户
镜像预装了nginx,我们需要配置用户名密码
htpasswd -bc /etc/nginx/password ${UserName}'${Password}'
重启nginx并查看nginx状态
# 重启systemctl restart nginx # 查看状态systemctl status nginx # 开机自启动systemctl enable nginx
nginx操作结果如图
文生图
完成了以上的配置之后,我们就可以体验文生图了。在进行文生图之前,我们首先需要启动WebUI服务
cd ~/stable-diffusion-webui/ nohup ./run_taiyi.sh &
等待WebUI服务启动成功之后我们去浏览器进行验证
开启AiaccTorch
默认是开启AiaccTorch的,打开页面输入【铁马冰河入梦来,概念画,科幻,玄幻,3】单击生成/Generate 生成图片
返回执行日志数据内容
铁马冰河入梦来,概念画,科幻,玄幻,3 Steps: 20, Sampler: Euler a, CFG scale: 7, Seed: 2207305383, Size: 512x512, Model hash: 70a38ac1c4, Model: Taiyi-Stable-Diffusion-1B-Anime-Chinese-v0.1, Version: v1.3.0-5-g43a52351 Time taken: 0.88sTorch active/reserved: 915/1470 MiB, Sys VRAM: 9639/22564 MiB (42.72%)
可以看到整个图片生成耗时0.88s相比之前搭建的AIGC文生图,速度已经提升了几十倍。下面我们再看一下不启动AiaccTorch加速的文生图的效果。
禁用AiaccTorch
单击设置/Settings页签,左侧导航选择AiaccTorch,取消选中Apply Aiacctorch in Unet to speedup the whole network inference when loading models后(取消2的选择),单击应用设置/Apply settings,再单击重新加载WebUI/Reload UI,
再次输入文本【铁马冰河入梦来,概念画,科幻,玄幻,3】单击生成/Generate 生成图片
这个时候我们可以很客观的感受到文生图变慢了,耗时10.16s。
切换模型
切换模型输入内容测试图片生成效果,同时开启AiaccTorch,输入提示词
1个女孩,绿眼,棒球帽,金色头发,闭嘴,帽子,看向阅图者,短发,简单背景,单人,上半身,T恤
反向提示词
水彩,漫画,扫描件,简朴的画作,动画截图,3D,像素风,原画,草图,手绘,铅笔
生成结果如图
耗时3.34s
使用LoRA插件
LoRA是Stable Diffusion模型的一种插件,它允许在不修改Stable Diffusion模型的情况下,使用少量数据训练出一种画风、IP或人物,以实现定制化需求。相较于训练Stable Diffusion,使用LoRA所需的训练资源更少,非常适合社区用户和个人开发者使用。
在提示词文本后加入<lora:iuV35.uv1P:1>,生成图片
耗时2.06s
使用Controlnet插件
ControlNet是一个用于控制AI图像生成的插件,它可以利用输入图片中的边缘特征、深度特征或人体姿势的骨架特征,与文字提示一起精准地控制AI图像的生成,以获得更好的视觉效果。
Canny是ControlNet中一个常见的模型,用于识别输入图像的边缘信息,从上传的图片中生成线稿,然后根据关键词生成与上传图片相似构图的画面。
单击ControlNet v1.1.222右侧箭头,如下选择
输入刚才生成的图片,点击生成图片
耗时8.42s
到这里整个文生图的操作从部署到文生图就全部完成了,可以说开启AiaccTorch推理加速之后,整个文生图的生成效率提高了很多倍,生成的效果图也更接近理想效果。
服务器监控
在文生图的过程中,个人也是比较关注GPU服务器的情况,毕竟文生图对于服务器算力的要求比较高,我们先来看一下GPU云服务器的监控数据
可以看到在整个文生图的过程中,CPU、内存、系统负载等都没有压力,足以支撑眼下比较火热的AIGC业务服务。另外也可以创建报警规则,比如设置CPU使用了达到一定阈值就自动给设置好的联系人发送预警消息等,具体的创建报警规则页面如图
当然,如果想要查看更详细的服务器信息,也可以点击【查看更多指标】跳转到云监控控制台
在云监控【操作系统监控】我们可以看到在文生图期间GPU服务器的CPU使用率、内存、系统平均负载等的详细数据,可以更好的评估当前服务器对文生图能力的抗压情况
磁盘使用情况
我们在看一下GPU的使用情况,可以说GPU的使用率在经历了加速的文生图之后也仅仅只是使用了0.25%,可以说GPU云服务器是专门为AIGC服务,为文生图提供超强的计算能力
实例释放
在完成了整个过程的实验之后,如果你的实例不再使用,建议及时释放,以免按量付费对您造成不必要的的开支,点击GPU云服务器列表右侧 【更多】输入搜索关键词【释放】
选择【释放设置】,在弹出的页面可以选择立即释放,也可以选择定时释放,
释放完成后云服务器实例列表便没有对应的服务器了
使用体验
给新手的建议
虽然说是初次使用GPU云服务器,但是对于GPU云服务器的操作和传统的云服务器ECS是一致的,对于新手小白完全不用担心,整个操作没有不适应的感受,不同类型云服务器的差别主要体现在内部的业务倾向及算力支持上,对外的操作始终是一致的,这一点可以很大的降低用户操作的学习成本。
场景建议
在这次的AIACC加速器场景下文生图的体验,个人参考文档整体上操作下来耗时1小时左右,操作不多,只是按钮以文字的形式出现在文档中,在实际操作中容易忽略,不太容易找到,希望可以将操作过程以慢动图的形式展现,这样整体操作的更流畅。
另外对于AIACC加速器场景文生图,在实际操作过程中我并没有尝试自己随机的词汇拼凑来文生图,主要是鉴于之前这样的效果往往很差,所以此次并没有尝试。同时也希望官方可以提供一个训练了尽可能多的AIGC体验场景来让开发者感受AIGC的魅力,可以随意的组词进行文生图的那种,训练程度达到目前【通义千问】的效果就可以的。
场景优势
大家都知道,AIGC对算力的要求很高,那么传统的物理服务器或者是云服务器往往都不能提供足够的算力来支撑文生图的数据训练,而GPU服务器具有更高的性能,可以加速计算机视觉、机器学习和其他高性能计算任务,提高计算效率;另外GPU服务器可以提供更低的延迟,可以更快地处理实时数据和交互式应用程序,可以说AIGC文生图的发展,除了需要AIACC推理加速器,还需要这样高算力、低延迟、高可用性的GPU云服务器助力。
任何时候,效率决定了用户体验,AIGC文生图要快,GPU云服务器支撑也要强大,这样才能支撑海量的训练数据源源不断的注入,从而不断丰富AIGC场景,就想GPT的飞速发展一样。当前AIGC场景最希望改进的地方其实就是训练数据的缺乏,希望通过后期不断的训练,可以实现任何文本的文生图体验。