文档

部署PAI-Rec引擎服务

更新时间:
重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

本文介绍如何基于PAI-Rec平台把引擎服务部署到PAI-EAS平台上。

创建引擎配置单

PAI-Rec引擎启动时,会读取引擎配置单中的配置。引擎配置有改动时,也可以直接发布。这时,引擎也会读取到,并且进行热更新而无需重启引擎服务。

创建引擎服务时,需要首先创建配置单。并且配置单在预发和生产环境中发布成功。

配置单名称可以自定义。这里我们创建的名称是 pairec_config_test。新建配置单会有默认的配置,可以不用修改,直接创建即可。创建成功后,发布即可。

image

生产环境的配置单,可以通过预发环境的配置克隆生成。

image

image

创建完成,切换到生产环境下,进行发布。

image

创建服务

image

参数含义如下:

参数

描述

服务名称

部署到PAI-EAS上的服务名称

服务描述

服务描述信息

地域

部署到PAI-EAS的服务地域

镜像名称

分为官方镜像和用户自定义镜像。

镜像密钥

PAI-EAS通过这里设置的镜像密钥拉取镜像

推荐引擎配置

引擎服务用到的引擎配置名称

这里创建的服务名称为pairec_config_test,并使用了上文创建的引擎配置。在镜像选择上,如果无需自定义的代码开发,直接选择官方即可。如果需要自定义开发代码,可以参考快速创建项目进行打包镜像。

进入下一步后,首先选择PAI-EAS资源组。如果没有私有资源组的话,直接默认使用公共资源组即可。

页面下方有两组配置,分别是预发环境配置和正式环境配置。这里是通过这两个配置,在PAI-EAS创建两个服务,分别是预发服务和生产服务。两个步骤是一样的。

以部署预发服务举例,这里复制下配置,前往EAS控制台即可。

image

进入EAS控制台,点击部署服务。

image

可以直接选择JSON独立部署。

image

然后把PAI-Rec控制台复制的配置直接粘贴即可。然后根据实际情况修改以下内容。

这里需要把阿里云的AccessKey和AccessSecre填上。为了安全,务必使用阿里云子账号的AK信息。

image

调整完成,点击部署按钮。

等待服务部署成功,也可以检查服务的启动日志。

image

image

同样的,回到PAI-Rec控制台,可以复制生产服务配置。把生产服务部署到EAS上。

点击下一步,系统会检查预发和生产服务是否是正常运行。检查成功,进入下一步。

image

如果是用官方镜像进行部署的话,可以跳过这一步,直接创建完成。

image

服务测试

部署好服务后,可以进行测试。PAI-Rec 引擎中已经内置了推荐接口,定义参考接口测试。可以有两种方式进行测试。

EAS 控制台测试

进入EAS控制台的在线调试,接口的路径,需要加上/api/rec/feed。请求的body设置参数即可。

image

服务请求后,我们可以根据接口返回的request_id查看整个日志详情。

image

PAI-Rec 控制台测试

通过控制台测试更方便些,直接选择服务,环境,接口进行测试即可。

image

引擎配置概览

从上面的接口中可以看到,返回了等于入参size大小的item数量,并且召回源名称是mock_recall。这个要回到最开始的引擎配置中。

在 RecallConfs 定义了一路模拟的召回:mock_recall。SceneConfs 中,场景home_feed下引用了这一路召回。

详细的引擎配置,可以参考引擎配置单

   "RecallConfs": [
        {
            "Name": "mock_recall",
            "RecallType": "MockRecall",
            "RecallCount": 200
        }
    ],
    "SceneConfs": {
        "home_feed": {
            "default": {
                "RecallNames": [
                    "mock_recall"
                ]
            }
        }
    }
警告

服务正式上线时,RecallNames 需要删除 mock_recall。

引擎配置热加载

服务部署之后,我们会逐渐的丰富引擎配置,逐渐将配置添加起来。这里我们简单的进行说明。比如我们把上面的mock_recall的召回数量从200调整到500。

可以在相应的环境下进入引擎配置单详情。

image

可以基于已发布的配置,创建变更内容。直接修改配置。当然,未发布的配置,可以进行多次编辑修改。

image

编辑完成,可以点击发布。发布前会显示与已发布的配置内容的差异。确认没有问题后,点击发布按钮。

image

发布成功后,PAI-Rec引擎服务会读取到相应的配置,进行热加载,而无需重启服务。可以通过EAS日志查看是否成功加载。可以直接搜索reload进行日志查看。

image

加载的版本会和已发布的版本对应起来。

image

使用上面的方式进行测试。 可以看到召回数量已经变化了。

image