借助亚马逊云科技生成你的第一张AIGC图片

        一幅绘画引领的AIGC(AI Generated Content,人工智能生成内容)热潮! 2022年9月AI绘画“太空歌剧院”获得美国科罗拉多州博览会一等奖,同年11月底ChatGPT(人工智能对话聊天机器人)推出并迅速风靡全球,从时间节点上可以看出AIGC热度先于ChatGPT。

        今天一起来动手在亚马逊云科技SageMaker服务上快速搭建基于Stable Diffusion (文生图模型)的 AI 作画应用。

        关于如何申请亚马逊云科技Global账号这里就不再过多赘述,请参考我的另一篇Blog《如何通过AWS Route53注册域名》中的讲解。

        部署AIGC模型至Amazon SageMaker Inference Endpoint,并体验通过Web应用访问。第一步请确保您有足够的限额。

一、申请Endpoint配额

1. 请点击链接https://ap-northeast-1.console.aws.amazon.com/servicequotas/home/services/sagemaker/quotas

 或登陆AWS Management Console,区域选择亚太地区 (东京)ap-northeast-1”右上角点击用户名后出现下拉菜单,选择“Service Quotas” ,点击左侧“AWS服务,搜索栏输入“SageMaker”。如图

 2. 在配额搜索框中输入ml.g4dn.xlarge for endpoint usage 并选中,请注意“AWS默认配额值”为“0”需要进行“请求增加配额”操作。

3.请求提高配额时,注意“更改配额值”需大于“已应用的配额值”。如:这里我已用配额值为2,那更改的配额值至少填写为3。最后点击“请求”完成提额操作。如图

4.完成提额操作后,您的邮箱会收到提额已受理的提醒、处理及完成邮件。也可以在Console--Service Quotas页面“配额请求历史记录” 中见到刚才的提额记录。这个受理过程持续约为24小时内(Basic用户),当然这取决于您账户的“Suppor计划”。

二、创建Amazon SageMaker Notebook实例

1.进入Console页面,确认Region:东京,在搜索栏输入:SageMaker,页面会出现服务:“Amazon SageMaker”点击

 2.进入SageMaker服务界面后在左侧找到“笔记本”并点击,看到“笔记本实例”点击右侧“创建笔记本实例”。因为我们需要创建一个实例来运行 Jupyter Notebook 应用程序的ML(机器学习)计算实例。

 

3.“创建笔记本实例”注意事项:

A. 笔记本实例设置

a.“笔记本实例名称”根据个人喜好自己填写;

b.“笔记本实例类型”选择“ml.g4dn.xlarge”

c.“平台标识符”选择“Amazon Linux 2, Jupyter Lab 3

d. 展开“其他配置”选项,“卷大小”建议设为“75”

B. 权限和加密

IAM角色选择“创建新角色”,保持默认值,点击“创建角色”

其他选项保持默认值点击右下角“创建笔记本实例”。

若是出现下图错误:

请返回“Service Quotas”页面检查SageMaker--ml.g4dn.xlarge笔记本实例配额,若“已应用的配额值”=0,请进行提额操作,步骤同前面Endpoint提额操作。 

 

 

亚马逊科技Support Team受理ml.g4dn.xlarge for notebook instance usage提额成功后,请重新进行“创建Amazon SageMaker Notebook实例”操作,“创建笔记本实例”过程持续数分钟。你可以通过点击“刷新”按钮,确认创建是否成功。如图 

 

三、打开Jupyter Notebook 

 

四、下载/上传Notebook Code 

Download link

Notebook代码是本次动手训练营的主要内容。该代码文件包含以下内容:

在笔记本实例中下载并测试AIGC模型文件

编写模型推理入口代码,打包模型文件,并上传至S3桶

使用代码部署模型至SageMaker Inference Endpoint

(可选)使用会话管理器连接至SageMaker Inference Endpoint进行远程调试

1. 在Jupyter Notebook中点击图1“Upload”找到刚下载的Code文件打开,图2左侧可以见到Code文件,再点击右侧蓝色“Upload”,图3是操作成功的截图。

 

 

 点击上传成功的文件进入Notebook中

 2. Notebook打开时显示“Kernel not found”,请确保Kernel匹配conda_pytorch_p38,这里请选择conda_pytorch_p39,再点击“Set Kernel”。 

 3. 在Notebook中Running Code

Code 执行时你切换至另一页面时,会见到Jupyter页面抬头呈现,再切回Jupyter可以看到内容输出(图1)。也可以通过Code前面的括号进行区分(图2)

 

 Running过程中“2.在Notebook中配置并使用模型—加载模型”有Warning提示请忽略,这里不影响图片生成。

这里会生成两张图片,如图 

 

当然,也可以根据自己的喜好更改此处的Prompts 内容生成自己喜欢的图片。 

 

五、可以借助亚马逊云科技Cloud 9服务布署Web应用来调用SageMaker Endpoint

1. Console页面搜索栏输入“Cloud 9”并进入,点击“Create environment”

 

