Skip to content

Releases: alibaba/TorchEasyRec

v0.9.0

16 Sep 08:24
1c18866

Choose a tag to compare

Major Features and Improvements

Train/Eval/Export

  • Support get null value for int/float dtype features when use negative sampler #202
  • Support freeze embedding parameters #206
  • Add mixed_precision bf16/fp16 and gradient accumulation support #220
  • Add fp16 embedding dtype support #221
  • Add TrainPipelineBase to support model w/o sparse parameters #222
  • Add EmbeddingCollection quant support #265
  • Optimize sequence emb inference speed #266

Model

  • Add DlrmHSTU model #224 #227 #231 #232 #237 #250 #257
  • Add DCN_V1 model #235
  • Add DCN_V2 and xDeepFM model #242
  • Add WideAndDeep model and wide init_fn #212
  • Add sequence self_attention encoder #251
  • Add binary focal loss #208
  • Add xauc and grouped xauc #252
  • Add feature selection for DSSM_V2 #219
  • Add use_ln option for MLP module #223

Feature

  • Add const input for feature #210
  • Expr feature support value_dim #216
  • Support feature only used as fg dag intermediate result (stub_type=true) #218

Dataset

  • Sampler support odps schema #267

Upgrade

  • Upgrade pytorch to v2.8 and torchrec to v1.3.0 #241

Python

Note

For TorchEasyRec 0.9.x, you should use Docker image version 0.9.

  • For the GPU version (CUDA 12.6):
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.9-cu126
    • PyTorch: v2.8 CUDA: v12.6 FBGEMM: v1.3.0 TorchRec: v1.3.0 Python: v3.11
    • We drop support for the 470 GPU driver version. If you still want to use the 470 GPU driver version, you can set LD_LIBRARY_PATH=/usr/local/cuda-12.6/compat
  • For the CPU version:
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.9-cpu
    • PyTorch: v2.8 FBGEMM: v1.3.0 TorchRec: v1.3.0 Python: v3.11

Bug Fixes and Other Changes

Full Changelog: v0.8.0...v0.9.0

v0.8.0

13 Jun 13:05
b1824f7

Choose a tag to compare

Major Features and Improvements

Train/Eval/Export

  • Support eval and save checkpoint by epoch #116
  • Support export fp32/fp16/int8/int4/int2 ebc embedding quant model #137
  • Enhance export efficiency by restoring state dict directly instead of copying and gathering #177
  • Add faiss gpu support for evaluation #170
  • Enhance optimizer state loading for changed plans with plan checkpoint #185
  • Support tensorboard log for model parameters #181
  • Add restore ckpt check for continue train #180
  • Add allow_tf32 flag and global embedding param constraint #188

Model

  • Add MIND model #119 #123 #157 #172
  • Add RocketLaunching model #129
  • Add DLRM model #148
  • Add MaskNet #179 #187
  • Add dice activation and support bn for sequence mlp #107
  • Add regression and multi-classification metric #149
  • Optimize distributed GAUC memory use #127
  • Add SequenceEmbeddingGroup and support jagged forward #152
  • Support max sequence length setting for sequence encoder #184
  • Support hard negative sampler #195
  • Optimize HSTU training and sampling process and add triton ops (WIP) #93 #154

Feature

  • Support custom feature and custom sequence feature #144
  • Weighted id feature support map dtype #190
  • Dump parsed inputs support weighted id and multi-value sequence feature #191

Dataset

  • Support dataset shuffle #114
  • Optimize performance of ParquetDataset and Rebalance parquet files dynamically #125 #126
  • Add odps read session refresh to extend odps session expired time #132
  • Add more alibaba cloud credentials for odps dataset #115
  • Add odps_data_compression (ZSTD) config for OdpsDataset #146
  • Always lazy init odps writer #178

Upgrade

  • Upgrade pytorch to v2.7 and torchrec to v1.2.0 #197

Note

