更新EasyRec配置文件

该组件的作用是使用EasyRec里的add_feature_info_to_config.py脚本,给推荐全链路深度定制开发平台PAIREC生成的临时文件template.config,添加特征信息。本文为您介绍该组件的配置方法。

前提条件

已开通OSS并完成授权,详情请参见 开通OSS服务云产品依赖与授权:Designer

组件配置

您可以使用以下任意一种方式,配置更新EasyRec配置文件组件参数。

方式一:可视化配置参数

  • 输入桩

    输入桩(从左到右)

    限制数据类型/上游组件

    对应PAI命令参数

    是否必选

    config表输入

    说明

    该表是一个统计表,统计了特征出现的次数、数值特征的分桶值。

    MaxCompute表/SQL脚本读数据表

    config_table

  • 组件参数

    页签

    参数

    是否必选

    描述

    对应PAI命令参数

    默认值

    参数设置

    推荐模板生成的模板配置文件

    推荐模板生成的模板配置文件所在的OSS路径。

    template_config_path

    easyrec配置文件输出路径

    EasyRec配置文件的输出路径。

    拼装成

    output_config_path参数

    easyrec配置文件文件名

    EasyRec配置文件的文件名。

    指定算法版本

    自定义EasyRec的算法源代码包:

    1. 请先参考文档EasyRec版本更新,生成一个EasyRectar包。

    2. 上传对应版本的tar包到OSS全路径,详情请参见控制台上传文件

    3. 在这个参数中选中上传的tar文件所在的OSS全路径。

    script

    执行调优

    Worker数量

    Worker的数量。

    完整的执行调优参数会拼装成cluster参数

    1

    Worker CPU用量

    Worker申请的CPU数量,取值1表示一个CPU核。

    8

    Worker Memory用量

    Worker申请的内存,取值100表示100 MB。

    40000

    Worker GPU卡数

    EasyRec训练中,一般不需要使用GPU。

    0

  • 输出桩

    输出桩(从左到右)

    数据类型

    对应PAI命令参数

    是否必选

    easyrec配置输出

    OSS路径/模型训练

    output_config_path

方式二:PAI命令及说明

使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本

PAI -project algo_public -name easy_rec_ext 
    -Darn="acs:ram::xxx:role/aliyunodpspaidefaultrole" 
    -Dbuckets="oss://rec_sln_demo/" 
    -Dcluster="{\"worker\": {\"count\": 1, \"cpu\": 800, \"gpu\": 0, \"memory\": 40000}}" 
    -Dcmd="custom" 
    -DentryFile="easy_rec/python/tools/add_feature_info_to_config.py" 
    -Dextra_params="--template_config_path=oss://rec_sln_demo/EasyRec/deploy/rec_sln_demo_dssm_recall_v1/rec_sln_demo_dssm_recall_v1_template.config --output_config_path=oss://rec_sln_demo/EasyRec/deploy/rec_sln_demo_dssm_recall_v1//rec_sln_demo_dssm_recall_v1.config --config_table=odps://pai_hangzhou/tables/pai_temp_flow_26un8zq7v4goadi373_node_2m6yfr7q3a69m9jv7n_outputTable" 
    -Dlifecycle="28" 
    -DossHost="oss-cn-hangzhou-internal.aliyuncs.com" 
    -Dscript="oss://rec_sln_demo/easy_rec_ext_0.6.1_res.tar.gz" 
    -Dtables="odps://pai_hangzhou/tables/pai_temp_flow_26un8zq7v4goadi373_node_2m6yfr7q3a69m9jv7n_outputTable";

参数名称

是否必选

描述

entryFile

入口文件,执行add_feature_info_to_config.py脚本。

cmd

cmd配置为custom时,表示执行EasyRec的自定义脚本。

arn

指定资源组授权,您可以登录PAI控制台,在开通和授权>全部云产品依赖页面的Designer区域,单击操作列下的查看授权信息,获取arn。

ossHost

OSS Endpoint,地域和Endpoint对照表请参见访问域名和数据中心

buckets

配置EasyRectar文件所在的Bucket和保存模型的Bucket。如果有多个Bucket,使用半角逗号(,)分隔,例如oss://xxxx/,oss://xxxx/

extra_params

额外参数,PAI Flow上没有定义的参数,指定

临时文件template_config_path、输出路径output_config_path

特征信息表config_table参数。

script

参考文档EasyRec版本更新生成EasyRectar包,并上传到OSS,指定tar包的OSS全路径。测试脚本tar包:easy_rec_ext_0.6.1_res.tar.gz

使用示例

  1. 下载特征信息数据dssm_recall_30d_config_v1.csv和临时文件template.config

说明

特征信息数据和临时文件template.config由推荐算法定制生成,这里为了方便,直接提供数据和文件。

  1. 通过MaxCompute客户端,为特征信息创建数据表,关于MaxCompute客户端的使用,请参见使用本地客户端(odpscmd)连接

    CREATE TABLE IF NOT EXISTS dssm_recall_30d_config_v1(feature STRING,feature_info STRING,message STRING);
  2. 将下载的数据集dssm_recall_30d_config_v1.csv上传到已创建的MaxCompute表中。关于如何使用MaxCompute客户端上传数据,请参见Tunnel命令

    tunnel upload dssm_recall_30d_config_v1.csv dssm_recall_30d_config_v1 -fd \t;
  3. 上传临时文件template.configOSS。具体操作,请参见控制台上传文件

  4. 创建如下工作流。

    a3588ed9d6a79a95967530f2ce0cbdb3

    区域

    描述

    配置读数据表-51表名参数为已创建的dssm_recall_30d_config_v1表。

    更新EasyRec配置文件-1组件的参数设置页签,配置以下参数:

    • 推荐模板生成的模板配置文件:选择临时文件template.config所在的OSS路径。

    • easyrec配置文件输出路径:选择配置文件输出路径。输出路径不能直接选择Bucket级别,必须选择Bucket下面某个层级(Bucket下的目录级别)。

    • easyrec配置文件文件名:填写自定义的文件名。

    • 指定算法版本:参考文档EasyRec版本更新生成EasyRectar包,并上传到OSS,指定tar包的OSS全路径。测试脚本tar包:easy_rec_ext_0.6.1_res.tar.gz

  5. 单击image运行工作流。

    工作流运行结束后,您可以在参数easyrec配置文件输出路径配置的OSS路径下,查看输出的EasyRec配置文件。

相关文档

关于该组件更完整的使用流程,请参考推荐算法定制-向量召回案例的节点 11_rec_sln_demo_dssm_recall_v1_update_config ,该节点使用了更新EasyRec配置文件组件。