该组件的作用是使用EasyRec里的add_feature_info_to_config.py脚本,给推荐全链路深度定制开发平台PAIREC生成的临时文件template.config,添加特征信息。本文为您介绍该组件的配置方法。
前提条件
已开通OSS并完成授权,详情请参见 开通OSS服务和 云产品依赖与授权:Designer。
组件配置
您可以使用以下任意一种方式,配置更新EasyRec配置文件组件参数。
方式一:可视化配置参数
输入桩
输入桩(从左到右)
限制数据类型/上游组件
对应PAI命令参数
是否必选
config表输入
说明该表是一个统计表,统计了特征出现的次数、数值特征的分桶值。
config_table
是
组件参数
页签
参数
是否必选
描述
对应PAI命令参数
默认值
参数设置
推荐模板生成的模板配置文件
是
推荐模板生成的模板配置文件所在的OSS路径。
template_config_path
无
easyrec配置文件输出路径
是
EasyRec配置文件的输出路径。
拼装成
output_config_path参数
无
easyrec配置文件文件名
是
EasyRec配置文件的文件名。
无
指定算法版本
是
自定义EasyRec的算法源代码包:
请先参考文档EasyRec版本更新,生成一个EasyRec的tar包。
上传对应版本的tar包到OSS全路径,详情请参见控制台上传文件。
在这个参数中选中上传的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 | 是 | 配置EasyRec的tar文件所在的Bucket和保存模型的Bucket。如果有多个Bucket,使用半角逗号(,)分隔,例如 |
extra_params | 是 | 额外参数,PAI Flow上没有定义的参数,指定 临时文件template_config_path、输出路径output_config_path和 特征信息表config_table参数。 |
script | 否 | 参考文档EasyRec版本更新生成EasyRec的tar包,并上传到OSS,指定tar包的OSS全路径。测试脚本tar包:easy_rec_ext_0.6.1_res.tar.gz。 |
使用示例
下载特征信息数据dssm_recall_30d_config_v1.csv和临时文件template.config。
特征信息数据和临时文件template.config由推荐算法定制生成,这里为了方便,直接提供数据和文件。
通过MaxCompute客户端,为特征信息创建数据表,关于MaxCompute客户端的使用,请参见使用本地客户端(odpscmd)连接。
CREATE TABLE IF NOT EXISTS dssm_recall_30d_config_v1(feature STRING,feature_info STRING,message STRING);
将下载的数据集dssm_recall_30d_config_v1.csv上传到已创建的MaxCompute表中。关于如何使用MaxCompute客户端上传数据,请参见Tunnel命令。
tunnel upload dssm_recall_30d_config_v1.csv dssm_recall_30d_config_v1 -fd \t;
上传临时文件template.config到OSS。具体操作,请参见控制台上传文件。
创建如下工作流。
区域
描述
①
配置读数据表-51的表名参数为已创建的dssm_recall_30d_config_v1表。
②
在更新EasyRec配置文件-1组件的参数设置页签,配置以下参数:
推荐模板生成的模板配置文件:选择临时文件template.config所在的OSS路径。
easyrec配置文件输出路径:选择配置文件输出路径。输出路径不能直接选择Bucket级别,必须选择Bucket下面某个层级(Bucket下的目录级别)。
easyrec配置文件文件名:填写自定义的文件名。
指定算法版本:参考文档EasyRec版本更新生成EasyRec的tar包,并上传到OSS,指定tar包的OSS全路径。测试脚本tar包:easy_rec_ext_0.6.1_res.tar.gz。
单击运行工作流。
工作流运行结束后,您可以在参数easyrec配置文件输出路径配置的OSS路径下,查看输出的EasyRec配置文件。
相关文档
关于该组件更完整的使用流程,请参考推荐算法定制-向量召回案例的节点 11_rec_sln_demo_dssm_recall_v1_update_config ,该节点使用了更新EasyRec配置文件组件。