通过搭建AI低代码,自动识别101种西式美食 【我的低代码AI体验】

举报
福州司马懿 发表于 2022/12/27 18:25:10 2022/12/27
【摘要】 什么是 ModelArtsModelArts 是面向开发者的一站式 AI 平台,为机器学习与深度学习提供海量数据预处理及交互式智能标注、大规模分布式训练、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期 AI 工作流。它具有以下4个特性低门槛:开箱即用,零基础3步即可构建AI模型高效率:AI 开发全流程可视化管理,生产效率百倍提升高性能:自研 MoXin...

什么是 ModelArts

ModelArts 是面向开发者的一站式 AI 平台,为机器学习与深度学习提供海量数据预处理及交互式智能标注、大规模分布式训练、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期 AI 工作流。

它具有以下4个特性

  1. 低门槛:开箱即用,零基础3步即可构建AI模型
  2. 高效率:AI 开发全流程可视化管理,生产效率百倍提升
  3. 高性能:自研 MoXing 框架,极致提升开发效率和训练速度
  4. 易运维:灵活支持多厂商多框架多功能模型统一纳管

ModelArts 的入口

首先访问华为云官网:https://activity.huaweicloud.cn/

然后依次点击“产品”—>“人工智能”—>“AI开发平台ModelArts”

图片.png

图片.png

什么是 AI Gallery

AI Gallery 是一个“资产集市”。通过该集市,开发者可以有偿(或无偿)的共享Notebook代码样例、数据集、算法、模型、Workflow等AI资产。

AI Gallery 的入口

在ModelArts页面,展开“功能模块”,选择 AI Gallery,即可进入相应页面

图片.png

图片.png

寻找所需模型

在 AI Gallery 页面,选中“资产集市”,然后点击“部署”下的“模型”按钮

图片.png

在搜索框中输入“美食”,就可以找到我们今天要做的这个案例 —— 《自动识别101种西式美食》

图片.png

进入该模型,可以看到详细的模型描述信息

  1. 背景
    通过拍照识别食物种类和卡路里的功能真的很酷。而其中的核心模块,就是基于图像中的食物种类识别。
  2. 模型简介
    这个模型可以识别101种常见的西餐美食。输入一个西餐的照片,这个模型会预测5种最可能的西餐品类,以及相应的置信度得分。这个模型使用food101数据集训练。数据集地址:https://www.vision.ee.ethz.ch/datasets_extra/food-101
  3. 使用方法
    目前该模型支持使用ModelArts平台进行交付,订阅该模型后,你可以将该模型发送到一个指定的Region的ModelArts平台。在ModelArts平台,你可以一键式地将该模型部署成在线API服务。你也可以收集、标注并上传自己真实业务场景中的数据,对该模型进行二次调优(Fine-tune)。

图片.png

点击右上角的“订阅”按钮,准备开始使用该模型

图片.png

“订阅”完后,按钮会由“订阅”自动变为“已订阅”和“前往控制台”

图片.png

使用 ModelArts

点击“前往控制台”按钮,云服务区域选择“华北-北京四”(这个没有要求,可以随意)

图片.png

访问授权

注意:上面有一行红字提醒你,要使用该服务,必须先进行授权:“由于ModelArts的数据存储、模型导入以及部署上线等功能依赖OBS、SWR等服务,需获取依赖服务的授权后,才能正常使用ModelArts的相关功能”

图片.png

根据提示,点击链接可以进入到授权页。页面上提示你 “暂无赋予ModelArts的委托,请切换至“新增委托”选项进行访问授权配置”,按照提示,切换到“新增委托”选项

图片.png

使用默认的“普通用户”即可,然后勾选“服务声明”,最后点击“创建”按钮,创建“访问授权”

图片.png

创建好后,会自动跳转到“总览”页面

图片.png

部署模型

在左侧选项卡中,依次选中“AI应用管理”—>“AI应用”,然后切换至“我的订阅”选项卡

图片.png

在前面订阅的资产《自动识别101种西式美食》左侧,单击展开详情,点击右下角的“部署”按钮,然后点击“在线服务”