For TorchEasyRec 0.8.x, you should use Docker image version 0.8.

  • For the GPU version (CUDA 12.6):
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.8-cu126
    • PyTorch: v2.7 CUDA: v12.6 FBGEMM: v1.2.0 TorchRec: v1.2.0 Python: v3.11
    • We drop support for the 470 GPU driver version. If you still want to use the 470 GPU driver version, you can set LD_LIBRARY_PATH=/usr/local/cuda-12.6/compat
  • For the CPU version:
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.8-cpu
    • PyTorch: v2.7 FBGEMM: v1.2.0 TorchRec: v1.2.0 Python: v3.11

Bug Fixes and Other Changes

Read more

v0.7.0

10 Feb 07:54
a5dc775

Choose a tag to compare

Major Features and Improvements

Train/Eval/Export

Model

  • Optimize TDM gen tree speed #33
  • TDM Support string id #72
  • Rank and Match models support sample weight #50 #57 #63 #65
  • Add zero collision hash embedding #60
  • Add intervention methods for multi-target learning #49
  • Add Autodis and MLP embedding for raw features #73 #75
  • Add task space for multi-target learning loss #82
  • Add dual augmented two-tower match model #83
  • Add HSTU (WIP) #55

Feature

  • pyfg support CPU without avx512 #20
  • ExprFeature support l2_norm|dot|euclid_dist #35
  • Add fg bucketize only mode & refactor fg_encoded to fg_mode #62
  • Make default bucketize value configurable #94
  • Support multi-value sequence #96
  • Support vocab file #97

Dataset

  • Enhance stability for credential of OdpsDataset #45
  • Add complex type and credential support for sampler when use odps dataset #52
  • Support CsvDataset with null columns #56
  • Negative sampler support string id #70

Config

  • Support easyrec config convert to tzrec config #37 #39 #51 #90

Upgrade

  • Release official dlc image #26
  • Upgrade pytorch to v2.6 torchrec to v1.1.0 #99

Note

For TorchEasyRec 0.7.x, you should use Docker image version 0.7.

  • For the GPU version (CUDA 12.4):
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.7-cu124
    • PyTorch: v2.6 CUDA: v12.4 FBGEMM: v1.1.0 TorchRec: v1.1.0 Python: v3.11
  • For the CPU version:
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.7-cpu
    • PyTorch: v2.6 FBGEMM: v1.1.0 TorchRec: v1.1.0 Python: v3.11

Bug Fixes and Other Changes

New Contributors

Full Changelog: v0.6.0...v0.7.0

v0.6.0

30 Oct 03:10
0d34ca6

Choose a tag to compare

We are excited to announce the release of TorchEasyRec 0.6.0, the first public release for TorchEasyRec.

Major Features and Improvements

  • High-performance training, evaluation, and prediction with GPUs.
  • Supported a variety of input data types, including MaxCompute Table, OSS files, CSV files, Parquet files doc here.
  • Supported a variety of feature types, including IdFeature, RawFeature, ComboFeature, LookupFeature, MatchFeature, ExprFeature, OverlapFeature, TokenizeFeature, SequenceIdFeature, SequenceRawFeature, and SequenceFeature. The feature generation operations is also efficient and robust doc here.
  • Supported a variety of models, including DSSM, TDM, DeepFM, MultiTower, DIN, MMoE, DBMTL, PLE. It is also easy to implement customized models.
  • Supported a variety of loss, including binary_cross_entropy, softmax_cross_entropy, l2_loss, jrc_loss doc here.
  • Supported VariationalDropout feature selection.
  • Easy to deploy a TorchEasyRec model as a high-performance inference service using the TorchEasyRec Processor.

Bug Fixes and Other Changes

  • [bugfix] fix train_eval may hang when use OdpsDataset and set is_orderby_partition=true by @tiankongdeguiji in
  • [bugfix] fix offline predict input tile model with sequence by @tiankongdeguiji in #14

Note

For TorchEasyRec 0.6.x, you should use Docker image version 0.6.

  • For the GPU version (CUDA 12.1):
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.6-cu121
  • For the CPU version:
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:0.6-cpu

New Contributors

Full Changelog: https://github.com/alibaba/TorchEasyRec/commits/v0.6.0