2. Create environment页面,Name名称请保持您的 AWS Cloud9 环境分配一个账户内唯一且符合命名要求的名称。其余部分保持默认值,滑动到页面末端点击右下角“Create”,直到提示创建成功。

3. 点击“Open”打开刚创建的环境

 

4. 上传/下载Web应用

在Cloud9控制台中输入以下指令下载保存Web应用程序代码压缩文件,并将该压缩文件进行解压。

cd ~/environment
wget https://static.us-east-1.prod.workshops.aws/public/73ea3a9f-37c8-4d01-ae4e-07cf6313adac/static/code/SampleWebApp.zip
unzip SampleWebApp.zip

5. 在Cloud9中安装Flask和boto3

在指令中输入:pip3 install Flask

 

 再接着输入指令:pip3 install boto3 安装boto3

6. 运行app.py

打开SampleWebApp文件夹,找到app.py选中点击鼠标右键点击“Open”,再点击“Run”运行代码

7. 预览Web应用

点击Cloud9控制台正上方“Preview—Preview Running Application”,出现Web页面。Web页面可以点击“Browser”右侧图标,可以弹出到新窗口。

 

 假如在Web页面输入相关信息后,生成图片报错(下图),请检查Cloud9 Environment是否运行正常,重新运行就可以正常生成图片了。

 

以上,是这次动手训练营的实操及遇到的一些问题排错。

最后,各位一定要记得清除本次实验开启的资源。

实验参考手册:

https://catalog.us-east-1.prod.workshops.aws/workshops/3b86fa89-da3a-4e5f-8e77-b45fb11adf4a/zh-CN

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 很抱歉,作为AI语言模型,我无法提供代码。但是,我可以为您提供一些思路和建议: 1. 首先,您需要使用OCR技术(光学字符识别)来识别图片中的文字。Python中有很多OCR库可以使用,例如Tesseract、pytesseract等。 2. 识别出来的文字可以保存在一个字符串中,然后使用Python中的pandas库来生成Excel文件。您可以将识别出来的文字存储在一个列表中,然后将其转换为pandas的DataFrame对象,最后使用to_excel()方法将其保存为Excel文件。 3. 在生成Excel文件之前,您可能需要对识别出来的文字进行一些处理,例如去除空格、换行符等。这可以使用Python中的字符串处理函数来完成。 希望这些思路和建议能够帮助您完成任务。祝您好运! ### 回答2: 使用Python进行图片文字识别和生成Excel可以使用Tesseract OCR和openpyxl库来实现。 首先,需要安装Tesseract OCR和openpyxl库。可以使用pip命令进行安装: ``` pip install pytesseract pip install openpyxl ``` 接下来,导入所需库和模块: ```python import pytesseract from PIL import Image from openpyxl import Workbook ``` 然后,加载待识别的图片: ```python image_path = 'image.jpg' # 图片路径 image = Image.open(image_path) ``` 接下来,使用Tesseract OCR进行图片文字识别: ```python result = pytesseract.image_to_string(image, lang='eng') ``` 最后,使用openpyxl库将识别结果写入Excel文件: ```python excel_path = 'result.xlsx' # Excel文件路径 wb = Workbook() # 创建Workbook对象 ws = wb.active # 获取活动的Worksheet ws['A1'] = result # 将识别结果写入A1单元格 wb.save(excel_path) # 保存Excel文件 ``` 以上代码将识别的文字结果存储在Excel文件的A1单元格,并保存为result.xlsx文件。 请注意,这只是一个简单的例子。实际应用中可能需要对识别结果进行进一步处理和整理。 ### 回答3: 使用Python编写识别图片文字并生成Excel的代码可以借助于Tesseract OCR库和openpyxl库进行实现。下面是一段示例代码: 首先,需要确保你已经安装了Tesseract OCR库和openpyxl库。你可以使用pip来安装它们: ``` pip install pytesseract openpyxl ``` 然后,可以使用以下代码来实现功能: ```python import pytesseract from PIL import Image from openpyxl import Workbook # 设置Tesseract OCR库路径 pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe' # 加载图像 image = Image.open('image.jpg') # 使用Tesseract OCR识别图像中的文字 text = pytesseract.image_to_string(image) # 创建Excel工作簿 workbook = Workbook() sheet = workbook.active # 将识别结果写入Excel的第一行 sheet['A1'] = text # 保存Excel文件 workbook.save('output.xlsx') ``` 在上面的代码中,我们首先设置了Tesseract OCR库的路径,然后使用`Image.open()`函数加载了要识别的图像。接下来,使用`pytesseract.image_to_string()`函数将图像中的文字识别出来,并将结果保存在`text`变量中。 然后,我们创建了一个新的Excel工作簿,通过`Workbook()`函数实现,并选择了默认的活动工作表。使用`sheet['A1'] = text`将识别到的文字写入Excel的A1单元格。 最后,使用`workbook.save()`函数将Excel文件保存到指定路径(在这个例子中,保存为`output.xlsx`文件)。 这样,我们就完成了使用Python识别图片文字并将结果生成Excel的功能。如果需要处理多张图片,可以在循环中重复上述步骤并将结果写入Excel不同的单元格中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值