图片.png

填入“名称”和“描述”,然后勾选“我已阅读并同意以上内容”即可进行下一步

图片.png
图片.png

确认信息后,点击“提交”

图片.png

提示“任务提交成功”

图片.png

这个部署时间会有点久,大概要5分钟左右,状态才会变为“部署成功”

图片.png

预测图片信息

右边的“更多”按钮里面,藏的是“停止”和“删除”按钮

部署的这个服务,一共有5种操作

  1. 修改
  2. 预测
  3. 启动
  4. 停止
  5. 删除

图片.png

免费算力资源部署的服务运行1小时后,就会自动停止,停止后需要删除已有服务并重新部署,否则会启动失败

部署完成后,点击应用名称,可以看到其接口(POST类型)和详细的调用方式(输入参数只有一个图片文件;输出最有可能的物品标签和各种可能的得分情况)

图片.png

在预测页面,上传图片,点击预测,右边即会出现可能的食品标签,及各个不同食品概率的可能性 (我传的图片成功被预测出是 —— 蛋挞)

图片.png

监控信息页面会显示当前CPU、内存、GPU的使用情况

图片.png

获取访问密钥

登录华为云后,点击右上角的账号处,然后在下拉框中选择“我的凭证”

图片.png

出于安全性考量,华为云规定了“访问密钥”生成后只能被下载一次

图片.png

如果还没创建过“访问密钥”,点击“新增”按钮进行创建(输入密钥的描述信息即可)

图片.png

点击下载按钮,它会下载一个 credentials.csv 这里面就存着你的账号,还有AK/SK

图片.png

使用示例安装包创建 AppCube 应用

进入 AppCube

AppCube的入口在华为云官网,依次点击“产品”—>“开发与运维”—>“应用魔方 AppCube”

图片.png

应用魔方的首页地址为:https://www.huaweicloud.cn/product/appcube.html

图片.png

点击“进入首页”按钮

图片.png

图片.png

下载软件压缩包

软件压缩包的地址为:https://appcube-ai-temp.obs.cn-north-4.myhuaweicloud.com/CNAMEO__EI-0.0.1-beta.zip

安装包是一个zip文件,内容如下

图片.png

导入安装包

在左侧,切换到“应用”选项卡,然后点击右侧的“导入”按钮,导入前面下载的压缩包

图片.png

图片.png

安装成功后,下面会显示一个名为“EI”的项目

图片.png

创建 ModelArts 连接器

创建连接器

在刚刚创建的 EI 项目右侧,点击“编辑”按钮,然后选择“体验新版设计器”

图片.png

第一次使用会要求你创建一个名空间(只能由字母和数字组成)

图片.png

依次点击左侧“集成”—>“连接器实例”

图片.png

类型选择“ModelArts”

图片.png

这里默认已经为我们创建好了一个与ModelArts的连接:ma__food_reg,我们只要修改“访问密钥AK”和“密钥SK”

图片.png

测试连接

修改好后,下面会出现“测试”按钮

图片.png

在弹出的对话框中,可供选择的类型有3种

  1. 图片URL
  2. 图片文件
  3. 文本信息

图片.png

以下两个参数要回到 ModelArts 页面去获取

  • 模型 Apig-Code:ModelArts在线服务中API接口中 .apig前面的部分,不包含https://
  • 模型 ID:ModelArts 在线服务中 API 接口中最后一个斜杠 (/) 后面的部分

例如我这里API接口地址为:https://b346df3b35e44f7fa088f9ac4b3b3502.apig.cn-north-4.huaweicloudapis.com/v1/infers/f39dbb0d-c079-4994-8d49-108d50cd88d6

那么这两个参数就是

  • 模型 Apig-Code:b346df3b35e44f7fa088f9ac4b3b3502
  • 模型 ID:f39dbb0d-c079-4994-8d49-108d50cd88d6

注意:重新部署后,模型 Apig-Code不会变,但模型 ID会发生改变

图片.png

我从百度上面找了一个汉堡图片的地址:https://img1.baidu.com/it/u=3410454152,1984472408&fm=253&fmt=auto&app=138&f=JPEG?w=600&h=400

在测试对话框中依次填入所有参数,如下

图片.png

点击“测试”按钮,它会开始进行预测,并显示出大概率是什么食物,以及其它可能性的概率

图片.png

应用修改

修改脚本

在AppCube的左侧面板中单击“逻辑”按钮,然后依次选中“脚本”—>“Page”—> CNAMEO__EI

图片.png

点击脚本后,会呈现一个编辑器页面,页面中就是对应脚本文件的代码了

图片.png

let client = modelarts.newClient("ma__food_reg") newClient里面传的参数,就是我们刚刚 Model Arts连接器的名称

图片.png

配置demo页

在AppCube的左侧面板中单击“页面”按钮,然后选择“demo”页面

图片.png

图片.png

该页面需要先锁定,方可进行编辑。首先点击左上角“获取锁”按钮,此时左侧会弹出一个“基本组件”

图片.png

在页面下方,切换到“事件视图”选项卡,然后选中第三个事件“uploa_on-success_upload_0”,在右侧“JS代码”面板中,修改“apigCode”和“modelId”这两个参数。

图片.png

在“模型视图”中可以看到,该demo已经将全部模型绑定到视图中的对应控件上了,不需要我们去人工修改。绑定的方式类似Vue的view-bind方式(一旦数据有变,自动修改控件内容)

注意:修改完代码后,一定要点击这个“保存”按钮,否则修改不会生效!!! 这里可以额外加个console.log函数,把这两个变量打印出来,如下图

图片.png

最后,点击预览按钮(快捷键Alt+Shift+V)即可看到实际发布后的页面了

图片.png

点击上传图片后,下面就会出现对应的预测结果了

图片.png

使用F12查看日志,可以看到返回的预测结果参数,还有我们刚刚额外加的,打印“apigCode”和“modelId”这两个参数的日志

图片.png

遇到问题

如果点击预览没有任何反应,尝试按下F12,进入开发者模式,查看日志打印,就可以发现错误。例如,这里提示我“模型Apig-Code不允许特殊字符,请重新填写”

response Object {
	errCode: "AppCube-233187",
	resCode: "405233187",
	resMsg: "模型Apig-Code不允许特殊字符,请重新填写"
}
xcloud.js:25:13

图片.png

这是由于我在修改JS代码后,没有点击工具栏上的“保存”按钮,就直接开始预览了。因此,切记修改代码后一定要点保存(AppCube并不会自动保存代码)

部署 & 发布

点击页面上方的“发布”按钮,然后选择一键部署,可以直接将项目部署到华为云服务器上

图片.png

图片.png

选择“安装包”,可以将应用一键打包

图片.png

然后填入应用描述

图片.png

点击“打包设置”,可以设置如下3个内容

  1. 版权设置
  2. 出厂数据
  3. 动作设置

图片.png

点击“立即打包”,会在左下角出一个进度条,上面标明了打包进度

图片.png

打包完成后,你可以进行如下3种操作

  1. 部署
  2. 下载
  3. 详情

图片.png

详情页会显示包的详细信息

图片.png

点击下载,可以看到,下载的安装包与我们本次实验所用的安装包是相同格式的

图片.png

总结

  1. 华为云的Model Arts里面有一个AI模型的应用商店,我们可以从中挑选需要的AI模型,无需掌握复杂的建模知识,拿来即用,开箱即用
  2. AppCube可以帮助我们使用低代码或者零代码,通过拖拉控件绑定变量的方式,简单快速的开发应用
  3. AppCube提供了连接器,可以直接连上Model Arts构建低代码AI应用。只需要修改“apigCode”和“modelId”参数,便可快速实现一个你自己自定义的低代码AI应用了,效率很高,效果非常棒
  4. 部署和发布,都有非常简洁易用的UI界面,对于懒人还支持了一键部署,只要购买了云服务器,就能一键上云,简直太方便好用了

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

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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