ModelArts + AppCube 实现 “AI自动识别101种西式美食”【我的低代码AI体验】

举报
林欣 发表于 2022/12/31 23:23:42 2022/12/31
【摘要】 本实验主要利用ModelArts平台现有的模型仓库,带你体验一键式地将模型部署成在线API服务,零代码完成一个AI服务。接着利用华为云AppCube低代码平台,通过拖拽配置的方式,使用很少的代码实现一个前端应用,该应用通过ModelArts连接器,访问ModelArts的API服务,从而实现一整套完整的“自动识别101种西式美食”的解决方案。

实验概述

本实验主要利用ModelArts平台现有的模型仓库,带你体验一键式地将模型部署成在线API服务,零代码完成一个AI服务。接着利用华为云AppCube低代码平台,通过拖拽配置的方式,使用很少的代码实现一个前端应用,该应用通过ModelArts连接器,访问ModelArts的API服务,从而实现一整套完整的“自动识别101种西式美食”的解决方案。

订阅 Model Arts 模型

首先要做的是订阅 Model Arts 中对应的模型,我们访问其首页:https://www.huaweicloud.cn/product/modelarts.html

image.png

进入管理控制台后,在左侧面板中,依次选取“AI应用管理”,“AI应用”,然后切换到“我的订阅”选项卡,点击“查找AI应用”按钮,开始查找相应的模型

image.png

AI Gallary是一个用来存储用户发布的AI模型的应用仓库,你可以在这里搜到你所需要的AI模型,并直接部署发布成API服务

我们在最近7天浏览量排行列表中找到我们今天需要的模型“自动识别101种西式美食”

image.png

进入模型详情页后,点击订阅,订阅该模型。这个模型可以识别101种常见的西餐美食。输入一个西餐的照片,这个模型会预测5种最可能的西餐品类,以及相应的置信度得分。这个模型使用food101数据集训练。

image.png

image.png

订阅完成后,会多出一个“前往控制台”的按钮,点击该按钮,前往ModelArts控制台

image.png

云服务区域选择“华北-北京四”,这一步可以自由发挥(任选)

image.png

可以看到,在ModelArts的AI应用管理处,该模型(自动识别101种西式美食)已经被订阅成功了

image.png

部署上线

在我的订阅里,点击“部署”按钮,然后在点击“在线服务”按钮

image.png

名称填“food-reg”,描述填“AI自动识别101种西式美食”(这里可以自由发挥)

image.png

提交部署任务后,华为云会在后台进行自动部署

image.png

返回在线服务列表可以看到部署进度 (注意:免费的上线时间只有一小时,请合理利用)

image.png

提示:部署有点久,可以先进行后续开发

API服务测试

等待部署成功后,点击“预测”按钮,进入API测试页面

image.png

我测试上传了一张披萨的图片,然后点击预测按钮

image.png

返回报文如下,被识别为:ceviche(南美洲橙汁腌渍鱼),这个结果并不是很准

{
    "predicted_label": "ceviche",
    "scores": [
        [
            "ceviche",
            "0.718"
        ],
        [
            "tuna_tartare",
            "0.057"
        ],
        [
            "paella",
            "0.046"
        ],
        [
            "guacamole",
            "0.033"
        ],
        [
            "nachos",
            "0.031"
        ]
    ]
}

获取AK/SK

在右上角点击账户名,然后进入“我的凭证”,切换到“访问密钥”选项卡,创建并下载密钥

image.png

注意:如果访问密钥泄露,会带来数据泄露风险,且每个访问密钥仅能下载一次,为了帐号安全性,建议您定期更换并妥善保存访问密钥。

这里我已经下载过了,就不重新下载了。下载完后是一个credentials.csv,里面是如下格式的AK/SK

image.png

AppCube 搭建客户端

下载安装包

操作前请先下载示例安装包:https://appcube-ai-temp.obs.cn-north-4.myhuaweicloud.com/CNAMEO__EI-0.0.1-beta.zip

