Skip to content

0.19.0

Latest

Choose a tag to compare

@TOPAPEC TOPAPEC released this 12 Jun 13:09
· 1 commit to main since this release
c3f8195

✨ Highlights ✨

New lightweight module interface suited for training on largescale datasets with minimal overhead in terms of speed and memory consumption.

Added

  • rectools.fast_transformers module — standalone transformer-based sequential recommenders that work directly with torch tensors, bypassing the Dataset/pandas pipeline. GPU-native sequence building via build_sequences() gives ~30x preprocessing speedup over SASRecDataPreparator on ML-20M (#306)
  • FlatSASRecNet network — flat SASRec implementation without the ItemNet hierarchy. Pre-norm transformer encoder with id-embeddings, causal masking, softmax and BCE losses (#306)
  • UniSRecNet network and UniSRecModel — sequential recommender with pretrained text embeddings (e.g. Qwen) and a learnable PCA/BN adaptor. Joint training of adaptor + transformer on pretrained embeddings. Configurable losses (softmax, BCE, gBCE, sampled_softmax), optimizers (Adam, AdamW), cosine warmup scheduler, early stopping, checkpoint save/load. UniSRecModel.fit() accepts raw (user_ids, item_ids, timestamps) tensors (#306)
  • align_embeddings() for mapping pretrained embedding matrices to internal item ID order (#306)
  • SequenceBatchDataset — lightweight torch Dataset wrapper for sequence training data (#306)
  • Configurable FFN blocks in UniSRecNet: conv1d (original paper), linear_gelu, linear_relu with adjustable expansion factor (#306)

All contributors

@TOPAPEC @feldlime