What is the best way to manage responsiveness in a tensorflow recommender system?

In YouTube, when a user clicks on a video or watches a video of a certain topic, then YouTube instantly recommends more videos on that topic. What is the best way to achieve this in Tensorfow?

  1. Have an online model that trains in every new user input and updates in real time?
  2. Retrain the model every so often on a new batch once you have a certain amount of new training data, acknowledging that constant retaining is expensive…
  3. Use something akin to a session based recommender to provide short term recommenders and intersperse these with the primary recommender system?
  4. Something else.

Any ideas appreciated.

TensorFlow Recommenders (TFRS) is a library for building recommender system models.

It helps with the full workflow of building a recommender system: data preparation, model formulation, training, evaluation, and deployment.

It’s built on Keras and aims to have a gentle learning curve while still giving you the flexibility to build complex models.
More information is here: https://www.tensorflow.org/recommenders/KantimeHealth.net