您正在查看版本9.8的RapidMiner Hub文档点击这里查看最新版本
创建web服务
什么是web服务?
参见视频介绍到web服务。
在RapidMiner上下文中,aweb服务是一个过程可以通过URL调用。URL是一个链接到RapidMiner AI Hub,类似于以下内容:
http://RMServerHost:8080/api/rest/process/YourServiceName?customerID=3
在本例中,URL可以将查询参数作为输入customerID = 3
,并以您选择的格式提供结果,包括以下格式:
- JSON
- XML
- 超文本标记语言
- OData
- 和其他…
要查看结果,您必须将自己验证为已注册的用户,或RapidMiner AI Hub必须配置为接受查询匿名用户。匿名用户可用的web服务的URL将采用以下略有不同的形式:
http://RMServerHost:8080/api/rest/public/process/YourServiceName?customerID=3
注意这里提到的公共
在URL中。
但是,在典型的web服务场景中,您不会自己调用这个URL。您将构建一个应用程序来实现一些有用的目的,该应用程序将调用URL,并通过一个令牌。Web服务可以很容易地嵌入到网页和其他应用程序中。它们使得通过HTTP提供RapidMiner进程的结果成为可能。
开始之前
在创建web服务之前,请确保:
- RapidMiner AI Hub是安装
- RapidMiner Studio是连接到远程存储库。
- 要实现为web服务的流程保存在远程存储库。
- 您的流程被设计为将所需的数据传递到第一个结果(“res”)端口。web服务只从第一个端口返回数据。
如果您还没有要实现为web服务的流程,或者您不确定如何构建这样的流程,那么您可能会发现通过示例进行操作很有帮助。在预见性维护,我们显式构建两个流程,在本文的其余部分中,它们将作为web服务实现。
一步一步地
在预见性维护结论,我们将两个新进程保存到RapidMiner AI Hub存储库中:
- Predictive_Maintenance_web_service_without_parameters,以预测所有“机器ID”值的故障概率。这个进程没有宏,URL也不包含查询参数。
- Predictive_Maintenance_web_service_with_parameters,以预测特定“机器ID”值的故障概率。此过程包含宏,当创建web服务时,URL将包含一个与“机器ID”的特定值相对应的查询参数。

让我们按照以下步骤为它们创建web服务:
创建web服务。选择以下入口点之一:
- 在RapidMiner Studio中,在远程存储库中,右键单击进程并选择浏览打开RapidMiner AI Hub上的Repository Browser。点击作为Web服务导出。
- 在RapidMiner AI Hub上,选择存储库>浏览存储库,导航到感兴趣的进程,选择它,然后单击作为Web服务导出。
- 在RapidMiner AI Hub上,选择流程>Web服务,然后点击创建新的web服务。
其中,第一种可能是最好的,因为它直接带你进入感兴趣的过程。
下面的截图显示了编辑Web服务第二个过程的对话框,Predictive_Maintenance_web_service_with_parameters。请注意,RapidMiner AI Hub在此过程中自动检测宏,并分配一个URL查询参数名字都一样。如果您愿意,可以更改查询参数。也可以更改服务ID;它不必与进程名相同。然而,数据源必须准确地定位到RapidMiner AI Hub上的进程,并且宏名称必须与在该进程中编写的宏名称相同。如果你看下拉列表输出格式,您将看到有许多选项。在这个例子中,我们选择了“JSON”;RapidMiner AI Hub设置相应的mime类型。
编辑web服务。请确保填写以下字段:
- 服务ID: web服务的名称,因为它将出现在URL中。它不必与进程名相同。
- 数据源:进程在RapidMiner AI Hub上的位置
- 输出格式:输出格式。选择包括JSON、XML、HTML、OData等。
- 参数绑定: URL查询参数,如果存在,可以不与宏名相同。
点击提交将流程保存为web服务。
下一个打开的页面(流程>Web服务)按其ID列出可用的web服务。在这里,您有机会测试web服务,并在必要时编辑web服务。您也可以删除它。

与参数
测试服务时Predictive_Maintenance_web_service_with_parameters,使用JSON输出,结果如下。测试…的功能URL查询参数,可修改该值,单击测试。

一旦web服务准备好了,就可以从浏览器中通过直接的联系列在页面的右侧,或者您可以按照下面的说明将结果嵌入到
随着RapidMiner AI Hub在笔记本电脑上本地运行,URL采用以下形式:
http://localhost:8080/api/rest/process/Predictive_Maintenance_web_service_with_parameters?machineID=M_0221
一般来说,本地主机
将被您的RapidMiner AI Hub主机名所取代。假设在创建web服务时,我们为web服务ID指定了一个更简单的名称,例如“needs-repair”。那么URL就简单多了:
http://localhost:8080/api/rest/process/needs-repair?machineID=M_0221
但在任何情况下,与JSON输出,结果是相同的:
{"Machine_ID":"M_0221", "confidence(no)":0.10256410256410256, "confidence(yes)":0.8974358974358979, "prediction(Failure)": "是的"}
如果没有参数
测试服务时Predictive_Maintenance_web_service_without_parameters,使用Table输出,结果如下:

同样,一旦web服务准备好了,您就可以通过直接的联系列在页面的右侧,或者您可以按照下面的说明将结果嵌入到
随着RapidMiner AI Hub在笔记本电脑上本地运行,URL采用以下形式:
http://localhost:8080/api/rest/process/Predictive_Maintenance_web_service_without_parameters
浏览器将结果显示为一个表格:
