Protocol Documentation

Table of Contents

tzrec/protos/data.proto

Top


      
        

DataConfig



        
          
FieldTypeLabelDescription
batch_size uint32 optional
mini batch size to use for training and evaluation. Default: 1024
dataset_type DatasetType required
dataset type. Default: OdpsDataset
fg_encoded bool optional
[deprecated] please use fg_mode.
input data is feature generate encoded or not.
if fg_encoded = true, you should do fg offline first,
  and set fg_encoded_multival_sep for split multi-val feature Default: true
fg_encoded_multival_sep string optional
separator for multi-val feature in fg encoded input data Default: 
label_fields string repeated
labels 
num_workers uint32 optional
number of workers for parallel processing raw data Default: 8
pin_memory bool optional
pin memory for fast cudaMemCopy Default: true
input_fields Field repeated
the input fields must be the same number and in the
same order as data in csv files 
delimiter string optional
delimiter of column features, only used for CsvDataset Default: ,
with_header bool optional
for csv files, with header or not. Default: false
eval_batch_size uint32 optional
mini batch size to use for and evaluation. 
drop_remainder bool optional
drop last batch less than batch_size Default: false
fg_threads uint32 optional
fg threads for each worker,
  if fg_threads = 0, will disable fg dag handler, use python run. Default: 1
is_orderby_partition bool optional
when use OdpsDataset, read data orderby table partitions or not. Default: false
odps_data_quota_name string optional
maxcompute storage api & tunnel quota name Default: pay-as-you-go
sample_mask_prob float optional
mask probability for samples in training progress Default: 0
negative_sample_mask_prob float optional
mask probability for sampled negatives in training progress Default: 0
force_base_data_group bool optional
force padding data into same data group with same batch_size Default: false
sample_weight_fields string repeated
sample weights 
fg_mode FgMode optional
fg run mode. Default: FG_NONE
shuffle bool optional
whether to shuffle data Default: false
shuffle_buffer_size uint32 optional
shufffle buffer for better performance, even shuffle buffer is set,
it is suggested to do full data shuffle before training
especially when the performance of models is not good. Default: 32
odps_data_compression string optional
maxcompute storage api data compression type, LZ4_FRAME | ZSTD | UNCOMPRESSED Default: LZ4_FRAME
sample_cost_field string optional
sample cost field name 
batch_cost_size uint64 optional
batch cost limit size 
input_fields_str string optional
simplified input fields string format: input_name1:input_type1;input_name2:input_type2;
type names follow ODPS conventions with aliases: BIGINT->INT64, INT->INT32 
negative_sampler NegativeSampler optional
 
negative_sampler_v2 NegativeSamplerV2 optional
 
hard_negative_sampler HardNegativeSampler optional
 
hard_negative_sampler_v2 HardNegativeSamplerV2 optional
 
tdm_sampler TDMSampler optional
 

Field



        
          
FieldTypeLabelDescription
input_name string required
 
input_type FieldType optional
only need specify it when use CsvDataset and
value dtype can not be inferred (all values in the column are null) 

DatasetType


        
NameNumberDescription
OdpsDataset 1
ParquetDataset 2
CsvDataset 3
OdpsDatasetV1 4
KafkaDataset 5

FgMode


        
NameNumberDescription
FG_NONE 1
input data is feature generate encoded,
we do not do fg
FG_NORMAL 2
input data is raw feature,
we use python to run feature generate
FG_DAG 3
input data is raw feature,
we use fg_handler to run feature generate
FG_BUCKETIZE 4
input data is after feature generate but before do bucketize,
we do bucketize only

FieldType


        
NameNumberDescription
INT32 0
INT64 1
STRING 2
FLOAT 3
DOUBLE 4
ARRAY_INT32 5
ARRAY_INT64 6
ARRAY_STRING 7
ARRAY_FLOAT 8
ARRAY_DOUBLE 9
ARRAY_ARRAY_INT32 10
ARRAY_ARRAY_INT64 11
ARRAY_ARRAY_STRING 12
ARRAY_ARRAY_FLOAT 13
ARRAY_ARRAY_DOUBLE 14
MAP_STRING_INT32 15
MAP_STRING_INT64 16
MAP_STRING_STRING 17
MAP_STRING_FLOAT 18
MAP_STRING_DOUBLE 19
MAP_INT64_INT32 20
MAP_INT64_INT64 21
MAP_INT64_STRING 22
MAP_INT64_FLOAT 23
MAP_INT64_DOUBLE 24
MAP_INT32_INT32 25
MAP_INT32_INT64 26
MAP_INT32_STRING 27
MAP_INT32_FLOAT 28
MAP_INT32_DOUBLE 29

tzrec/protos/eval.proto

Top


      
        

EvalConfig



        
          
FieldTypeLabelDescription
num_steps uint32 optional
number of steps to evaluate. 
log_step_count_steps uint32 optional
the frequency progress be logged during eval Default: 10

tzrec/protos/export.proto

Top


      
        

ExportConfig



        
          
FieldTypeLabelDescription
exporter_type string optional
type of exporter [latest | best] when train_and_evaluation
latest: regularly exports the serving graph and checkpoints
best: export the best model according to best_exporter_metric Default: latest
best_exporter_metric string optional
the metric used to determine the best checkpoint Default: auc
metric_larger_is_better bool optional
metric value the bigger the best Default: true
mixed_precision string optional
mixed precision mode for inference/export [BF16 | FP16 | ""].
The export-time AMP intent is taken verbatim from this field; if it
disagrees with train_config.mixed_precision a warning is logged.
When set, the dense sub-graph is wrapped in torch.autocast before
torch.export so that AOT Inductor captures dtype-promoting casts
as a wrap_with_autocast HOP. 
cudnn_allow_tf32 bool optional
whether to use torch.backends.cudnn.allow_tf32 Default: true
cuda_matmul_allow_tf32 bool optional
whether to use torch.backends.cuda.matmul.allow_tf32 Default: false

tzrec/protos/feature.proto

Top


      
        

AutoDisEmbedding



        
          
FieldTypeLabelDescription
num_channels uint32 required
number of embedding channels 
temperature float optional
temperature coefficient for softmax Default: 0.1
keep_prob float optional
 Default: 0.8

BoolMaskFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name. 
expression string repeated
feature input, e.g. item:item_id 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 required
embedding dimension 
hash_bucket_size uint64 optional
number of hash size 
num_buckets uint64 optional
number of id enumerators 
vocab_list string repeated
id vocabulary list 
vocab_dict BoolMaskFeature.VocabDictEntry repeated
id vocabulary dict 
value_dim uint32 optional
id value dimensions, default = 0, when use in seq, default = 1
if value_dim = 0, it supports id with multi-value 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value, default value before bucktize 
separator string optional
fg multi-value separator Default: 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
zch ZeroCollisionHash optional
zero collision hash 
vocab_file string optional
id vocabulary file path 
asset_dir string optional
vocab file relative directory 
dynamicemb DynamicEmbedding optional
dynamic embedding 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
default_bucketize_value uint64 optional
out-of-vocab(OOV) id bucketize value when use vocab_list or vocab_dict
when use default_bucketize_value, we will not add additional bucketize_value of
`default_value`=0, bucketize_value of <OOV>=1 into vocab_list or vocab_dict 
fg_value_type string optional
value_type after fg before bucketize, you can specify it for better performance.
e.g. fg_value_type = int64 when use num_buckets 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

BoolMaskFeature.VocabDictEntry



        
          
FieldTypeLabelDescription
key string optional
 
value uint64 optional
 

CombineFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. tag_feat 
expression string required
feature input, e.g. user:tag 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
value_map CombineFeature.ValueMapEntry repeated
value map for mapping input string values to float values 
boundaries float repeated
boundaries for bucktize numeric combine value 
num_buckets uint64 optional
number of id enumerators for sparse combine value 
pooling string optional
embedding pooling type, available is {sum | mean}. Controls embedding bag aggregation.
NOTE: distinct from 'combiner' which controls FG-level multi-value aggregation. Default: sum
default_value string optional
fg default value, default value before bucktize 
separator string optional
fg multi-value separator Default: 
normalizer string optional
fg normalizer, e.g.
method=log10,threshold=1e-10,default=-10
method=zscore,mean=0.0,standard_deviation=10.0
method=minmax,min=2.1,max=2.2
method=expression,expr=sign(x) 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
combiner string optional
combine value combiner type, available is {sum | mean | min | max}
Controls FG-level multi-value aggregation before bucketization. Default: sum
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

CombineFeature.ValueMapEntry



        
          
FieldTypeLabelDescription
key string optional
 
value float optional
 

ComboFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. os_and_cate 
expression string repeated
feature input, e.g. [user:os, item:cate] 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
hash_bucket_size uint64 optional
number of hash size 
vocab_list string repeated
id vocabulary list 
vocab_dict ComboFeature.VocabDictEntry repeated
id vocabulary dict 
value_dim uint32 optional
id value dimensions, if value_dim = 0, it supports id with multi-value Default: 0
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value 
separator string optional
fg multi-value separator Default: 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
zch ZeroCollisionHash optional
zero collision hash 
vocab_file string optional
id vocabulary file path 
asset_dir string optional
vocab file relative directory 
dynamicemb DynamicEmbedding optional
dynamic embedding 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
default_bucketize_value uint64 optional
out-of-vocab(OOV) id bucketize value when use vocab_list or vocab_dict
when use default_bucketize_value, we will not add additional bucketize_value of
`default_value`=0, bucketize_value of <OOV>=1 into vocab_list or vocab_dict 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

