使用华为云主机进行基于Functiongraph的AI风格化编程【华为开发者空间】

举报
yd_290702236 发表于 2024/11/16 18:25:41 2024/11/16
【摘要】 新手第一次使用,跟着实例教程一步步做的,也没有花费很多时间,操作较简单。

华为云主机介绍

华为云主机,也称为华为云服务器(Elastic Cloud Server,ECS),是华为云提供的一种高性能、高可靠性、高安全性、高可扩展性的云计算服务。
最近华为云免费赠送华为云开发者一个华为云主机,使每个人都可以在云上进行开发,同时避免了繁琐的云主机配置环节,实现了即领即用,云主机属于Uabuntu系统,提供4GB的运行内存,集成了CodeArts IDE工具以及Java、Python等流行编程语言的运行时插件,不需要再安装其他的第三方开发软件。可以通过点击链接免费领取云主机,领取后即可以进入,第一次进入需要初始化会比较慢,同时注意如果长时间不用将会被回收,需要重新初始化主机。初始化就绪后如下图所示,可以点击‘在浏览器中打开’按钮打开云主机。
image.png
注意:领取的华为云主机每个月可以使用15个小时,总共180个小时;还提供每个月3小时的场景化沙箱资源。

使用

本文主要是根据已有的实操体验空间开发,已有的实操空间博客链接为:基于Functiongraph的AI风格化编程,主要是梳理了一遍开发流程并且提供一些注意的事项。

1、进入云主机

点击‘在浏览器中打开’按钮后将进入云主机,进入的界面如下图所示。
image.png
打开前本地电脑输入法要切换为英文,才可以在云主机中打字,云主机内的中英文切换则需要使用Ctrl键,如果按Shift键将本地电脑的输入法切换回中文后,云主机将无法输入,需要本地电脑重新切换会英文。

2、打开CodeArts IDE安装FunctionGraph插件

打开桌面的CodeArts IDE软件,进入CodeArts IDE主界面,然后点击扩展,搜索FunctionGraph插件并点击安装,如下图所示。
8953fa59b5191af1af5f9083b877d210.png

3、创建函数

FunctionGraph插件安装成功后,在软件的左侧边框就会出现一个FunctionGraph的按钮,点击后进入FunctionGraph插件窗口,并如图开始创建函数。(如果提示需要登陆就先登录,不要点击‘选择要展示的Region’进行Region的选择)
4bf17425f5c356a4883da49ca78f68fc.png
选择Http Function函数,然后选择模板、选择函数名和路径。

4、编写代码

新建好函数后点击左侧的‘项目’按钮,打开项目窗口,此时会显示出刚刚创建的函数,此时还是一个空的项目。

  1. 单击选中src文件夹,点击上方的新建文件夹,建立一个‘templates’文件夹
  2. 再单击选中templates文件夹,点击上方的新建文件,建立一个‘index.html’文件
  3. 最后删除index.js文件,创建新文件app.py
    通过上面的操作总共建立了两个文件——index.html和app.py,其中index.html为浏览器显示的界面,app.py为一个简单的Web服务。
    index.html和app.py文件可以从下面附件进行下载,如果直接复制粘贴,由于不能够复制中文,将会导致中文变成问号,导致最后的网页界面显示全是问号,可以在7、137、139、140、159、162、166、183、209、223这几行进行对应的修改。
    导入代码后需要配置python的虚拟环境,按照弹出的窗口操作即可;然后需要安装flask和requests库,通过在终端输入指令pip install flask和pip install resquests进行安装,安装如下图所示。
    8d73782919df9f95dafcf3fe34985907.png
    安装完成后点击代码编写界面,如果此时仍报未识别库的错误,则关闭软件再重新进入,安装完成界面如下图所示。
    ec1ccb1cefbc3db1c513c29815b41c8b.png
    最后修改bootstrap文件内容为:
    /opt/function/runtime/python3.6/rtsp/python/bin/python3 $RUNTIME_CODE_ROOT/app.py

5、部署函数

