I've been looking at tensorflow samples for recommendations such as Recommending movies: retrieval.
This is the process to generate recommendations -
# Build approximate index
scann_index = tfrs.layers.factorized_top_k.ScaNN(model.user_model)
scann_index.index_from_dataset(
tf.data.Dataset.zip((movies.batch(100), movies.batch(100).map(model.movie_model)))
)
# Get recommendations
_, titles = scann_index(tf.constant(["42"]))
print(f"Recommendations for user 42: {titles[0, :3]}")
This will recommend movies from the list of known movies in the index. If new movies (or videos) are getting released every second, how do I update this index so fast? Transfer learn with new data every 5 minutes? Can I supply the list of new movies/videos along with the query (which is the user the recommendations are for) as input? What are the options to include new data before creating a new model in a batch process overnight?