去年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的原创文章,请关注公众号"汪子熙":
相关推荐
sap press doc 解压密码:abap_developer
在技术实现上,SAP iRPA依赖于API和元数据,而不是基于录屏的实现方式。这意味着即使应用程序的界面发生变化,自动化脚本也能保持有效,降低了因界面更新导致的维护问题。此外,SAP还提供了预定义的智能机器人流程...
sap press doc 解压密码:abap_developer
sap press doc 解压密码:abap_developer
SAP Leonardo 是 SAP 推出的企业创新动力平台,它整合了诸如 SAP S/4HANA、SAP Hybris、SAP SuccessFactors、Concur、SAP Fieldglass、SAP Ariba 等一系列解决方案,并结合物联网(IoT)、机器学习、大数据、区块链...
"Leonardo"是一款备受瞩目的字体,它在设计领域中被广泛应用,特别是在数字设计、图形设计和排版中。这款字体以其独特的风格和易读性脱颖而出,为设计师提供了丰富的创意选项。 字体是计算机用户与文本交互的核心...
6. **智能企业**:SAP利用人工智能(AI)、机器学习(ML)和大数据分析技术,推动企业数字化转型,实现预测性分析、自动化决策和优化业务流程。 7. **合作伙伴生态系统**:SAP拥有广泛的合作伙伴网络,包括系统集成...
安装要将API客户端库安装到本地Maven存储库,请执行以下命令: mvn install 要将API客户端库部署到远程Maven存储库,请配置存储库的设置并执行以下命令: mvn deploy 有关更多信息,请参考。Maven用户将以下依赖项...
TUM的SAP课程的#Web应用程序项目。用Javascript&SAP UI5和Python&Flask编写。 在这个项目中,我们正在尝试实现基于文档和自然语言处理方法的自动标记等功能。 另一个功能是搜索功能,该功能允许在本地数据库中搜索...
为了帮助更多企业利用机器学习,SAP开发了SAP Leonardo Machine Learning,这是一种自动建模的解决方案,它利用了结构风险最小化(SRM)的专利算法来标准化和产业化预测模型。这种自动化建模的能力使得即使没有传统...
12. ** Leonardo**:SAP的创新平台,集成了人工智能、机器学习、物联网和区块链技术,帮助企业实现数字化转型。 压缩包中的"SAP中文词汇.xls"文件很可能包含了上述各个概念的中文解释和术语对照,对于学习和理解SAP...
Arduino Leonardo是一款基于ATmega32U4微控制器的开源电子平台,被广泛应用于创意DIY、物联网项目和教育领域。这个压缩包包含了Arduino Leonardo电路原理图、PCB设计文件以及相关的参考文档,对于想要深入了解其工作...
Mode 2则专注于创新,强调敏捷性和速度,它涵盖了最新分析技术、新型数据类型以及像SAP Leonardo这样的解决方案,后者整合了物联网、机器学习和行业特定的应用。 SAP现代数据平台通过集成各种服务和工具,如SAP ...
arduino leonardo 电路图
8. **项目实施方法论**:SAP的实施通常遵循 ASAP(Accelerated SAP)或 Leonardo Methodology,理解这些方法论的阶段和关键活动,能够显示你的项目管理能力。 9. **业务流程知识**:除了技术层面,还需要具备对不同...
此外,SAP Leonardo引入了人工智能和机器学习,帮助企业自动化流程,提高运营效率。 8. **合规性与可持续性**:在日益关注社会责任的今天,SAP解决方案可以帮助企业实现合规生产,追踪供应链中的环保指标,推动可...
* SAP Leonardo:提供了人工智能、机器学习和物联网等技术,实现智能制造企业的智能化和自动化。 * SAP Cloud Platform:提供了云计算平台,实现智能制造企业的数字化和网络化。 知识点3:SAP智能制造行业解决方案...
1. 智能理赔:通过机器学习技术,SAP可以帮助保险公司自动审核和处理理赔申请,减少人工干预,提高效率,降低欺诈风险。 2. 数字化客服:利用聊天机器人和移动应用,保险公司能够提供24/7的客户服务,提升客户体验。...
Leonardo UI专注于提供Qlik Sense风格的组件,这意味着它包含了一系列与Qlik Sense设计语言相符的样式和交互效果,使得开发出来的Web应用在视觉上与Qlik Sense保持一致,为用户带来熟悉感。 使用Leonardo UI时,...