ComboFeature.VocabDictEntry



        
          
FieldTypeLabelDescription
key string optional
 
value uint64 optional
 

CustomFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name. 
operator_name string required
custom operator name. 
operator_lib_file string required
custom operator lib file name. 
operator_params google.protobuf.Struct optional
operator custom params. 
is_op_thread_safe bool optional
custom operator is thread safe or not. Default: false
expression string repeated
feature input, e.g. user:os 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
boundaries float repeated
boundaries for bucktize numeric value 
hash_bucket_size uint64 optional
number of hash size for sparse value 
num_buckets uint64 optional
number of id enumerators for sparse value 
vocab_list string repeated
id vocabulary list for sparse value 
vocab_dict CustomFeature.VocabDictEntry repeated
id vocabulary dict 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value Default: 0
separator string optional
fg multi-value separator Default: 
normalizer string optional
fg normalizer, e.g.
method=log10,threshold=1e-10,default=-10
method=zscore,mean=0.0,standard_deviation=10.0
method=minmax,min=2.1,max=2.2
method=expression,expr=sign(x) 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
value_dim uint32 optional
value dimensions 
use_mask bool optional
mask value in training progress 
zch ZeroCollisionHash optional
zero collision hash 
vocab_file string optional
id vocabulary file path 
asset_dir string optional
vocab file relative directory 
dynamicemb DynamicEmbedding optional
dynamic embedding 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
default_bucketize_value uint64 optional
out-of-vocab(OOV) id bucketize value when use vocab_list or vocab_dict
when use default_bucketize_value, we will not add additional bucketize_value of
`default_value`=0, bucketize_value of <OOV>=1 into vocab_list or vocab_dict 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

CustomFeature.VocabDictEntry



        
          
FieldTypeLabelDescription
key string optional
 
value uint64 optional
 

DistanceLFU_EvictionPolicy

DistanceLFU: evict_score = access_cnt / pow((current_iter - last_access_iter), decay_exponent)
FieldTypeLabelDescription
decay_exponent float optional
decay rate is access step Default: 1

DynamicEmbFrequencyAdmissionStrategy



        
          
FieldTypeLabelDescription
threshold uint64 required
minimum frequency threshold for admission 
initializer_args DynamicEmbInitializerArgs optional
determine how to initialize the embedding if the key is not admitted. 
counter_capacity uint64 optional
kv counter capacity, if not set, use embedding max_capacity 
counter_bucket_capacity uint64 optional
kv counter capacity for each bucket. Default: 1024

DynamicEmbInitializerArgs



        
          
FieldTypeLabelDescription
mode string optional
the mode of initialization. NORMAL | TRUNCATED_NORMAL | UNIFORM | CONSTANT 
mean float optional
the mean value for (truncated) normal distributions Default: 0
std_dev float optional
the standard deviation for (truncated) normal distributions.
default is sqrt(1 / embedding_dim) 
lower float optional
the lower bound for uniform/truncated_normal distribution.
default is -sqrt(1 / max_capacity) 
upper float optional
the upper bound for uniform/truncated_normal distribution.
default is sqrt(1 / max_capacity) 
value float optional
the constant value for constant initialization. Default: 0

DynamicEmbedding



        
          
FieldTypeLabelDescription
initializer_args DynamicEmbInitializerArgs optional
arguments for initializing dynamic embedding vector values.
default is uniform distribution, and absolute values of upper and lower bound are sqrt(1 / embedding_dim). 
eval_initializer_args DynamicEmbInitializerArgs optional
the initializer args for evaluation mode. default is
default is constant initialization with value 0.0. 
score_strategy string optional
strategy to set the score for each indices in forward and backward per table. TIMESTAMP | STEP | CUSTOMIZED | LFU | NO_EVICTION Default: STEP
max_capacity uint64 required
max number of embedding rows 
cache_load_factor float optional
percentage of embedding rows caching on gpu 
init_capacity_per_rank uint64 optional
init number of capacity 
init_table string optional
init table path 
bucket_capacity uint64 optional
hash-table bucket capacity. default 128 (matches dynamicemb
DEFAULT_BUCKET_CAPACITY). larger buckets trade probe cost for
higher load factor. 
frequency_admission_strategy DynamicEmbFrequencyAdmissionStrategy optional
 

ExprFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. kv_os_click_count 
expression string required
expression, e.g. sigmoid(pv/(1+click)) 
variables string repeated
variables in expression, e,g. ["item:pv", "item:click"] 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
boundaries float repeated
boundaries for bucktize numeric expr value 
separator string optional
fg multi-value separator Default: 
fill_missing float optional
fill value when vector length mismatch, default is NaN. 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value Default: 0
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
value_dim uint32 optional
if value_dim = 0, it supports multi-value Default: 0
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

FeatureConfig



        
          
FieldTypeLabelDescription
id_feature IdFeature optional
 
raw_feature RawFeature optional
 
combo_feature ComboFeature optional
 
lookup_feature LookupFeature optional
 
match_feature MatchFeature optional
 
sequence_feature SequenceFeature optional
 
expr_feature ExprFeature optional
 
overlap_feature OverlapFeature optional
 
tokenize_feature TokenizeFeature optional
 
custom_feature CustomFeature optional
 
kv_dot_product KvDotProduct optional
 
bool_mask_feature BoolMaskFeature optional
 
combine_feature CombineFeature optional
 
sequence_id_feature IdFeature optional
 
sequence_raw_feature RawFeature optional
 
sequence_combo_feature ComboFeature optional
 
sequence_lookup_feature LookupFeature optional
 
sequence_match_feature MatchFeature optional
 
sequence_expr_feature ExprFeature optional
 
sequence_overlap_feature OverlapFeature optional
 
sequence_tokenize_feature TokenizeFeature optional
 
sequence_custom_feature CustomFeature optional
 
sequence_kv_dot_product KvDotProduct optional
 
sequence_bool_mask_feature BoolMaskFeature optional
 
sequence_combine_feature CombineFeature optional
 

IdFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. item_id 
expression string required
feature input, e.g. item:item_id 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 required
embedding dimension 
hash_bucket_size uint64 optional
number of hash size 
num_buckets uint64 optional
number of id enumerators 
vocab_list string repeated
id vocabulary list 
vocab_dict IdFeature.VocabDictEntry repeated
id vocabulary dict 
value_dim uint32 optional
id value dimensions, default = 0, when use in seq, default = 1
if value_dim = 0, it supports id with multi-value 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value, default value before bucktize 
separator string optional
fg multi-value separator Default: 
weighted bool optional
fg multi-value with whether has weight Default: false
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
zch ZeroCollisionHash optional
zero collision hash 
vocab_file string optional
id vocabulary file path 
asset_dir string optional
vocab file relative directory 
dynamicemb DynamicEmbedding optional
dynamic embedding 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
default_bucketize_value uint64 optional
out-of-vocab(OOV) id bucketize value when use vocab_list or vocab_dict
when use default_bucketize_value, we will not add additional bucketize_value of
`default_value`=0, bucketize_value of <OOV>=1 into vocab_list or vocab_dict 
fg_value_type string optional
value_type after fg before bucketize, you can specify it for better performance.
e.g. fg_value_type = int64 when use num_buckets 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

IdFeature.VocabDictEntry



        
          
FieldTypeLabelDescription
key string optional
 
value uint64 optional
 

KvDotProduct



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. kv_os_click_count 
query string required
query, e.g. ["a:0.5", "b:0.5"] 
document string required
document, e,g. ["d:0.5", "b:0.5"] 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
boundaries float repeated
boundaries for bucktize numeric expr value 
separator string optional
fg multi-value separator Default: 
kv_delimiter float optional
fg kv separator, default is :. 
normalizer string optional
fg normalizer, e.g.
method=log10,threshold=1e-10,default=-10
method=zscore,mean=0.0,standard_deviation=10.0
method=minmax,min=2.1,max=2.2
method=expression,expr=sign(x) 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value Default: 0
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

LFU_EvictionPolicy

LFU: evict_score = access_cnt

LRU_EvictionPolicy

LRU: evict_score = 1 / pow((current_iter - last_access_iter), decay_exponent)
FieldTypeLabelDescription
decay_exponent float optional
decay rate is access step Default: 1

LookupFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. kv_os_click_count 
map string required
map input, e.g. item:kv_os_click_count 
key string required
key input, e.g. user:os 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
boundaries float repeated
boundaries for bucktize numeric lookup value 
hash_bucket_size uint64 optional
number of hash size for sparse lookup value 
num_buckets uint64 optional
number of id enumerators for sparse lookup value 
vocab_list string repeated
id vocabulary list for sparse lookup value 
vocab_dict LookupFeature.VocabDictEntry repeated
id vocabulary dict 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
combiner string optional
lookup value combiner type, available is {sum | mean | min | max | count} Default: sum
default_value string optional
fg default value Default: 0
separator string optional
fg multi-value separator Default: 
need_discrete bool optional
lookup map value is sparse or numeric,
when need_discrete is true, combiner will be empty string Default: false
need_key bool optional
lookup value need key as prefix or not. Default: false
normalizer string optional
fg normalizer, e.g.
method=log10,threshold=1e-10,default=-10
method=zscore,mean=0.0,standard_deviation=10.0
method=minmax,min=2.1,max=2.2
method=expression,expr=sign(x) 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
value_dim uint32 optional
lookup value dimensions 
value_separator string optional
numeric lookup value separator Default: ,
use_mask bool optional
mask value in training progress 
zch ZeroCollisionHash optional
zero collision hash 
vocab_file string optional
id vocabulary file path 
asset_dir string optional
vocab file relative directory 
dynamicemb DynamicEmbedding optional
dynamic embedding 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
default_bucketize_value uint64 optional
out-of-vocab(OOV) id bucketize value when use vocab_list or vocab_dict
when use default_bucketize_value, we will not add additional bucketize_value of
`default_value`=0, bucketize_value of <OOV>=1 into vocab_list or vocab_dict 
fg_value_type string optional
value_type after fg before bucketize, you can specify it for better performance.
e.g. fg_value_type = int64 when use num_buckets 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

LookupFeature.VocabDictEntry



        
          
FieldTypeLabelDescription
key string optional
 
value uint64 optional
 

MLPEmbedding



        

        
      
        

MatchFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. match_cate_brand_click_count 
nested_map string required
nested map input, e.g. user:match_cate_brand_click_count 
pkey string required
first layer (primary) key input, e.g. item:cate or ALL 
skey string required
second layer (secondary) key input, e.g. item:brand or ALL 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
boundaries float repeated
boundaries for bucktize numeric match value 
hash_bucket_size uint64 optional
number of hash size for sparse match value 
num_buckets uint64 optional
number of id enumerators for sparse match value 
vocab_list string repeated
id vocabulary list for sparse match value 
vocab_dict MatchFeature.VocabDictEntry repeated
id vocabulary dict 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
match value combiner type, available is {sum | mean | min | max | count}
optional string combiner = 12 [default = "sum"];
fg default value Default: 0
separator string optional
fg multi-value separator Default: 
need_discrete bool optional
match map value is sparse or numeric,
when need_discrete is true, combiner will be empty string Default: false
show_pkey bool optional
match value need pkey value as prefix or not. Default: false
show_skey bool optional
match value need skey  valueas prefix or not. Default: false
normalizer string optional
fg normalizer, e.g.
method=log10,threshold=1e-10,default=-10
method=zscore,mean=0.0,standard_deviation=10.0
method=minmax,min=2.1,max=2.2
method=expression,expr=sign(x) 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
value_dim uint32 optional
match value dimensions 
use_mask bool optional
mask value in training progress 
zch ZeroCollisionHash optional
zero collision hash 
vocab_file string optional
id vocabulary file path 
asset_dir string optional
vocab file relative directory 
dynamicemb DynamicEmbedding optional
dynamic embedding 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
default_bucketize_value uint64 optional
out-of-vocab(OOV) id bucketize value when use vocab_list or vocab_dict
when use default_bucketize_value, we will not add additional bucketize_value of
`default_value`=0, bucketize_value of <OOV>=1 into vocab_list or vocab_dict 
fg_value_type string optional
value_type after fg before bucketize, you can specify it for better performance.
e.g. fg_value_type = int64 when use num_buckets 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

MatchFeature.VocabDictEntry



        
          
FieldTypeLabelDescription
key string optional
 
value uint64 optional
 

OverlapFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. overlap_ratio 
query string required
query input name, e.g. user:query 
title string required
title input name, e,g. item:title 
method string required
overlap calculate method, available is {query_common_ratio | title_common_ratio | is_contain | is_equal} 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
boundaries float repeated
boundaries for bucktize numeric expr value 
normalizer string optional
fg normalizer, e.g.
method=log10,threshold=1e-10,default=-10
method=zscore,mean=0.0,standard_deviation=10.0
method=minmax,min=2.1,max=2.2
method=expression,expr=sign(x) 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
separator string optional
fg default value
optional string default_value = 11 [default = "0"];
fg multi-value separator Default: 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

ParameterConstraints



        
          
FieldTypeLabelDescription
sharding_types string repeated
embedding sharding type constraints
data_parallel | table_wise | column_wise | row_wise | table_row_wise | table_column_wise | grid_shard 
compute_kernels string repeated
embedding compute kernel constraints
dense | fused | fused_uvm | fused_uvm_caching | key_value 

RawFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. click_count 
expression string required
feature input, e.g. item:click_count 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 optional
embedding dimension 
boundaries float repeated
boundaries for bucktize numeric feature 
value_dim uint32 optional
raw feature of multiple dimensions Default: 1
normalizer string optional
fg normalizer, e.g.
method=log10,threshold=1e-10,default=-10
method=zscore,mean=0.0,standard_deviation=10.0
method=minmax,min=2.1,max=2.2
method=expression,expr=sign(x) 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value Default: 0
separator string optional
fg multi-value separator Default: 
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
autodis AutoDisEmbedding optional
autodis embedding 
mlp MLPEmbedding optional
mlp embedding 
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 

SeqFeatureConfig



        
          
FieldTypeLabelDescription
id_feature IdFeature optional
 
raw_feature RawFeature optional
 
combo_feature ComboFeature optional
 
lookup_feature LookupFeature optional
 
match_feature MatchFeature optional
 
expr_feature ExprFeature optional
 
overlap_feature OverlapFeature optional
 
tokenize_feature TokenizeFeature optional
 
custom_feature CustomFeature optional
 
kv_dot_product KvDotProduct optional
 
bool_mask_feature BoolMaskFeature optional
 
combine_feature CombineFeature optional
 

SequenceFeature



        
          
FieldTypeLabelDescription
sequence_name string required
sequence name 
sequence_length uint32 required
max sequence length, only take effect in fg 
sequence_delim string required
sequence delimiter Default: ;
sequence_pk string optional
sequence primary key name for serving,
default will be user:{sequence_name} 
features SeqFeatureConfig repeated
sub feature config 

TextNormalizer



        
          
FieldTypeLabelDescription
max_length uint32 optional
if text_length greater than max_length, will not do normalize 
stop_char_file string optional
stop char file path, default will use built-in stop char 
norm_options TextNormalizeOption repeated
text normalize options, default is TEXT_LOWER2UPPER & TEXT_SBC2DBC & TEXT_CHT2CHS & TEXT_FILTER 

TokenizeFeature



        
          
FieldTypeLabelDescription
feature_name string required
feature name, e.g. title_token 
expression string required
feature input, e.g. item:title 
embedding_name string optional
embedding name, feature with same embedding name will share embedding 
embedding_dim uint32 required
embedding dimension 
text_normalizer TextNormalizer optional
text normalizer 
vocab_file string required
tokenizer vocabulary file path 
asset_dir string optional
vocab file relative directory 
pooling string optional
embedding pooling type, available is {sum | mean} Default: sum
default_value string optional
fg default value, default value before bucktize 
tokenizer_type string optional
tokenizer_type type, available is {bpe | sentencepiece} Default: bpe
init_fn string optional
embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 
use_mask bool optional
mask value in training progress 
fg_encoded_default_value string optional
default value when fg_mode = FG_NONE,
when use pai-fg, you do not need to set the param.
when use own fg and data contain null value, you can set the param for fill null 
trainable bool optional
embedding param trainable or not Default: true
stub_type bool optional
only used as fg dag intermediate result or not Default: false
data_type string optional
embedding data type Default: FP32
embedding_constraints ParameterConstraints optional
embedding param constraints 
sequence_length uint32 optional
max sequence length, only take effect when use it as sequence 
sequence_delim string optional
sequence delimiter, only take effect when use it as sequence Default: ;
sequence_fields string repeated
specify sequence type fields in inputs. default is item side inputs. 
tokens_as_sequence bool optional
When true, treat the tokenized output of a single text as a sequence
of tokens (each token is one sequence element, value_dim=1) so the
feature can be fed into sequence_encoder modules (pooling_encoder,
self_attention_encoder, etc.) via EmbeddingCollection instead of
being pooled by EmbeddingBagCollection. This is distinct from the
`sequence_tokenize_feature` oneof entry, which interprets the input as
a `sequence_delim`-separated list of texts. Default: false

ZeroCollisionHash



        
          
FieldTypeLabelDescription
zch_size uint64 required
zero collision size 
eviction_interval uint32 optional
evict interval steps Default: 5
lfu LFU_EvictionPolicy optional
 
lru LRU_EvictionPolicy optional
 
distance_lfu DistanceLFU_EvictionPolicy optional
 
threshold_filtering_func string optional
lambda function string used to filter incoming ids before update/eviction. experimental feature.
       [input: Tensor] the function takes as input a 1-d tensor of unique id counts.
       [output1: Tensor] the function returns a boolean_mask or index array of corresponding elements in the input tensor that pass the filter.
       [output2: float, Tensor] the function returns the threshold that will be used to filter ids before update/eviction. all values <= this value will be filtered out. 

