当前位置:主页 > 弹性计算 > 正文

MySQL数据库_硬件负载均衡器_三重好礼

时间:2021-05-05 00:28 来源:埃里克云 编辑:埃里克云

核心提示

在我最近的一个有趣的项目中,我一直在测试CAPM和SAP Cloud Machine Learning(ML)SDK,以创建一个人脸识别应用程序:https://blogs.sap.com/2019/05/28/face-recognition-app/ 此ML SDK非常好地集成到SAP云...

在我最近的一个有趣的项目中,我一直在测试CAPM和SAP Cloud Machine Learning(ML)SDK,以创建一个人脸识别应用程序:https://blogs.sap.com/2019/05/28/face-recognition-app/

此ML SDK非常好地集成到SAP云平台Cloud Foundry(CF)中。它不需要目的地,并且可以访问所有的mlapi端点。它也不需要额外的身份验证请求。真值得一用!

这里有一句话,ML SDK只适用于Java。这意味着您需要将CAPM与Java一起用于服务层。不是什么大问题,但是NodeJS现在很流行?

在这个博客里,我想分享一下我在人脸识别应用程序中使用这个ML SDK和CAPM的经验。为此,我将展示如何使用CAPM创建一个使用这个mlsdk的新服务。我将使用mlsdk在图像上找到一张脸,并将其转换为向量。向量可以用来比较人脸识别应用程序中的人脸!

我使用SAP Web IDE是因为它使CAPM和ML SDK一起测试更容易。

首先,从下面的模板"SAP云平台业务应用程序"生成一个项目。(在Cloud Foundry环境中过滤将更容易找到正确的模板。)

填写项目名称:

填写mta的应用id和版本,但也要选择"使用HTML5应用程序存储库"。最后一个检查将把approver和appdeployer包含到您的项目中。

向导的这一步包含服务的配置。在这种情况下,应该使用java来使用mlsdk。(目前在NodeJS中还不可用)。填写名称空间并选择HANA数据库的最新版本。(同样,在我发布这篇文章的时候,只有HANA可用作CF应用程序的数据库)

同时启用"启用用户身份验证",当我们要部署到CF时,我们将需要它。这将已经在应用程序中包含一些配置甲基丙烯酸甲酯对我们来说

项目结构如下所示,别忘了启用隐藏文件:

用示例代码运行这个项目可能会出现这样的错误:

如果在您的版本中也发生这种情况,那么您需要甲基丙烯酸甲酯并将"uaa"参数"服务计划"由"默认"改为"应用:

打开"db"模块,打开数据-型号.cds. 这是定义数据库的数据模型的地方。实体的名称将用作表的名称,所有属性将表示一列。

在本例中,实体将被命名为"Faces",因为它将用于在图像上存储人脸的矢量。与矢量一起,它将存储名称和ID。image属性将不用于此博客,但可用于存储人脸图像的路径。

代码片段:

保存数据-型号.cds将制作CD并更新csn.json文件服务模块中的文件。如果没有自动运行"cds构建",可以手动触发:

数据库层已经完成?

让我们转到服务层,将我们的数据库实体作为API公开。打开"cat-服务.cds"并用数据库层中使用的名称更改示例代码。更改名称空间和实体名称。

不要忘记删除"@readonly",因为此服务还应用于创建面,而不仅仅用于读取。

代码段:

好的,服务已准备好进行测试。首先构建java服务:

在运行之前,请检查您的CF帐户是否仍然有效并已配置:

右键单击您的项目,然后单击项目设置或在SAP Web IDE workspace的设置中

在构建之后,您可以将其作为java应用程序运行

我不知道为什么,但是第一次它失败了。我第二次试着运行这个服务时,它起了作用。当它运行时,您将在控制台中得到一个url来测试您的服务:

这将为您提供一个端点:

时间来实现机器学习逻辑,将图像上的人脸转换为向量。

这个逻辑需要在将其保存到数据库之前实现。该服务将接收一个图像的base64字符串,该字符串需要在保存到数据库之前进行转换。为此,CAP可以在每次OData请求之前使用钩子函数。

首先为这些钩子函数生成一个文件,并提供一些示例代码:

在下一步中,Web IDE需要知道将要增强的实体。

下一步并完成,这将为每个可能的请求生成一个带有示例代码的Java类

该代码使用对s4hana sdk的依赖关系来使用机器学习,另一个用于定义图像的mimetype。这些依赖项需要在中定义pom.xml文件

构建srv模块将下载依赖项。

在与文件相同的包中添加了一个新的Java类,带有钩子函数,用于获取基于mimetype的扩展名。(在线找到此代码)

调用此类"MimeTypesExtensions"

此Java类的完整代码可在以下位置找到:https://github.com/lemaiwo/MyCAPMAppWithML/blob/master/srv/src/main/java/be/wl/handlers/catalogservice/MimeTypesExtensions.java

另一个Java类"MachineLearningService",它将用于与机器学习:

这个类有几个与机器学习服务通信所需的功能。完整代码可在此处找到:https://github.com/lemaiwo/MyCAPMAppWithML/blob/master/srv/src/main/java/be/wl/handlers/catalogservice/MachineLearningService.java