回到FunctionGraph插件窗口,选择部署函数为自己创建的函数,选择部署环境为华北-北京四,部署成功后可以点击“选择要展示的Region”,选择华北-北京四就可以看到自己部署的函数,右键选择‘在浏览器打开’如下图所示。
image.png
然后就会打开部署函数的详情界面,如下图所示。
b379b51f5c63dea25a57de7266797fb6.png

6、函数配置委托

1、委托创建和授权

点击链接进入创建委托页面,按下图操作创建委托。
image.png
创建委托界面选择如下图所示。
5c31bad9b26d821bd1abf8dad0b90116.png
创建委托成功后配置委托的权限,点击授权选项:
image.png
进入授权界面,选择ModelArts FullAccess,
bc3716642ff20f8c682a19beb0e93b4f.png
然后默认下一步,最后点击完成。

2、部署函数委托配置

进入最开始通过‘在浏览器打开’的函数详情界面,依次点击设置下的权限(选择上文中创建的委托)和高级设置,如下图进行配置。
image.png
image.png

7、函数配置触发器

首先点击函数概述图上的添加触发器:
3f7d293ecfcb7b24566fbf1987004b56.png
然后依次选择触发器类型、分组、安全认证和后端超时,如下图所示:
d1931755d70f40c7ae02755ac71d2605.png
其中分组如果没有创建则需要先创建,点击创建分组选项进入API网关界面,点击创建分组按钮:
772212c0f8e48b262908140e17819ddf.png
输入分组名称,点击确定后会弹出提示显示分组创建成功,点击‘我知道了’按钮退出即可。创建成功后在添加触发器界面刷新一下就可以选中自己创建的分组了。

8、函数添加依赖包

1、创建依赖包

在最开始通过‘在浏览器打开’的函数详情界面,点击左上角的放回上一级箭头,进入“函数工作流”管理界面,选择“依赖包管理”,点击“创建依赖包”,具体操作如下图所示。
image.png
d08274523fc339e0ac999021a21eab76.png
进入创建依赖包界面,填写依赖包名称,代码包上传方式设置为‘从OBS上传文件’,将OBS链接粘贴到“OBS链接URL”中(OBS URL:https://functionstorage-cn-north-4.obs.cn-north-4.myhuaweicloud.com/applications/depdency/flask-2_0_1-1.zip ),运行时语言选择为‘Python3.9’。

2、添加依赖包

进入函数详情界面,下滑找到代码依赖包栏,点击添加依赖包按钮,依赖包源选择私有依赖包,添加上文创建的依赖包。
f27fd74de86e2c6bc669e222cb199796.png

9、订阅模型并部署AI应用

按照示例链接配置即可,配置完成后复制API接口公网地址。(第一次部署会比较慢,大概五六分钟,部署完成后会显示运行中,且时间会出现服务启动成功,如下图所示)
aa4ac42fbd7f274f0ffac4e0c0aa031e.png

10、调用URL

设置好后就可以在设置》触发器的API网关处复制可打开的URL地址了。
image.png
复制到浏览器打开就可以开始进行动漫分隔头像制作了。

11、动漫风格头像制作

下面为使用示例
befb59cbcf77b8b4be12fce20ef20d1b.png
上传的图片最好人的整张脸都出现在图片中并且尽量靠近图片的中间,且脸无遮挡,这样效果较好。如果处理不出来则不会显示结果,如下图所示。
image.png
注意模型的1小时时长,时间到了后需要重新启动模型的在线服务才可以继续使用,否则会出现一直弹处理失败弹窗的问题。重新启动在ModelArts即模型部署处,如下图所示。
image.png
同时需要注意的是API网关服务(即创建触发器)的流量不是免费的,采用后付费模式,按照API网关实例版本和实际使用时长计费。

12、使用感受

通过华为云主机可以快速简单的部署云服务,让新手也可以体会部署云服务的感觉,降低了入门的门槛。将云服务的上线划分为了代码编写(html界面和web服务逻辑)和线上配置(添加委托、添加触发器、部署模型),降低了开发的难度。
我正在参加【有奖征集 第34期】华为开发者空间一行代码快速上云,参与视频、文章投稿赢2000元开发者礼包
链接:https://bbs.huaweicloud.cn/blogs/438987

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。