TextNormalizeOption


        
NameNumberDescription
TEXT_LOWER2UPPER 0
lower case to upper case
TEXT_UPPER2LOWER 1
upper case to lower case
TEXT_SBC2DBC 2
sbc case to dbc case
TEXT_CHT2CHS 3
traditional chinese to simple chinese
TEXT_FILTER 4
filter speicial chars
TEXT_SPLITCHRS 5
chinese split to chars with blanks
TEXT_REMOVE_SPACE 6
remove space

tzrec/protos/loss.proto

Top


      
        

BinaryCrossEntropy



        
          
FieldTypeLabelDescription
label_smoothing float optional
 Default: 0

BinaryFocalLoss



        
          
FieldTypeLabelDescription
gamma float optional
 Default: 2
alpha float optional
 Default: 0.5

JRCLoss



        
          
FieldTypeLabelDescription
session_name string required
 
alpha float optional
 Default: 0.5

L2Loss



        

        
      
        

LossConfig



        
          
FieldTypeLabelDescription
binary_cross_entropy BinaryCrossEntropy optional
 
softmax_cross_entropy SoftmaxCrossEntropy optional
 
l2_loss L2Loss optional
 
jrc_loss JRCLoss optional
 
binary_focal_loss BinaryFocalLoss optional
 

SoftmaxCrossEntropy



        
          
FieldTypeLabelDescription
label_smoothing float optional
 Default: 0

tzrec/protos/metric.proto

Top


      
        

AUC



        
          
FieldTypeLabelDescription
thresholds uint32 optional
 Default: 200

Accuracy



        
          
FieldTypeLabelDescription
threshold float optional
probs threshold Default: 0.5
top_k uint32 optional
top k accuracy when num_class > 1 Default: 1

GroupedAUC



        
          
FieldTypeLabelDescription
grouping_key string required
 

GroupedXAUC



        
          
FieldTypeLabelDescription
grouping_key string required
 
max_pairs_per_group uint64 optional
 Default: 100

MeanAbsoluteError



        

        
      
        

MeanSquaredError



        

        
      
        

MetricConfig



        
          
FieldTypeLabelDescription
auc AUC optional
 
multiclass_auc MulticlassAUC optional
 
recall_at_k RecallAtK optional
 
mean_absolute_error MeanAbsoluteError optional
 
mean_squared_error MeanSquaredError optional
 
accuracy Accuracy optional
 
grouped_auc GroupedAUC optional
 
xauc XAUC optional
 
grouped_xauc GroupedXAUC optional
 
normalized_entropy NormalizedEntropy optional
 

MulticlassAUC



        
          
FieldTypeLabelDescription
thresholds uint32 optional
 Default: 200
average string optional
macro: calculate score for each class and average them
weighted: calculates score for each class and computes weighted average using their support Default: macro

NormalizedEntropy



        
          
FieldTypeLabelDescription
eta float optional
small epsilon clamping the population mean label rate away from {0, 1}. Default: 1e-12

RecallAtK



        
          
FieldTypeLabelDescription
top_k uint32 optional
 Default: 5

TrainMetricConfig



        
          
FieldTypeLabelDescription
auc AUC optional
 
recall_at_k RecallAtK optional
 
mean_absolute_error MeanAbsoluteError optional
 
mean_squared_error MeanSquaredError optional
 
accuracy Accuracy optional
 
xauc XAUC optional
 
decay_rate float optional
metric decay rate Default: 0.9
decay_step uint32 optional
train_config.log_step_count_steps can divide decay_steps evenly. Default: 100

XAUC



        
          
FieldTypeLabelDescription
sample_ratio float optional
 Default: 0.001
max_pairs uint64 optional
 
in_batch bool optional
 Default: false

tzrec/protos/model.proto

Top


      
        

FeatureGroupConfig



        
          
FieldTypeLabelDescription
group_name string required
 
feature_names string repeated
 
group_type FeatureGroupType required
 Default: DEEP
sequence_groups SeqGroupConfig repeated
 
sequence_encoders SeqEncoderConfig repeated
 
embedding_name_suffix string optional
Suffix appended to each feature's embedding_name so groups with
different suffixes use independent embedding tables. Empty == disabled. 

ModelConfig



        
          
FieldTypeLabelDescription
feature_groups FeatureGroupConfig repeated
 
dlrm DLRM optional
 
deepfm DeepFM optional
 
multi_tower MultiTower optional
 
multi_tower_din MultiTowerDIN optional
 
mask_net MaskNet optional
 
wide_and_deep WideAndDeep optional
 
dcn_v1 DCNV1 optional
 
dcn_v2 DCNV2 optional
 
xdeepfm xDeepFM optional
 
wukong WuKong optional
 
simple_multi_task SimpleMultiTask optional
 
mmoe MMoE optional
 
dbmtl DBMTL optional
 
ple PLE optional
 
dc2vr DC2VR optional
 
dlrm_hstu DlrmHSTU optional
 
pepnet PEPNet optional
 
ultra_hstu UltraHSTU optional
 
dssm DSSM optional
 
dssm_v2 DSSMV2 optional
 
dat DAT optional
 
hstu_match HSTUMatch optional
 
mind MIND optional
 
tdm TDM optional
 
rocket_launching RocketLaunching optional
 
num_class uint32 optional
 Default: 1
losses LossConfig repeated
 
metrics MetricConfig repeated
 
train_metrics TrainMetricConfig repeated
 
variational_dropout VariationalDropout optional
 
kernel Kernel optional
 Default: PYTORCH
use_pareto_loss_weight bool optional
whether use pareto loss weight Default: false

SeqGroupConfig



        
          
FieldTypeLabelDescription
group_name string optional
 
feature_names string repeated
 
embedding_name_suffix string optional
Suffix appended to each feature's embedding_name; same semantics as
FeatureGroupConfig.embedding_name_suffix. Empty == disabled. 

FeatureGroupType


        
NameNumberDescription
DEEP 0
WIDE 1
SEQUENCE 2
JAGGED_SEQUENCE 3

Kernel


        
NameNumberDescription
TRITON 0
PYTORCH 1
CUTLASS 2

tzrec/protos/module.proto

Top


      
        

B2ICapsule



        
          
FieldTypeLabelDescription
max_k uint32 optional
max number of high capsules Default: 5 Default: 5
max_seq_len uint32 required
max behaviour sequence length 
high_dim uint32 required
high capsule embedding vector dimension 
num_iters uint32 optional
dynamic routing iterations, Default: 3 Default: 3
routing_logits_scale float optional
routing logits scale Default: 20 Default: 20
routing_logits_stddev float optional
routing logits initial stddev Default: 1 Default: 1
squash_pow float optional
squash power Default: 1 Default: 1
const_caps_num bool optional
whether to use constant capsule number, Default: false Default: false
routing_init_method string optional
the initialization method for routing logits,
 Default: normal, available: zeros. Default: normal

CIN



        
          
FieldTypeLabelDescription
cin_layer_size uint32 repeated
every layer size 

Cross



        
          
FieldTypeLabelDescription
cross_num uint32 optional
number of cross layers Default: 3

CrossV2



        
          
FieldTypeLabelDescription
cross_num uint32 optional
number of cross layers Default: 3
low_rank uint32 optional
Matrix decomposition with minimal rank. Default: 32

ExtractionNetwork



        
          
FieldTypeLabelDescription
network_name string required
 
expert_num_per_task uint32 required
number of experts per task 
share_num uint32 optional
number of experts for share 
task_expert_net MLP required
mlp network of experts per task 
share_expert_net MLP optional
mlp network of experts for share 

GRActionEncoder



        
          
FieldTypeLabelDescription
simple_action_encoder GRSimpleActionEncoder optional
 

GRContentEncoder



        
          
FieldTypeLabelDescription
slice_content_encoder GRSliceContentEncoder optional
slice candidate dim to uih dim 
pad_content_encoder GRPadContentEncoder optional
padding candidate dim to uih dim 
mlp_content_encoder GRMLPContentEncoder optional
linear transform uih and candidate to same dim 

GRContextualInterleavePreprocessor



        
          
FieldTypeLabelDescription
action_encoder GRActionEncoder optional
action encoder config 
enable_interleaving bool optional
enable interleave target or not Default: true
action_mlp GRContextualizedMLP optional
action embedding mlp config 
content_encoder GRContentEncoder required
content encoder config 
content_mlp GRContextualizedMLP required
content embedding mlp config 

GRContextualPreprocessor



        
          
FieldTypeLabelDescription
action_encoder GRActionEncoder optional
action encoder config 
action_mlp GRContextualizedMLP optional
action embedding mlp config 
content_encoder GRContentEncoder required
content encoder config 
content_mlp GRContextualizedMLP required
content embedding mlp config 

GRContextualizedMLP



        
          
FieldTypeLabelDescription
simple_mlp GRSimpleContextualizedMLP optional
mlp for sequence embedding 
parameterized_mlp GRParameterizedContextualizedMLP optional
mlp for sequence and contextual embedding 

GRInputPreprocessor



        
          
