文档首页 > > 用户指南> 自定义场景>

获取推荐结果

获取推荐结果

分享
更新时间:2021/03/11 GMT+08:00

在线服务创建完成,部署成功后,当服务状态会显示“运行中”,表示服务状态正常。您可以通过在线预测功能测试推荐结果进一步调整作业参数,也可以通过预测接口来调用API,获取推荐结果。

在线预测

  1. 登录RES管理控制台,在左侧菜单栏中选择“推荐业务>自定义场景”,进入自定义场景列表页面。
  2. 单击“已完成”状态的目标服务名称进入自定义场景详情页面,单击“预测”页签,包括两种预测方式。
    • 代码:输入预测代码,单击“预测”后显示预测结果,如图1所示。输入用户ID和推荐数量,根据您设置的策略返回用户的预测结果。
      图1 代码预测
    • 表单:输入“ID”,并设置“最大推荐个数”。其中ID可以为用户ID或者物品ID,单击“预测”后显示预测结果,如图2所示。
      图2 表单预测

获取预测接口

  1. 登录RES管理控制台,在左侧菜单栏中选择“推荐业务>自定义场景”,进入自定义场景列表页面。
  2. 单击“已完成”状态的目标服务名称进入自定义场景详情页面,单击“预测”页签,您可以获取该服务的“API接口地址”。单击,复制接口地址,调用服务。
    图3 获取预测接口

调用接口

Mozilla、Google都为REST提供了图形化的浏览器插件,发送处理请求消息。

此处以Postman为例,指导您如何通过调用预测接口获取推荐结果。更多接口信息请参见《推荐系统API参考》

  1. 下载Postman软件并安装,您也可以直接在Chrome浏览器添加Postman扩展程序(也可使用其它支持发送post请求的软件)。
  2. 打开Postman,如图4所示。
    图4 Postman界面
  3. 在Postman界面填写参数。
    • 选择POST任务,将通过获取预测接口获取的调用地址复制到POST后面的方框。Headers页签的“KEY”值填写为“X-Auth-Token”“VALUE”值为您获取到的Token(关于如何获取token,请参考获取用户Token),如图5所示。

      您也可以通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求,具体可参见《RES API参考》中的"认证鉴权认证鉴权>AK/SK认证”。

      图5 参数填写
  4. 参数填写完成,在Postman页面,选择Body>raw,在下方文本框中填入JSON体,请求样例如下:
    {
        "id": "user198",
        "rec_num": 10,
        "items": [
            "user1",
            "user2"
        ],
        "search_info": {
            "match_infos": [
                {
                    "label": "author",
                    "value": "author8",
                    "weight": 0.9
                },
                {
                    "label": "extend_strArray",
                    "value": "walk",
                    "weight": 0.8
                }
            ],
            "filter_info": {
                "black_list": [
                    "item169",
                    "item5555",
                    "c"
                ],
                "range": {
                    "label": "expireTime",
                    "value": 1579790256
                },
                "category": {
                    "label": "extend_string",
                    "value": "basketball"
                }
            }
        },
        "filter_attr_rules": [
            {
                "name": "author",
                "values": [
                    "张三",
                    "李四"
                ]
            },
            {
                "name": "category",
                "values": [
                    "体育"
                ]
            }
        ],
        "reserve_attr_rules": [
            {
                "name": "singer",
                "values": [
                    "蒋xxx"
                ]
            }
        ]
    }
    表1 参数说明

    参数

    说明

    id

    主体的id。此参数为必选。

    items

    客体的id列表。此参数在线上策略使用到关联推荐召回策略时需要提供。

    例如,给用户推荐物品,主体是用户,客体是物品;给物品推荐用户,主体是物品,客体是用户;给用户推荐用户,主体是用户,客体是用户;给物品推荐物品,主体是物品,客体是物品。

    rec_num

    推荐个数。默认值为20。

    目前最大配额是20,如需要调整,需要联系RES管理员。

    search_info

    配置动态搜索。

    match_infos

    搜索的匹配信息。

    • label是客体的属性名称(可为字符串或字符串数组类型)。
    • value是相应的属性值。
    • weight是该属性值的匹配权重,多个匹配条件做加权汇总后按分值从大到小给出候选集。

    filter_info

    搜索的过滤信息。

    filter_attr_rules

    属性值过滤信息,即将匹配的对应属性值信息过滤掉。

    其中subject_attr_rules是主体的条件信息,只有主体满足该条件时才考虑对客体做过滤处理,如果不提供该信息则直接判断客户是否满足过滤条件。object_attr_rules是客体的条件信息,满足条件时客体会被过滤掉。used_list是该组过滤条件应用于哪些路召回,如果不提供该信息,该组条件默认作用于召回池中所有路召回。name是属性名称,values是属性的取值范围。

    reserve_attr_rules

    属性值保留信息,即将匹配的对应属性值信息保留。

    其中subject_attr_rules是主体的条件信息,只有主体满足该条件时才考虑对客体做过滤处理,如果不提供该信息则直接判断客户是否满足过滤条件。object_attr_rules是客体的条件信息,满足条件时客体会被过滤掉。used_list是该组过滤条件应用于哪些路召回,如果不提供该信息,该组条件默认作用于召回池中所有路召回。name是属性名称,values是属性的取值范围。

    black_list

    客体需要过滤的黑名单。

    range

    选定一个数值型属性(label),输出的候选集该值必须大于等于设定的值才不会被过滤掉。

    category

    选定一个字符串或字符串数组类型属性(label),输出的候选集该值必须包含或等于设定的值才不会被过滤掉。

  5. 参数填写完成,点击“Send”发送请求,结果会在“Response”下的对话框里显示。其中,“id”为推荐的itemId,“score”为该物品的得分。示例如下:
    {
        "flow_id": "flow1",
        "rec_num": 10,
        "candidates": [
            {
                "id": "item235",
                "score": 0.58418584,
                "source": "WeightBehavior-DIREC"
            },
            {
                "id": "item338",
                "score": 0.5653803,
                "source": "WeightBehavior-DIREC"
            },
            {
                "id": "item709",
                "score": 0.55219465,
                "source": "WeightBehavior-DIREC"
            },
            {
                "id": "item960",
                "score": 0.55219465,
                "source": "WeightBehavior-DIREC"
            },
            {
                "id": "item469",
                "score": 0.55219465,
                "source": "WeightBehavior-DIREC"
            },
            {
                "id": "item236",
                "score": 0.55219465,
                "source": "WeightBehavior-DIREC"
            }
        ]
    }
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区论坛频道来与我们联系探讨

智能客服提问云社区提问