基于函数计算模板部署AI应用
在本实验场景中,将向大家介绍如何基于阿里云函数计算FC服务部署Stable Diffusion实现文字到图片的生成,以及部署ImageAI目标检测应用,对现有图片内容进行检测。
场景简介
人工智能生成内容(Artificial Intelligence Generated Content,简称 AIGC)是当下最火的概念之一。随着AI技术的快速发展以及众多开源项目(如Stable Diffusion)的诞生,每个人都可以很轻松且廉价地使用到AIGC。Serverless是一种云原生开发模式,可使开发人员专注构建和运行应用,而无需关注和管理服务器等底层基础设施及其运维。
在本实验场景中,我们将向大家介绍如何基于阿里云Serverless服务函数计算FC部署Stable Diffusion实现文字到图片的生成,以及部署ImageAI目标检测应用,对现有图片内容进行检测。这是一项接近零基础的教程,其中并不会包含复杂的概念或者深奥的算法,旨在让您轻松便利的体验Serverless架构和AIGC技术。
实验主要分为以下几个步骤:
开通函数计算FC服务。
通过函数计算中的模板部署Stable Diffusion服务。
创建Stable Diffusion应用。
检查Stable Diffusion应用部署状态。
进入Stable Diffusion的WebUI界面体验内容生成。
通过函数计算中的模板部署ImageAI 目标检测应用。
创建ImageAI 目标检测使用的OSS Bucket。
上传Stable Diffusion生成的图片进行识别。
释放使用模板创建的函数计算服务。
费用说明
本实验时长1个小时,预计产生费用为0.5元。如果您调整了资源规格、使用时长,或执行了本方案以外的操作,可能导致费用发生变化,请以控制台显示的实际价格和最终账单为准。
背景知识
本场景主要涉及以下云产品和服务:
开通函数计算FC服务
本实验将使用函数计算FC服务部署Stable Diffusion应用
在实验页面,单击开始实操。
前往函数计算控制台。
在推荐您创建 AliyunFcDefaultRole默认角色对话框中,单击创建。
在角色快捷创建页面,单击同意授权。
首次开通函数计算用户,可先领取免费额度。
在实验操作面板顶部,单击
图标打开新的标签页,然后在地址栏中输入如下地址并回车,访问免费试用页面。
https://free.aliyun.com/?spm=a2c6h.29426672.J_5391097900.2.5965729bb9DtAC&productCode=fc
在免费试用页面,找到函数计算FC卡片,单击立即试用。
在函数计算FC面板,勾选服务协议,单击立即试用。
说明函数计算为首次开通服务的用户提供相应的试用额度,阿里云账户与RAM用户共享此试用额度。试用额度以月为周期,连续提供12个周期,每个周期超出试用额度的部分均会计入按量付费。
部署配置Stable Diffusion应用
Stable Diffusion是一种扩散模型(Diffusion Model)的变体,称为“潜在扩散模型”(Latent Diffusion Model),使用这个模型,可以生成包括人脸在内的任何图像。Stable Diffusion能够根据我们提供的一些提示词以及可以调整的部分参数,通过模型计算生成一张不错的图片。
本步骤指导您如何使用函数计算部署并配置Stable Diffusion应用。
前往函数计算控制台。
在概览页面,单击右上角的函数计算2.0。
说明如果您登录的是函数计算2.0控制台,可跳过此步骤。
在左侧导航栏中,单击应用。
在应用页面,单击创建应用。
在创建应用页面,选择通过模板创建应用,在热门应用中选择AI数字绘画stable-diffusion自定义模型版,或者可以在右侧搜索框中通过名称检索找到AI数字绘画stable-diffusion自定义模型版,再单击立即创建。
在创建应用页面,根据如下说明进行配置,未提及的配置保持默认即可,单击创建应用。
参数说明:
角色名称:如果角色名检查缺失相关云产品的操作权限,请根据页面引导单击前往授权,添加所需的权限。
地域:选择华东1(杭州)。
绘图类型:选择动漫风格。
在活动应用创建提醒对话框中,勾选已知当前收费项和我已经了解上面的内容,并同意上述描述,然后单击同意并继续部署。
请您耐心等待Stable Diffusion项目部署,整个过程大概需要2分钟时间,在部署也可以查看日志观察应用部署情况。
当应用状态显示部署成功时,即表示应用已经部署完成,并且可以在WebUI域名中查看到应用访问地址。
进入Stable Diffusion的WebUI界面体验内容生成
在应用详情页面,单击WebUI域名右侧的应用访问地址,即可自动跳转至WebUI界面
说明首次访问需要加载几分钟时间,请您耐心等待。
在Stable Diffusion页面,应用已预置了默认的提示词(如下图红框内),可以协助快速生成第一张图片
在Stable Diffusion页面,直接单击生成。在图片生成的过程中,可以在页面上看到生成过程的中间图片逐渐变得清晰。同时,也可以通过进度条直观的了解图片生成的进度和预估剩余时间。
说明生成过程需要耐心等待几分钟,如果长时间未生成图片,可以单击中止,然后再次单击生成。
生成你的自定义图片。
您可以在文生图的文本框中,填入中文/英文提示词,之后单击右侧的生成即可。
提示词就是生成图片的依据,既可以是描述需要生成内容的词,如girl、sunset、forest 等,也可以是用于是描述图像属性的词,如best quality、beautiful、masterpiece等。我们甚至可以通过提示词选择图片生成的视角、光线、画风、人物的姿势、着装、表情、背景的内容等。我们建议加上画风描述词,让图片更加美观,如Cyberpunk(赛博朋克)、shinkai makoto(新海诚)、Ghibli Studio(吉卜力)、Paul Gauguin(梵高)等等。
生成图片之后,单击生成的图片,在弹出的页面先单击保存图标然后单击关闭图标,这时会在图片下方生成下载链接,单击图标的下载链接,将图片下载并保存到本地,记录图片保存的位置,该图片将在后续步骤中使用。
下载完成后修改图片名称为
fc_test.png
。在图片保存的文件夹中,找到刚刚下载的图片并重命名为
fc_test.png
。
创建ImageAI使用的OSS Bucket
在本实验中,ImageAI上传和生成的文件都使用OSS进行存储,本步骤指导您如何创建所需的Bucket。
前往对象存储OSS控制台。
在左侧导航栏中,单击Bucket列表。
在Bucket列表页签,单击创建Bucket。
在创建Bucket面板页面,根据如下说明进行配置,未提及的配置保持默认即可,然后单击完成创建。
参数说明:
Bucket名称:自定义Bucket名称。Bucket名称具有全局唯一性,请一定注意Bucket命名。
地域:选择华东1(杭州)。
存储类型:选择标准存储。
存储冗余类型:选择同城冗余存储。
读写权限:选择私有。
在创建Bucket面板,单击进入Bucket。
在文件列表页面,单击新建目录。
在新建目录面板,目录名填写
origin
,单击确定。在文件列表页面,单击新建目录。
在新建目录面板,目录名填写result,单击确定。
在左侧导航栏中,选择
。在阻止公共访问页面,单击阻止公共访问右侧按钮,将其关闭。
在弹出的对话框中,输入我确认关闭阻止公共访问,单击确定。
部署配置ImageAI 目标检测应用
本步骤指导您如何创建ImageAI目标检测应用。
ImageAI适用于图像预测、自定义图像预测、对象检测、视频检测、视频对象跟踪和图像预测训练,本实验会使用ImageAI的图像预测功能,对Stable Diffusion中生成的图片进行预测,ImageAI函数应用在Bucket上传图片后,会自动触发ImageAI目标检测函数生成图片检测结果。
前往函数计算控制台。
在概览页面,单击右上角的函数计算2.0。
说明如果您登录的是函数计算2.0控制台,可跳过此步骤。
在左侧导航栏中,单击应用。
在应用页面,单击创建应用。
在创建应用页面,选择通过模板创建应用,在人工智能类别中选择ImageAI目标检测,或者可以在右侧搜索框中通过名称检索找到ImageAI目标检测,再单击立即创建。
在创建应用页面,根据如下说明进行配置,未提及的配置保持默认即可,然后单击创建并部署默认环境。
参数说明:
部署类型:选择直接部署。
角色名称:如果角色名检查缺失相关云产品的操作权限,请根据页面引导单击前往授权,添加所需的权限。
地域:选择华东1(杭州)。
对象存储名称:输入创建的OSS Bucket名称。
RAM角色ARN:选择AliyunFcDefaultRole。如果缺失AliyunFcDefaultRole角色,请根据页面引导单击创建新的服务角色,创建所需的角色。
OSS触发器角色:选择AliyunOSSEventNotificationRole。如果缺失AliyunOSSEventNotificationRole角色,请根据页面引导单击创建新的服务角色,创建所需的角色。
存储桶触发前缀:输入
origin/
。预测结果存放路径:输入
result/
。
请您耐心等待ImageAI目标检测项目部署,整个过程大概需要3~5分钟时间,当部署状态显示部署成功时,即表示应用已经部署完成。
在WebUI端体验ImageAI图片预测
本步骤将会指导您如何使用ImageAI应用Web端导入Stable Diffusion中生成的图片并进行图像预测。
在ImageAI应用的环境详情页面,单击访问域名右侧的链接,访问WebUI页面。
说明首次访问需要加载几分钟时间。
在WebUI页面的,单击选择文件。
导入保存在本地电脑中的Stable Diffusion生成的图片。
图片上传完成后,单击图像预测。
等待预测完成后,会在图片下方显示5个预测结果,每个结果后面的数字表示相似度,数字越大表示相似度越高。
上传图片体验ImageAI自动预测并输出结果
本步骤指导您如何将Stable Diffusion生成的图片直接上传至OSS Bucket中自动触发图片预测,并将预测结果输出到OSS Bucket指定目录中
切换至对象存储OSS控制台页签。
在文件列表中,单击origin目录。
在origin目录中,单击上传文件。
在上传文件页面,单击扫描文件。
选择本地电脑中保存的Stable Diffusion生成的图片。
在上传文件页面,当文件状态变为已扫描待上传时,单击上传文件。
返回如下结果,表示文件上传成功。
文件上传完成后,在左侧导航栏中,单击文件列表,然后单击result目录。
在result目录,可以发现已经自动生成了图片预测结果文件,然后单击文件名称。
可以预览文件内容,查看到图片内容预测的结果。
清理及后续
在完成实验后,如果无需继续使用资源,请根据以下步骤,先删除函数计算部署的应用和对象存储OSS Bucket,再结束实操。
重要如果无需继续使用资源,请一定要先删除函数计算的应用后再结束实操,否则函数计算还会继续进行计费。
删除函数计算应用。
前往函数计算应用中心。
在应用页面,找到创建的两个应用,分别单击其右侧操作列下的删除应用,根据页面提示进行删除。
删除对象存储OSS Bucket。
在Bucket列表页面,找到创建的Bucket,单击Bucket名称。在文件列表页面,删除所有的文件后,在左侧导航栏中,单击删除Bucket。在删除Bucket页面,单击立即删除,根据页面提示删除Bucket。
在完成实验后,如果需要继续使用资源,选择付费保留资源,单击结束实操。在结束实操对话框中,单击确定。请随时关注账户扣费情况,避免发生欠费。