FieldTypeLabelDescription
contextual_preprocessor GRContextualPreprocessor optional
input preprocessor with contextual features 
contextual_interleave_preprocessor GRContextualInterleavePreprocessor optional
input preprocessor with interleave targets 
uih_preprocessor GRUIHPreprocessor optional
input preprocessor for sequence-only models (no candidate concat) 

GRL2NormPostprocessor



        

        
      
        

GRLayerNormPostprocessor



        

        
      
        

GRMLPContentEncoder



        
          
FieldTypeLabelDescription
uih_mlp MLP required
mlp for uih seq embedding 
target_mlp MLP required
mlp for candidate seq embedding 

GROutputPostprocessor



        
          
FieldTypeLabelDescription
l2norm_postprocessor GRL2NormPostprocessor optional
l2 norm postprocessor 
layernorm_postprocessor GRLayerNormPostprocessor optional
layer norm postprocessor 
timestamp_layernorm_postprocessor GRTimestampLayerNormPostprocessor optional
timestamp layer norm postprocessor 

GRPadContentEncoder



        

        
      
        

GRParameterizedContextualizedMLP



        
          
FieldTypeLabelDescription
hidden_dim uint32 required
mlp hidden dimension 
contextual_dropout_ratio float optional
dropout ratio for contextual embedding Default: 0.3

GRPositionalEncoder



        
          
FieldTypeLabelDescription
num_position_buckets uint32 required
buckets for position embedding 
num_time_buckets uint32 optional
buckets for timestamp embedding 
use_time_encoding bool optional
use timestamp encoding or not. Default: false
time_bucket_fn string optional
transform function for timestamp gap. sqrt | log Default: sqrt
time_bucket_increments float optional
timestamp gap will div by time_bucket_increments Default: 60

GRSimpleActionEncoder



        
          
FieldTypeLabelDescription
action_embedding_dim uint32 optional
action embedding dim 
action_weights uint32 repeated
bitmask of each action 
watchtime_to_action_thresholds uint32 repeated
thresholds for watch time to actions 
watchtime_to_action_weights uint32 repeated
bitmask for watch time to actions 
embedding_init_std float optional
action embedding weights init std Default: 0.1

GRSimpleContextualizedMLP



        
          
FieldTypeLabelDescription
hidden_dim uint32 required
mlp hidden dimension 

GRSliceContentEncoder



        

        
      
        

GRTimestampLayerNormPostprocessor



        
          
FieldTypeLabelDescription
time_duration_period_units uint32 repeated
time duration period units, e.g. 60 * 60 for hour of day. 
time_duration_units_per_period uint32 repeated
time duration units per period, e.g. 24 for hour of day. 

GRUIHPreprocessor



        
          
FieldTypeLabelDescription
action_encoder GRActionEncoder optional
action encoder config (optional - for models with action info) 
action_mlp GRContextualizedMLP optional
action embedding mlp config (required if action_encoder is set) 

HSTU



        
          
FieldTypeLabelDescription
stu STU required
stu config 
input_dropout_ratio float optional
dropout ratio after preprocessor Default: 0.2
attn_num_layers uint32 optional
num stu layers Default: 3
positional_encoder GRPositionalEncoder required
position encoder 
input_preprocessor GRInputPreprocessor required
input preprocessor 
output_postprocessor GROutputPostprocessor required
output postprocessor 
attn_truncation_split_layer uint32 optional
Attention truncation: after this many full-sequence layers, drop UIH
prefix tokens to keep only the last attn_truncation_tail_len per
sample.  Contextual prefix and targets survive.  Must be in
(0, attn_num_layers); 0 disables. 
attn_truncation_tail_len uint32 optional
Trailing UIH cap; both fields must be > 0 to enable truncation. 
name string optional
MoT channel name.  When non-empty, replaces the default `uih`
prefix on UIH-side keys read from grouped_features (e.g.
name="uih_click" -> uih_click.sequence, uih_click_action.sequence,
uih_click_watchtime.sequence, uih_click_timestamp.sequence).
Empty preserves the original uih.* keys (DlrmHSTU behavior).
Channels with the same `embedding_name` on a feature share the
underlying embedding table via EmbeddingGroup dedupe; per-channel
tables multiply sparse-param + TBE + all-to-all cost by N. 

MLP



        
          
FieldTypeLabelDescription
hidden_units uint32 repeated
hidden units for each layer 
dropout_ratio float repeated
ratio of dropout 
activation string optional
activation function Default: nn.ReLU
use_bn bool optional
use batch normalization Default: false
bias bool optional
use bias Default: true
use_ln bool optional
use layer normalization Default: false

MaskBlock



        
          
FieldTypeLabelDescription
reduction_ratio float optional
the ratio between aggregation dim and masked input dim Default: 1
aggregation_dim uint32 optional
the dim of aggregation layer 
hidden_dim uint32 required
the dim of hidden ffn layer 

MaskNetModule



        
          
FieldTypeLabelDescription
n_mask_blocks uint32 required
number of mask blocks 
mask_block MaskBlock required
mask block 
top_mlp MLP optional
mlp layer on top of mask blocks 
use_parallel bool optional
use parallel or serial mask blocks Default: true

STU



        
          
FieldTypeLabelDescription
embedding_dim uint32 required
dimension of input embeddings 
num_heads uint32 required
number of attention heads 
hidden_dim uint32 required
dimension of hidden linear layers 
attention_dim uint32 required
dimension of attention mechanism 
output_dropout_ratio float optional
dropout probability for linear layers Default: 0.3
max_attn_len uint32 optional
maximum length of attention window 
attn_alpha float optional
alpha for mha attention 
use_group_norm bool optional
use group normalization or layer normalization. Default: false
recompute_normed_x bool optional
whether to recompute normed_x in backward Default: true
recompute_uvqk bool optional
whether to recompute_uvqk in backward Default: true
recompute_y bool optional
whether to recompute y in backward Default: true
sort_by_length bool optional
whether to sort by sequence length when forwarding Default: true
contextual_seq_len int32 optional
sequence length of contextual feature.
Sentinel: < 0 (default) = use input_preprocessor.contextual_seq_len(). Default: -1
sla_k1 uint32 optional
Semi-Local Attention: local causal window size (0 = disabled) 
sla_k2 uint32 optional
Semi-Local Attention: global prefix length (0 = disabled) 
scaling_seqlen int32 optional
attention output scaling divisor (denominator of the SiLU(QK)/N term).
Sentinel: < 0 (default) = use runtime max_seq_len. Default: -1

VariationalDropout



        
          
FieldTypeLabelDescription
regularization_lambda float optional
regularization coefficient lambda Default: 0.01
embedding_wise_variational_dropout bool optional
variational_dropout dimension Default: false

WuKongLayer



        
          
FieldTypeLabelDescription
lcb_feature_num uint32 required
LinearCompressBlock output feature num 
fmb_feature_num uint32 required
FactorizationMachineBlock output feature num 
compressed_feature_num uint32 optional
number of compressed features in optimized FM. Default: 16
feature_num_mlp MLP required
feature num mlp 

tzrec/protos/optimizer.proto

Top


      
        

AdadeltaOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
rho float optional
 Default: 0.95
eps float optional
 Default: 1e-06
weight_decay float optional
 Default: 0

AdagradOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
weight_decay float optional
 Default: 0
initial_accumulator_value float optional
 Default: 0
eps float optional
 Default: 1e-10
fused bool optional
 Default: false

AdamOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
beta1 float optional
 Default: 0.9
beta2 float optional
 Default: 0.999
weight_decay float optional
 Default: 0
eps float optional
 Default: 1e-08
amsgrad bool optional
 Default: false
fused bool optional
 Default: false

AdamWOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
beta1 float optional
 Default: 0.9
beta2 float optional
 Default: 0.999
weight_decay float optional
 Default: 0
eps float optional
 Default: 1e-08
amsgrad bool optional
 Default: false
fused bool optional
 Default: false

ConstantLR



        

        
      
        

CosineAnnealingLR



        
          
FieldTypeLabelDescription
T_max uint32 optional
total number of steps or epochs for cosine annealing 
min_learning_rate float optional
minimum learning rate Default: 0
warmup_learning_rate float optional
warmup start learning rate Default: 0
warmup_size uint32 optional
warmup steps or epochs Default: 0
by_epoch bool optional
schedule by epoch or by step. Default: false

CosineAnnealingWarmRestartsLR



        
          
FieldTypeLabelDescription
T_0 uint32 optional
number of steps or epochs for the first cosine annealing period 
T_mult uint32 optional
factor to grow period length after each restart (1 = fixed period) Default: 1
min_learning_rate float optional
minimum learning rate Default: 0
warmup_learning_rate float optional
warmup start learning rate Default: 0
warmup_size uint32 optional
warmup steps or epochs Default: 0
by_epoch bool optional
schedule by epoch or by step. Default: false

DenseOptimizer



        
          
FieldTypeLabelDescription
sgd_optimizer SGDOptimizer optional
 
adagrad_optimizer AdagradOptimizer optional
 
adam_optimizer AdamOptimizer optional
 
adamw_optimizer AdamWOptimizer optional
 