下载好的安装包只有19KB

image.png

进入AppCube

我们来到AppCube首页:https://console.huaweicloud.cn/appcube/?region=cn-north-4#/home

image.png

点击“管理运行环境”按钮,进入AppCube主页(第一次进入,会出现引导教程,点击ESC键可以退出教程)

image.png

安装软件包

切换到“应用开发”选项卡,左侧选择“应用”,然后“导入项目”

image.png

选择我们刚刚下载的 CNAMEO__EI-0.0.1-beta.zip

image.png

导入完成后如下图

image.png

获取 ApigCode 和 ModelId

切换回刚刚ModelArts的部署后的测试页面,切换到调用指南选项卡

image.png

复制API接口地址,如下:https://55f8e16577f545a5a51a77db5399d75b.apig.cn-north-4.huaweicloudapis.com/v1/infers/8150cd8f-7e1e-4a9d-8eb2-ec2840822d31

从API接口中,我们可以得到这两个参数

  • apigCode = 55f8e16577f545a5a51a77db5399d75b
  • modelId = 8150cd8f-7e1e-4a9d-8eb2-ec2840822d31

测试连接器

点击“编辑”按钮,进入“设计器”。首次使用会要求你输入你自己的“名空间”(自由发挥即可)

image.png

左侧选择“集成”,然后“连接器实例”

image.png

然后在左侧列表中选择“ModelArts”,在右侧点击“测试”按钮,测试连接是否正常

image.png

在测试对话框分别填入如下内容(测试图片我用的是一堆香肠)

image.png

ModelArts返回结果错误,状态码401,返回值: {“error_code”:“ModelArts.4203”,“error_msg”:"Invalid request because access prohibited. "}

image.png

之所以会出现上述错误,是因为我们忘记配置AK/SK。填入AK 和 SK 后,点击保存按钮,然后再次点击“测试”重复执行上述配置即可

image.png

测试成功,但是热狗被识别为马卡龙。。。

image.png

修改代码

左侧选项卡选择“页面”,然后依次是“Page”,“demo”

image.png

编辑前,需要点击左上角的“锁定”按钮,获取页面锁

image.png

然后切换到底部的“事件视图”,事件名称选第三个“uploa_on-success_upload_0”,根据提示修改如下两个参数

  • apigCode:55f8e16577f545a5a51a77db5399d75b
  • modelId:8150cd8f-7e1e-4a9d-8eb2-ec2840822d31

image.png

修改完成后,一定要点击这个“保存”按钮,修改才会生效

image.png

测试客户端

点击“预览”按钮,开始测试

image.png

预览界面如下,点击“上传”按钮,上传图片,然后就会自动调用“在线服务API”请求ModelArts数据,并返回预测结果了

image.png

image.png

释放资源

实验完毕后,需要删除原先部署上线的ModelArts项目,释放资源。

回到 ModelArts 管理控制台,先点击“停止”,然后再“删除”服务

image.png

image.png

实验总结

本次实验的大致流程总结如下图

image.png

可以看到全程基本没有编写任何代码,就成功构造了一个AI应用,可以说是非常的方便。ModelArts中的AI Gallary提供了各式各样的AI模型,拿来即用。AppCube提供了许多预制的模板和组件,可以通过拖拽+配置的方式,很快捷的构建应用。

两者(ModelArts+AppCube)搭配,可以让我们零代码快速构建AI应用,让不懂算法的萌新也能进入AI殿堂,可以说是无论对新手还是老手都非常实用!

当然,识别的准确性还有待提高,不过比起动不动就要一周的开发周期,ModelArts+AppCube整个流程下来,不到一个小时完成,我认为已经做的非常好了。

【万众瞩目的低代码AI应用开发实战营来啦!开启实战营之旅(免费体验),写体验文章,赢开发者大礼包!】有奖征文火热进行中:https://bbs.huaweicloud.cn/blogs/384262

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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