首先,"base64ToBytes"将图像的base64字符串转换为字节数组。

"getFilePost"将使用上一个函数与图片发送到ML SDK:

此函数"getFaceVector"将请求发送到ML服务并返回人脸的矢量。

返回生成的类"FacesHookHandler"中,操作传入数据的代码,然后将其保存到数据库中。

CAP将调用"beforeCreateFaces"钩子函数来创建一个实体的新对象"Faces"。此函数将包含调用机器学习服务类并在将结果保存到HANA之前更新结果的实现。

此行正在运行魔术,以便在保存请求之前操作来自请求的数据。

不要忘记文件顶部的java导入。

如果如果没有bug,那么构建会成功吗?

服务准备好用机器学习逻辑进行测试。首先需要重新启动服务。否则将不考虑更改。

SAP Web IDE在控制台中有一个停止和启动按钮,可用于重新启动应用程序:

现在可以测试服务。因为这个应用还没有ui,所以它需要用另一个工具如postman进行测试。

使用你在控制台中看到的url并在postman中运行:

服务上的get请求工作!但一个职位还不起作用。配置缺少对机器学习服务资源的引用。这需要在mta.yaml公司文件:

在srv模块的requires部分添加"ml service"

在底部定义ml service

现在上传一张图片,就可以测试服务了。仍然没有ui,因此需要手动将图像转换为base64字符串。这可以通过以下网站完成:

https://www.base64-image.de/

上传詹姆斯·邦德的图片为例:

将结果复制到剪贴板

将postman中的请求类型改为"POST",并添加如下正文:

如果一切顺利,postman将向您展示以下示例:

我们刚刚将CAP与机器学习SDK结合起来,将base64图像字符串转换为向量并保存到HANA数据库中。

下一步?添加UI模块

GitHub提供完整项目:https://github.com/lemaiwo/MyCAPMAppWithML

  • 域名解析_商城网站建设平台_超低折扣 域名解析_商城网站建设平台_超低折扣

    让我们假设以下场景:由于业务需求,BPC维度中的层次结构发生了显著变化(甚至在多个层次结构的情况下被删除)。因此,许多节点已过时,必须删除。没有DM包可以删除成员,并且...

  • <strong>域名交易_视频服务器的作用_优惠券</strong> 域名交易_视频服务器的作用_优惠券

    注:有关我们博客文章系列的完整概述,请访问SAP Cloud SDK概述。 有关SAP Cloud SDK新功能的概述,请参阅我们最近发布的文章。 简介 随着SAP Cloud SDK的新版本3,可以集成自定义缓存框架...

  • <strong>香港服务器_企业网站建设多少钱_多少钱</strong> 香港服务器_企业网站建设多少钱_多少钱

    此博客文章是与SAP云平台警报通知服务相关的一系列博客文章的一部分。 有关服务本身的更多详细信息,请参阅父博客文章。 让我们考虑以下情况—我们在SAP云平台上部署了一个解决...

  • <strong>金山云_美国cn2云服务器_评分榜</strong> 金山云_美国cn2云服务器_评分榜

    当我去纽约的时候,我喜欢表演,走在街上,听一些好听的音乐,吃很多好吃的东西!当然,见到名人总是很有趣的! 由于地层数据会议的召开,今年9月的行程会更好!本次会议是一...

  • <strong>负载均衡_oracle数据库管理_便宜的</strong> 负载均衡_oracle数据库管理_便宜的

    作为一个成长中的年轻人,我的老师、教练或其他成年人会毫不犹豫地使用诸如"你可以做得更好"、"我期望更多"甚至"尽力而为"这样的词汇。我(和大多数孩子一样)经常达不到期望...

  • 负载均衡_阿里云何万青_超低折扣 负载均衡_阿里云何万青_超低折扣

    您好,团队, 在生成文档的过程中,支付组件遵循一定的模式。我们做了大量的测试,生成了50多个文档,得出了以下结论: 案例1——当所有支付组件都添加到一个交易的UI中时。(...

  • <strong>腾讯云_hana服务器_限量秒杀</strong> 腾讯云_hana服务器_限量秒杀

    在这个博客中,我将向我的CAP服务添加一个UI,它使用机器学习服务:https://blogs.sap.com/2019/08/19/combine-cap-m-with-machine-learning-sdk-api-part/ 我知道许多其他博客展示了如何将UI模块添加到M...

  • <strong>网站服务器_网站建设服务商_最新活动</strong> 网站服务器_网站建设服务商_最新活动

    短链接 这篇文章是为业务流程专家在SAP S/4HANA中配置工作流而写的,同时也为您在开发自己的工作流场景(未来博客的主题)时可以做些什么做了铺垫 它将帮助您理解为什么这个概念...

  • <strong>域名交易_企业邮箱登入口_速度快</strong> 域名交易_企业邮箱登入口_速度快

    这篇博文是向SAP Analytics Cloud:Analytics Designer Hackathon提交的。 德勤数字工厂遵循"告诉我,不要告诉我"的原则,为客户提供数字化方面的实际最佳实践,以充分发挥其供应链组织的潜力...