adadelta_optimizer AdadeltaOptimizer optional
 
rmsprop_optimizer RMSpropOptimizer optional
 
constant_learning_rate ConstantLR optional
 
exponential_decay_learning_rate ExponentialDecayLR optional
 
manual_step_learning_rate ManualStepLR optional
 
cosine_annealing_learning_rate CosineAnnealingLR optional
 
cosine_annealing_warm_restarts_learning_rate CosineAnnealingWarmRestartsLR optional
 
part_optimizers PartOptimizer repeated
 

ExponentialDecayLR



        
          
FieldTypeLabelDescription
decay_size uint32 optional
decay steps or epochs 
decay_factor float optional
decay rate Default: 0.95
staircase bool optional
if true, decay the learning rate at discrete intervals Default: true
warmup_learning_rate float optional
warmup start learning rate Default: 0
warmup_size uint32 optional
warmup steps or epochs Default: 0
min_learning_rate float optional
minimum learning rate Default: 0
by_epoch bool optional
schedule by epoch or by step. Default: false

FusedAdadeltaOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
rho float optional
 Default: 0.95
eps float optional
 Default: 1e-06
weight_decay float optional
 Default: 0
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedAdagradOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1
initial_accumulator_value float optional
 Default: 0

FusedAdamOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
beta1 float optional
 Default: 0.9
beta2 float optional
 Default: 0.999
weight_decay float optional
 Default: 0
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedLAMBOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
beta1 float optional
 Default: 0.9
beta2 float optional
 Default: 0.999
weight_decay float optional
 Default: 0
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedLarsSGDOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
momentum float optional
 Default: 0.9
weight_decay float optional
 Default: 0
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedPartialRowWiseAdamOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
beta1 float optional
 Default: 0.9
beta2 float optional
 Default: 0.999
weight_decay float optional
 Default: 0
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedPartialRowWiseLAMBOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
beta1 float optional
 Default: 0.9
beta2 float optional
 Default: 0.999
weight_decay float optional
 Default: 0
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedRMSpropOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
alpha float optional
 Default: 0.99
eps float optional
 Default: 1e-08
weight_decay float optional
 Default: 0
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedRowWiseAdagradOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
weight_decay float optional
 Default: 0
weight_decay_mode WeightDecayMode optional
 Default: NONE
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

FusedSGDOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
gradient_clipping bool optional
 Default: false
max_gradient float optional
 Default: 1

ManualStepLR



        
          
FieldTypeLabelDescription
schedule_sizes uint32 repeated
a list of global steps or epochs at which to switch learning 
learning_rates float repeated
a list of learning rates corresponding to intervals 
warmup bool optional
Whether to linearly interpolate learning rates for steps in
[0, schedule_steps[0]]. Default: false
by_epoch bool optional
schedule by epoch or by step. Default: false

PartOptimizer



        
          
FieldTypeLabelDescription
sgd_optimizer SGDOptimizer optional
 
adagrad_optimizer AdagradOptimizer optional
 
adam_optimizer AdamOptimizer optional
 
adamw_optimizer AdamWOptimizer optional
 
adadelta_optimizer AdadeltaOptimizer optional
 
rmsprop_optimizer RMSpropOptimizer optional
 
regex_pattern string required
 
constant_learning_rate ConstantLR optional
 
exponential_decay_learning_rate ExponentialDecayLR optional
 
manual_step_learning_rate ManualStepLR optional
 
cosine_annealing_learning_rate CosineAnnealingLR optional
 
cosine_annealing_warm_restarts_learning_rate CosineAnnealingWarmRestartsLR optional
 

RMSpropOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
alpha float optional
 Default: 0.99
eps float optional
 Default: 1e-08
weight_decay float optional
 Default: 0

SGDOptimizer



        
          
FieldTypeLabelDescription
lr float required
 Default: 0.002
momentum float optional
 Default: 0.9
weight_decay float optional
 Default: 0
dampening float optional
 Default: 0
nesterov bool optional
 Default: false
fused bool optional
 Default: false

SparseOptimizer



        
          
FieldTypeLabelDescription
sgd_optimizer FusedSGDOptimizer optional
 
adagrad_optimizer FusedAdagradOptimizer optional
 
adam_optimizer FusedAdamOptimizer optional
 
lars_sgd_optimizer FusedLarsSGDOptimizer optional
 
lamb_optimizer FusedLAMBOptimizer optional
 
partial_rowwise_lamb_optimizer FusedPartialRowWiseLAMBOptimizer optional
 
partial_rowwise_adam_optimizer FusedPartialRowWiseAdamOptimizer optional
 
rowwise_adagrad_optimizer FusedRowWiseAdagradOptimizer optional
 
adadelta_optimizer FusedAdadeltaOptimizer optional
 
rmsprop_optimizer FusedRMSpropOptimizer optional
 
constant_learning_rate ConstantLR optional
 
exponential_decay_learning_rate ExponentialDecayLR optional
 
manual_step_learning_rate ManualStepLR optional
 
cosine_annealing_learning_rate CosineAnnealingLR optional
 
cosine_annealing_warm_restarts_learning_rate CosineAnnealingWarmRestartsLR optional
 

WeightDecayMode


        
NameNumberDescription
NONE 0
L2 1
DECOUPLE 2

tzrec/protos/pipeline.proto

Top


      
        

EasyRecConfig



        
          
FieldTypeLabelDescription
train_input_path string required
 
eval_input_path string required
 
model_dir string required
 
train_config TrainConfig optional
 
eval_config EvalConfig optional
 
export_config ExportConfig optional
 
data_config DataConfig optional
 
feature_configs FeatureConfig repeated
 
model_config ModelConfig optional
 

tzrec/protos/sampler.proto

Top


      
        

HardNegativeSampler

Weighted Random Sampling ItemID not in Batch and Sampling Hard Edge
FieldTypeLabelDescription
user_input_path string required
user data path
schema => userid:int64 | weight:float 
item_input_path string required
item data path
schema => itemid:int64 | weight:float | attrs:string 
hard_neg_edge_input_path string required
hard negative edge path
schema => userid:int64 | itemid:int64 | weight:float 
num_sample uint32 required
number of negative sample 
num_hard_sample uint32 required
max number of hard negative sample 
attr_fields string repeated
field names of attrs in train data or eval data 
item_id_field string required
field name of item_id in train data or eval data 
user_id_field string required
field name of user_id in train data or eval data 
attr_delimiter string optional
attribute delimiter of attrs string Default: :
num_eval_sample uint32 optional
number of negative samples for evaluator Default: 0
field_delimiter string optional
only works on local 

HardNegativeSamplerV2

Weighted Random Sampling ItemID not with Edge and Sampling Hard Edge
FieldTypeLabelDescription
user_input_path string required
user data path
schema => userid:int64 | weight:float 
item_input_path string required
item data path
schema => itemid:int64 | weight:float | attrs:string 
pos_edge_input_path string required
positive edge path
schema => userid:int64 | itemid:int64 | weight:float 
hard_neg_edge_input_path string required
hard negative edge path
schema => userid:int64 | itemid:int64 | weight:float 
num_sample uint32 required
number of negative sample 
num_hard_sample uint32 required
max number of hard negative sample 
attr_fields string repeated
field names of attrs in train data or eval data 
item_id_field string required
field name of item_id in train data or eval data 
user_id_field string required
field name of user_id in train data or eval data 
attr_delimiter string optional
attribute delimiter of attrs string Default: :
num_eval_sample uint32 optional
number of negative samples for evaluator Default: 0
field_delimiter string optional
field delimiter of input data 

NegativeSampler

Weighted Random Sampling ItemID not in Batch
FieldTypeLabelDescription
input_path string required
sample data path
schema => id:int64 | weight:float | attrs:string 
num_sample uint32 required
number of negative sample 
attr_fields string repeated
field names of attrs in train data or eval data 
item_id_field string required
field name of item_id in train data or eval data 
attr_delimiter string optional
attribute delimiter of attrs string Default: :
num_eval_sample uint32 optional
number of negative samples for evaluator Default: 0
field_delimiter string optional
field delimiter of input data 
item_id_delim string optional
item id delimiter Default: ;

NegativeSamplerV2

Weighted Random Sampling ItemID not with Edge
FieldTypeLabelDescription
user_input_path string required
user data path
schema => userid:int64 | weight:float 
item_input_path string required
item data path
schema => itemid:int64 | weight:float | attrs:string 
pos_edge_input_path string required
positive edge path
schema => userid:int64 | itemid:int64 | weight:float 
num_sample uint32 required
number of negative sample 
attr_fields string repeated
field names of attrs in train data or eval data 
item_id_field string required
field name of item_id in train data or eval data 
user_id_field string required
field name of user_id in train data or eval data 
attr_delimiter string optional
attribute delimiter of attrs string Default: :
num_eval_sample uint32 optional
number of negative samples for evaluator Default: 0
field_delimiter string optional
field delimiter of input data 

TDMSampler



        
          
FieldTypeLabelDescription
item_input_path string required
schema => itemid:int64 | weight:float | attrs:string 
edge_input_path string required
scheme => src_id:int64 | dst_id:int64 | weight:float
edge for train. 
predict_edge_input_path string required
scheme => src_id:int64 | dst_id:int64 | weight:float
edge for retrieval beam search. 
attr_fields string repeated
field names of attrs in train data or eval data 
item_id_field string required
field name of item_id in train data or eval data 
layer_num_sample uint32 repeated
the number of negative samples per layer 
attr_delimiter string optional
attribute delimiter of attrs string Default: :
num_eval_sample uint32 optional
number of negative samples for evaluator Default: 0
field_delimiter string optional
field delimiter of input data 
remain_ratio float optional
The training process only trains a randomly selected
proportion of nodes in the middle layers of the tree Default: 1
probability_type string optional
The type of probability for selecting and retaining
each layer in the middle layers of the tree Default: UNIFORM

tzrec/protos/seq_encoder.proto

Top


      
        

DINEncoder



        
          
FieldTypeLabelDescription
name string optional
seq encoder name 
input string required
sequence feature name 
attn_mlp MLP required
mlp config for target attention score 
max_seq_length int32 optional
maximum sequence length Default: 0

MultiWindowDINEncoder



        
          
FieldTypeLabelDescription
name string optional
seq encoder name 
input string required
sequence feature name 
attn_mlp MLP required
time windows len 
windows_len uint32 repeated
mlp config for target attention score 

PoolingEncoder



        
          
FieldTypeLabelDescription
name string optional
seq encoder name 
input string required
sequence feature name 
pooling_type string optional
pooling type, sum or mean Default: mean
max_seq_length int32 optional
maximum sequence length Default: 0

SelfAttentionEncoder



        
          
FieldTypeLabelDescription
name string optional
seq encoder name 
input string required
sequence feature name 
multihead_attn_dim int32 optional
multihead_attn_dim must be divisible by num_heads Default: 512
num_heads int32 optional
self attention num heads Default: 8
dropout float optional
dropout for attn_output_weights Default: 0
max_seq_length int32 optional
maximum sequence length Default: 0

SeqEncoderConfig



        
          
FieldTypeLabelDescription
din_encoder DINEncoder optional
 
simple_attention SimpleAttention optional
 
pooling_encoder PoolingEncoder optional
 
multi_window_din_encoder MultiWindowDINEncoder optional
 
self_attention_encoder SelfAttentionEncoder optional
 

SimpleAttention



        
          
FieldTypeLabelDescription
name string optional
seq encoder name 
input string required
sequence feature name 
max_seq_length int32 optional
maximum sequence length Default: 0

tzrec/protos/simi.proto

Top


      

      
        

Similarity


        
NameNumberDescription
COSINE 0
INNER_PRODUCT 1
EUCLID 2

tzrec/protos/tower.proto

Top


      
        

BayesTaskTower



        
          
FieldTypeLabelDescription
tower_name string required
task name for the task tower 
label_name string optional
label for the task, default is label_fields by order 
metrics MetricConfig repeated
metrics for the task 
train_metrics TrainMetricConfig repeated
log train merics for task 
losses LossConfig repeated
loss for the task 
num_class uint32 optional
num_class for multi-class classification loss Default: 1
mlp MLP optional
task specific mlp 
weight float optional
training loss weights Default: 1
relation_tower_names string repeated
related tower names 
relation_mlp MLP optional
relation mlp 
sample_weight_name string optional
sample weight for the task 
task_space_indicator_label string optional
label name for indicating the sample space for the task tower 
in_task_space_weight float optional
the loss weight for sample in the task space Default: 1
out_task_space_weight float optional
the loss weight for sample out the task space Default: 1
pareto_min_loss_weight float optional
use pareto front minimal loss weight, ge 0 and lt 1 Default: 0

DATTower



        
          
FieldTypeLabelDescription
input string required
input feature group name 
augment_input string required
augmented feature group name 
mlp MLP required
mlp config 

DINTower



        
          
FieldTypeLabelDescription
input string required
input feature group name 
attn_mlp MLP required
mlp config for target attention score 

FusionMTLTower



        
          
FieldTypeLabelDescription
mlp MLP optional
task tower mlp 
task_configs FusionSubTaskConfig repeated
sub task configs 

FusionSubTaskConfig



        
          
FieldTypeLabelDescription
task_name string required
task name for the task 
label_name string required
label for the task 
task_bitmask uint64 optional
bitmask for get actual label for binary classification task 
losses LossConfig repeated
loss for the task 
num_class uint32 optional
support multi-class classification loss Default: 1
metrics MetricConfig repeated
metrics for the task 
weight float optional
training loss weight for the task Default: 1
train_metrics TrainMetricConfig repeated
log train merics for task 

HSTUUserTower



        
          
FieldTypeLabelDescription
input string required
input feature group name (uih group) 
hstu HSTU required
HSTU config (STU, positional_encoder, input_preprocessor, output_postprocessor) 
max_seq_len uint32 required
max sequence length 

InterventionTaskTower



        
          
FieldTypeLabelDescription
tower_name string required
task name for the task tower 
label_name string optional
label for the task, default is label_fields by order 
metrics MetricConfig repeated
metrics for the task 
train_metrics TrainMetricConfig repeated
log train merics for task 
losses LossConfig repeated
loss for the task 
num_class uint32 optional
num_class for multi-class classification loss Default: 1
mlp MLP optional
task specific mlp 
weight float optional
training loss weights Default: 1
intervention_tower_names string repeated
intervention tower names 
low_rank_dim uint32 required
low_rank_dim 
dropout_ratio float optional
dropout_ratio Default: 0.1
task_space_indicator_label string optional
label name for indicating the sample space for the task tower 
in_task_space_weight float optional
the loss weight for sample in the task space Default: 1
out_task_space_weight float optional
the loss weight for sample out the task space Default: 1
pareto_min_loss_weight float optional
use pareto front minimal loss weight, ge 0 and lt 1 Default: 0

MINDUserTower



        
          
FieldTypeLabelDescription
input string required
user feature group name 
history_input string required
user history group name 
user_mlp MLP required
 
hist_seq_mlp MLP optional
 
user_seq_combine MINDUserTower.UserSeqCombineMethod optional
 Default: SUM
capsule_config B2ICapsule required
capsule config 
concat_mlp MLP required
concat mlp config for user interests vector 

MultiWindowDINTower



        
          
FieldTypeLabelDescription
windows_len uint32 repeated
time windows len 
attn_mlp MLP required
mlp config for target attention score 

TaskTower



        
          
FieldTypeLabelDescription
tower_name string required
task name for the task tower 
label_name string required
label for the task 
metrics MetricConfig repeated
metrics for the task 
train_metrics TrainMetricConfig repeated
log train merics for task 
losses LossConfig repeated
loss for the task 
num_class uint32 optional
num_class for multi-class classification loss Default: 1
mlp MLP optional
task specific mlp 
weight float optional
training loss weights Default: 1
sample_weight_name string optional
sample weight for the task 
task_space_indicator_label string optional
label name for indicating the sample space for the task tower 
in_task_space_weight float optional
the loss weight for sample in the task space Default: 1
out_task_space_weight float optional
the loss weight for sample out the task space Default: 1
pareto_min_loss_weight float optional
use pareto front minimal loss weight, ge 0 and lt 1 Default: 0

Tower



        
          
FieldTypeLabelDescription
input string required
input feature group name 
mlp MLP optional
mlp config (optional; when unset the tower applies no projection) 

MINDUserTower.UserSeqCombineMethod


        
NameNumberDescription
CONCAT 0
SUM 1

tzrec/protos/train.proto

Top


      
        

GradClipping



        
          
FieldTypeLabelDescription
clipping_type string optional
Clipping type: "norm", "value", or "none" Default: none
max_gradient float optional
Max gradient value/norm threshold Default: 1
norm_type float optional
Norm type for gradient norm clipping (2.0 for L2, inf for max) Default: 2
enable_global_grad_clip bool optional
Enable global gradient clipping for distributed training Default: false

GradScaler



        
          
FieldTypeLabelDescription
init_scale float optional
Initial scale factor Default: 65536
growth_factor float optional
Factor by which the scale is multiplied during update
if no inf/NaN gradients occur for ``growth_interval`` consecutive iterations. Default: 2
backoff_factor float optional
Factor by which the scale is multiplied during update
if inf/NaN gradients occur in an iteration. Default: 0.5
growth_interval uint32 optional
Number of consecutive iterations without inf/NaN gradients
that must occur for the scale to be multiplied by ``growth_factor``. Default: 2000

TrainConfig



        
          
