Skip to content

feat: add semantic TIGER recommendation module#311

Open
succSeeded wants to merge 7 commits into
MTSWebServices:mainfrom
succSeeded:feat/tiger-model
Open

feat: add semantic TIGER recommendation module#311
succSeeded wants to merge 7 commits into
MTSWebServices:mainfrom
succSeeded:feat/tiger-model

Conversation

@succSeeded
Copy link
Copy Markdown

@succSeeded succSeeded commented Jun 5, 2026

Description

This PR adds a new rectools.semantic module that introduces semantic and generative recommendation tooling to RecTools.

  • rectools.semantic.data_handling provides dataset preparation utilities for TIGER workflows, including sequence building, padding, iterative k-core filtering, and leave-one-out splitting.
  • rectools.semantic.tokenizer provides semantic ID tokenization based on item embeddings, including tokenizer training, embedding datasets, quantizer abstractions, and RK-Means and RQ-VAE implementations.
  • rectools.semantic.modules provides reusable neural network building blocks used by the semantic stack, including transformer layers, relative position bias, normalization layers, and MLP components.
  • rectools.semantic.metrics provides ranking and recommendation diversity metrics used for semantic model evaluation.
  • rectools.semantic.tiger provides the TIGER recommender itself, including the core network, training wrapper, loss computation, and high-level model interface.
  • rectools.semantic.config_options defines typed configuration options for optimizers, quantizers, and learning-rate schedules used across the module.

Motivation

The module was implemented to bring semantic, neural recommendation workflows into RecTools in a reusable way. Rather than adding a standalone model only, this change introduces the surrounding infrastructure needed to prepare data, train the model, evaluate its outputs, and experiment with the approach inside the existing library.

Along with the TIGER implementation itself, the module includes shared semantic components, tokenization utilities, metrics, and example materials so the new functionality is easier to understand, test, and extend.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Optimization

How Has This Been Tested?

New tests were added to cover the introduced semantic module and its core components. The added coverage includes data handling utilities, tokenizer functionality, semantic metrics, reusable neural modules, and TIGER-specific logic to help verify that the new module integrates correctly with the existing codebase.

@succSeeded succSeeded marked this pull request as draft June 5, 2026 12:42
@succSeeded succSeeded marked this pull request as ready for review June 5, 2026 13:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant