阿里云首页 智能推荐

自定义排序模型

注意:此项功能仅支持高级版实例,创建高级版实例将默认打开如下服务:服务如上服务将用于高级版自定义召回模型的搭建、表存储、计算等。

一、创建AI工作空间

需要先开通MaxCompute,开通成功后请按照此链接配置:创建AI工作空间

二、部署easyRec模型

在画布左上角的“商品推荐排序模型”,右键从模板创建。

会生成一个新的实验,点击DeepFM组件,需要配置模型和相关日志的输出路径,需要用户开通并且在相应区域购买oss。

OSS Bucket路径指的是工作根目录路径,用来存储训练相关的描述问题。

模型路径用来存储生成的模型。

配置完成后点击运行按钮。运行完毕后,右键该节点,点击查看排序模型:

这里会显示模型的输出bucket以及运行完成时间。

回到控制台,进入模型服务页面。

点击模型上传部署,processor填写TensorFlow1.12,类型选择CPU,模型文件选择OSS文件路径。

因为该案例会生成多个模型checkpoint,最终部署需要使用的是savemodel格式文件,该文件路径为:export/final下的文件夹。

部署完成后生成模型服务,即可直接调用。

更多详情请见:EAS模型在线服务

三、注册排序服务

点击“注册排序服务”。

输入如图所示的信息。

提交后即可在控制台的模型服务管理处查看注册好的排序服务。

注册成功后,您可以点击更多进行服务地址连通性测试。

四、应用自定义排序模型

在注册好排序服务后,就可以在创建实验时选择已注册的排序模型。

注意:第一期智能只能替代为自定义排序规则,不支持同时应用两个排序模型。

五、自定义排序调用方式

在您获取推荐结果时,传入UserInfo参数即可针对请求user_id的用户特征进行个性化推荐。

GET /recommend?_appid=<instanceId>&SceneId=<sceneId>&ReturnCount=<returnCount>&...

I 参数说明

参数

是否必填

描述

备注

_appid

阿里云实例ID。

例:airec-cn-npk1yhx90003。

SceneId

您的场景ID。

ReturnCount

请求返回的推荐结果条目数。

最大值=50。

UserId

可选

请求推荐的用户ID。

Imei

可选

请求推荐的设备ID。

Ip

可选

请求推荐的设备地址。

UtdiId

可选

请求推荐的用户唯一标识。若填入此参数,则UserId、Imei、Ip都会被忽略。

ServiceType

可选

请求的推荐类型

  • gul:猜你喜欢

  • rr:相关推荐

若未填入,则使用请求的场景所配置的推荐类型。

UserInfo

可选

请求的用户特征,仅当使用自定义EasyRec排序模型时有效。

UserInfo的使用详细说明:

格式如下:

1、首先准备形如feaname1:feavalue1,feaname2:feavalue2的特征KV串,其中:

key值包含的空格会被后端直接忽略。

value值中禁止包含:“、”及“,”。

2、将此字符串进行UTF-8编码。

3、将前步得到的二进制数据进行base64加密。

4、将前步得到的加密字符串进行以下处理:

  • 将+替换为-

  • 将/替换为_

  • 将=替换为.

所得加密字符串填入UserInfo参数。

正确编码举例(可用于验证编码逻辑是否正确):

假设原KV串为:gender:female,name:远方不败,city:北京 海淀

UTF-8编码后,二进制串为:

67 65 6e 64 65 72 3a 66 65 6d 61 6c 65 2c 6e 61 6d 65 3a e8 bf 9c e6 96 b9 e4 b8 8d e8 b4 a5 2c 63 69 74 79 3a e5 8c 97 e4 ba ac 20 e6 b5 b7 e6 b7 80

base64编码后,加密字符串为:

Z2VuZGVyOmZlbWFsZSxuYW1lOui/nOaWueS4jei0pSxjaXR5OuWMl+S6rCDmtbfmt4A=

进行字符替换后,最终得到的字符串为:

Z2VuZGVyOmZlbWFsZSxuYW1lOui_nOaWueS4jei0pSxjaXR5OuWMl-S6rCDmtbfmt4A.

II 调试参数

参数

是否必填

描述

备注

token

必填

调试参数令牌

必须填入token=airec6666才允许输入调试参数,否则下述所有调试参数会被忽略。

debug

可选

调试开关

必须填入debug=true才会返回debug_result。

ExperimentId

可选

指定实验ID

例:ExperimentId=123056。