FieldTypeLabelDescription
sparse_optimizer SparseOptimizer required
embedding part optimizer 
dense_optimizer DenseOptimizer required
dense part optimizer 
num_steps uint32 optional
number of steps to train models 
num_epochs uint32 optional
number of epochs to train models 
save_checkpoints_steps uint32 optional
step interval for saving checkpoint Default: 1000
fine_tune_checkpoint string optional
checkpoint to restore parameters from 
fine_tune_ckpt_param_map string optional
checkpoint to restore parameters mapping, each line is {param name in current model}\\t{param name in old ckpt} 
log_step_count_steps uint32 optional
the frequency the loss and lr will be logged during training Default: 100
is_profiling bool optional
profiling or not Default: false
use_tensorboard bool optional
use tensorboard or not. Default: true
save_checkpoints_epochs uint32 optional
epoch interval for saving checkpoint 
tensorboard_summaries string repeated
the summaries to be saved in tensorboard, activated only when use_tensorboard=true,
possible values are: "loss", "learning_rate", "parameter", "global_gradient_norm", "gradient_norm", "gradient"
default values are ["loss", "learning_rate"] 
cudnn_allow_tf32 bool optional
where to use torch.backends.cudnn.allow_tf32 Default: true
cuda_matmul_allow_tf32 bool optional
where to use torch.backends.cuda.matmul.allow_tf32 Default: false
global_embedding_constraints ParameterConstraints optional
global embedding param constraints 
mixed_precision string optional
mixed precision dtype. 
grad_scaler GradScaler optional
grad_scaler dynamically estimates the scale factor each iteration. 
gradient_accumulation_steps uint32 optional
gradient accumulation steps 
grad_clipping GradClipping optional
dense gradient clipping config 
keep_checkpoint_max uint32 optional
maximum number of recent checkpoints to keep; 0 keeps all.

TBD: qcomm config Default: 0

tzrec/protos/models/general_rank_model.proto

Top


      
        

RocketLaunching



        
          
FieldTypeLabelDescription
share_mlp MLP optional
 
booster_mlp MLP required
 
light_mlp MLP required
 
feature_based_distillation bool optional
 Default: false
feature_distillation_function Similarity optional
COSINE = 0; EUCLID = 1; Default: COSINE

tzrec/protos/models/match_model.proto

Top


      
        

DAT



        
          
FieldTypeLabelDescription
user_tower DATTower required
 
item_tower DATTower required
 
output_dim int32 required
user and item tower output dimension 
similarity Similarity optional
similarity method Default: INNER_PRODUCT
temperature float optional
similarity scaling factor Default: 1
in_batch_negative bool optional
use in batch items as negative items. Default: false
amm_i_weight float required
loss weight for amm_i Default: 0.5
amm_u_weight float required
loss weight for amm_u Default: 0.5

DSSM



        
          
FieldTypeLabelDescription
user_tower Tower required
 
item_tower Tower required
 
output_dim int32 required
user and item tower output dimension 
similarity Similarity optional
similarity method Default: INNER_PRODUCT
temperature float optional
similarity scaling factor Default: 1
in_batch_negative bool optional
use in batch items as negative items. Default: false

DSSMV2



        
          
FieldTypeLabelDescription
user_tower Tower required
 
item_tower Tower required
 
output_dim int32 required
user and item tower output dimension 
similarity Similarity optional
similarity method Default: INNER_PRODUCT
temperature float optional
similarity scaling factor Default: 1
in_batch_negative bool optional
use in batch items as negative items. Default: false

HSTUMatch



        
          
FieldTypeLabelDescription
user_tower HSTUUserTower required
 
item_tower Tower required
 
output_dim int32 optional
user and item tower output dimension; when 0 (default), no
output Linear is applied -- the caller must size the user
tower's STU output and the item tower's MLP output to match. Default: 0
similarity Similarity optional
similarity method Default: INNER_PRODUCT
temperature float optional
similarity scaling factor Default: 1
in_batch_negative bool optional
use in batch items as negative items. Default: false

MIND



        
          
FieldTypeLabelDescription
user_tower MINDUserTower required
 
item_tower Tower required
 
simi_pow float optional
 Default: 10
similarity Similarity optional
 Default: COSINE
in_batch_negative bool optional
 Default: false
temperature float optional
 Default: 1
output_dim int32 required
 

TDM



        
          
FieldTypeLabelDescription
multiwindow_din MultiWindowDINTower required
 
final MLP required
 

tzrec/protos/models/multi_task_rank.proto

Top


      
        

DBMTL



        
          
FieldTypeLabelDescription
mask_net MaskNetModule optional
shared bottom MaskNet module 
bottom_mlp MLP optional
shared bottom mlp layer 
expert_mlp MLP optional
mmoe expert mlp layer definition 
gate_mlp MLP optional
mmoe gate module definition 
num_expert uint32 optional
number of mmoe experts Default: 3
task_towers BayesTaskTower repeated
bayes task tower 

DC2VR



        
          
FieldTypeLabelDescription
bottom_mlp MLP optional
shared bottom mlp layer 
expert_mlp MLP optional
mmoe expert mlp layer definition 
gate_mlp MLP optional
mmoe gate module definition 
num_expert uint32 optional
number of mmoe experts Default: 3
task_towers InterventionTaskTower repeated
task tower 

DlrmHSTU



        
          
FieldTypeLabelDescription
hstu HSTU required
hstu config 
fusion_mtl_tower FusionMTLTower required
multi task tower config 
max_seq_len uint32 required
max sequence length 
item_embedding_hidden_dim uint32 optional
item embedding mlp hidden dimension Default: 512
enable_global_average_loss bool optional
enables loss averaging computation globally across all ranks (total rank)
instead of locally (local rank). Default: true
sequence_timestamp_is_ascending bool optional
timestamp of sequence is ascending or descending Default: true
concat_contextual_features bool optional
concat all contextual features on channel dim as one token Default: false

MMoE



        
          
FieldTypeLabelDescription
expert_mlp MLP required
mmoe expert module definition 
gate_mlp MLP optional
mmoe gate module definition 
num_expert uint32 required
number of mmoe experts Default: 3
task_towers TaskTower repeated
task tower 

PEPNet



        
          
FieldTypeLabelDescription
epnet_hidden_unit uint32 optional
epnet hidden units 
epnet_gamma float optional
activation function for epnet Default: 2
ppnet_hidden_units uint32 repeated
ppnet hidden units 
ppnet_activation string optional
activation function for ppnet Default: nn.ReLU
ppnet_dropout_ratio float repeated
ratio of dropout 
ppnet_gamma float optional
 Default: 2
domain_input_name string optional
domain feature name, must is num bucket 
task_domain_num uint32 optional
domain number for each task Default: 1
task_towers TaskTower repeated
task tower 

PLE



        
          
FieldTypeLabelDescription
extraction_networks ExtractionNetwork repeated
extraction network 
task_towers TaskTower repeated
task tower 

SimpleMultiTask



        
          
FieldTypeLabelDescription
task_towers TaskTower repeated
 

UltraHSTU



        
          
FieldTypeLabelDescription
hstu HSTU repeated
Mixture of Transducers: one HSTU per channel; per-candidate
outputs are concatenated on the embedding dim.  >= 2 entries
requires every entry to set a unique non-empty `name` plus the
matching `<name>` / `<name>_action` / `<name>_watchtime` /
`<name>_timestamp` feature_groups.  Candidate-side and
contextual groups are shared across all channels. 
fusion_mtl_tower FusionMTLTower required
multi task tower config 
max_seq_len uint32 required
max sequence length 
item_embedding_hidden_dim uint32 optional
item embedding mlp hidden dimension Default: 512
enable_global_average_loss bool optional
enables loss averaging computation globally across all ranks (total rank)
instead of locally (local rank). Default: true
sequence_timestamp_is_ascending bool optional
timestamp of sequence is ascending or descending Default: true
concat_contextual_features bool optional
concat all contextual features on channel dim as one token Default: false

tzrec/protos/models/rank_model.proto

Top


      
        

DCNV1



        
          
FieldTypeLabelDescription
cross Cross required
 
deep MLP required
 
final MLP required
 

DCNV2



        
          
FieldTypeLabelDescription
backbone MLP optional
 
cross CrossV2 required
 
deep MLP optional
 
final MLP required
 

DLRM



        
          
FieldTypeLabelDescription
dense_mlp MLP optional
if has dense feature group,must has dense_mlp 
arch_with_sparse bool optional
whether to include sparse features after interaction Default: true
final MLP required
 

DeepFM



        
          
FieldTypeLabelDescription
deep MLP required
 
final MLP optional
 
wide_embedding_dim uint32 optional
 Default: 4
wide_init_fn string optional
wide embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 

MaskNet



        
          
FieldTypeLabelDescription
mask_net_module MaskNetModule required
 

MultiTower



        
          
FieldTypeLabelDescription
towers Tower repeated
 
final MLP required
 

MultiTowerDIN



        
          
FieldTypeLabelDescription
towers Tower repeated
 
din_towers DINTower repeated
 
final MLP required
 

WideAndDeep



        
          
FieldTypeLabelDescription
deep MLP required
 
final MLP optional
 
wide_embedding_dim uint32 optional
 Default: 4
wide_init_fn string optional
wide embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 

WuKong



        
          
FieldTypeLabelDescription
dense_mlp MLP optional
 
wukong_layers WuKongLayer repeated
 
final MLP required
 

xDeepFM



        
          
FieldTypeLabelDescription
cin CIN required
 
deep MLP required
 
final MLP required
 
wide_embedding_dim uint32 optional
 Default: 16
wide_init_fn string optional
wide embedding init function, e.g. "nn.init.uniform_,a=-0.01,b=0.01" 

Scalar Value Types

.proto TypeNotesC++JavaPythonGoC#PHPRuby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)