如何在Web应用里消费SAP Leonardo的机器学习API
去年5月的时候,Jerry曾经写了一篇文章:使用Java程序消费SAP Leonardo的机器学习API,而最近另外做的一个项目,
需要在Web应用里做同样的事情。
因为有了前一篇文章的铺垫,避免了很多重复的工作量。本文还是选择使用SAP Leonardo里的一个Product Image Classification API,即给定一张产品的图片,该API能识别出此产品的类别。
再回顾下这个API的功能:该API的模型是由SAP基于大约5万张Icecat图片训练而成,能区分29种不同的类别,这些类别具体罗列于官方文档上,比如电脑显示器,数码相机,外部存储设备,键盘,液晶电视,手机充电器,笔记本和其他外设等等。如果我们消费这个API时指定的图片代表的产品不属于这29种类别之一,API的表现如何?先卖个关子,文末解答。
关于如何在api.sap.com里找到这个API并且在API console里测试,请参考Jerry之前的文章:使用Java程序消费SAP Leonardo的机器学习API。
这里假定我们已经找到了该API,点击进入明细页面,将API Key复制下来,后续的UI5应用需要使用到。
然后进入SAP云平台的Neo环境。Jerry这个练习,使用免费的SAP Cloud Platform Neo测试环境即可。
在Service列表里找到WebIDE——我们将使用WebIDE进行UI5应用的开发。
Jerry已经开发好了一个UI5应用上传到我的Github上了:https://github.com/i042416/MachineLearning-UI5
大家可以直接在WebIDE里clone这个仓库,或者把仓库的内容以zip包的形式下载到本地,再使用WebIDE的本地Import功能导入。
我们要告诉UI5应用这个API的url,因此在Neo环境里创建一个Destination(作用和ABAP Netweaver事务码SM59里创建的Destination相同):
属性如上图所示,因为是Neo测试环境,所以url为对应的sandbox环境:https://sandbox.api.sap.com/ml
记下这个Destination名称sapui5ml-api, 因为稍后的UI5代码里需要使用。
记得维护额外的属性WebIDEnabled为true,这样该Destination才能在UI5应用里被使用。点击Check Connection确保看到绿灯。
打开WebIDE里UI5工程里的settings.json文件,将您之前从API console里拷贝的API Key粘贴到此处:
在项目根目录下的neo-app.json文件里,把类型为destination的target对象的名称维护成之前在SAP Cloud Platform Cockpit里创建的destination相同的名称。
运行这个UI5应用,能看到如下界面:
做一些简单的测试:
SAP Leonardo的机器学习API,识别出这张图片有74.7%的可能性是一台笔记本电脑,13.8%的可能性是键盘,11.3%的可能性是Tablets。
点击按钮View JSON,能看到调用SAP Leonardo API返回的技术明细。
鼠标的图片也成功识别出来了:
本文开始曾经提到这个API能识别出29种不同的产品类别,现在换一种产品,如下图:
这是Jerry小时候就很痴迷的《终结者》系列的T800,我在2017年回复SAP社区上一篇博客时也引用到了这款经典的模型,和阿诺德 - 施瓦辛格那句激励无数中老年程序员的著名台词:I am old but I am NOT OBSOLETE
原文链接: https://blogs.sap.com/2016/12/19/and-now-for-something-completely-different/
言归正传,如果希望SAP Leonardo的Product Image Classification API也能成功将T800识别出来,需要做些什么?
答案是重新训练模型。具体如何做,Jerry也还在研究,等研究完毕再分享。感谢阅读。
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
如何在Web应用里消费SAP Leonardo的机器学习API相关推荐
- 如何在 Web 应用里消费 SAP Leonardo 的机器学习 API
本文选择使用 SAP Leonardo 里的 一个Product Image Classification API,即给定一张产品的图片,该 API 能识别出此产品的类别. 简要了解一下这个 API ...
- 使用Java程序消费SAP Leonardo的机器学习API
http://blog.itpub.net/24475491/viewspace-2154590/ 以sap leonardo作为关键字在微信上搜索,能搜到不少文章.但是我浏览了一下,好像没有发现有从 ...
- SAP Leonardo平台机器学习API的一些错误处理机制
- 部署在SAP Cloud Platform CloudFoundry环境的应用如何消费SAP Leonardo机器学习API
Jerry的前一篇文章 如何在Web应用里消费SAP Leonardo的机器学习API 里介绍的例子是Neo测试环境的Web应用消费sandbox版本的机器学习API,url如下: https://s ...
- SAP CDS view自学教程之六:如何在CDS view里消费table function
Let's try to resolve one real issue now. What we want to achieve is: in CRM we need a CDS view which ...
- 从SAP Leonardo到SAP Data Intelligence
Jerry之前的文章介绍过,我所在的团队曾经用SAP Leonardo上的机器学习服务,开发了一系列消费这些服务的原型应用: 如何在Web应用里消费SAP Leonardo的机器学习API 如何对SA ...
- SAP Leonardo图片处理相关的机器学习服务在SAP智能服务场景中的应用
本文作为Jerry最近正在做的一个项目的工作思路的梳理. 我们假设这样一个服务场景,技师上门维修某设备,发现设备上某零件损坏了,假设这位技师由于种种原因,没能根据自己的经验识别出这个零件的型号.此时技 ...
- 如何对SAP Leonardo上的机器学习模型进行重新训练
Jerry之前的两篇文章介绍了如何通过Restful API的方式,消费SAP Leonardo上预先训练好的机器学习模型: 如何在Web应用里消费SAP Leonardo的机器学习API 部署在SA ...
- 如何使用Cyberduck登录SAP Leonardo机器学习服务的AWS在线存储
除了web方式登录Amazon S3在线存储(SAP Leonardo的机器学习模型使用该存储来存放用于模型训练的大规模数据集)之外,还可以安装Cyberduck图形界面的客户端来访问这个在线存储: ...
最新文章
- 怎么用迅雷下载python_我是如何使用python控制迅雷自动下载电影的?
- SAP中的KANBAN
- 简化软件操作,提升用户体验
- python基础代码技巧_写Python必须知道的这几个代码技巧!你会吗?
- 怎样把照片中的头像扶正_一个男人的微信头像,往往暴露了“人品”,你是哪一种?...
- CocosCreator中Protobuf的简单使用
- 贪心法——LeetCode 55 跳跃游戏
- 回归问题中代价函数选择的概率解释(Probabilistic interpretation)
- Java 连接 Memcached 服务
- 《2018华为92家核心供应商及其供应产品》
- linux局域网传输文件,局域网传输文件详解(转)
- dataset.padded_batch 用法案例
- webpack 配置文件
- 【faiss】安装(一)
- Big sur提示您没有权限来打开应用程序“XXX”怎么办?
- 学习mongo系列(四) find().pretty() remove() 查询
- Python中的单引号、双引号、三引号
- Win10家庭版如何正确关闭自动更新
- Bluetooth设备之间如何建立连接
- 基于prometheus采集isilon(OneFS)存储指标
热门文章
- Android布局中的空格以及占一个汉字宽度的空格的实现
- JQuery radio(单选按钮)操作方法汇总
- UVA 753 A Plug for UNIX (最大流)
- 团队阅读——怎样学习软件工程
- Packet Capture -- android 手机抓包利器
- sklearn中GBDT的一些参数、属性、方法的理解
- 文献记录(part7)--An Improved Biclustering Algorithm and Its Application to Gene Expression ...
- 第三次学JAVA再学不好就吃翔(part68)--Random类
- HTML基础(part6)--常用标签之列表
- 恐龙机器人钢索恐龙形态_迷你世界新皮肤登场!变形金刚系列第9款,网友:恐龙形态霸气...