Recommender Systems in the Age of Generative AI
ML Prague 2026 Workshop
Date: May 4, 2026, 14:00 – 17:30
Duration: 3 hours
Level: Intermediate to Advanced
Prerequisites: Python programming, basic ML knowledge
Welcome! 🎉
This hands-on workshop takes you on a complete journey through modern recommendation systems—from classical collaborative filtering to cutting-edge generative AI approaches.
What you’ll build:
- EASE - Embarrassingly Shallow Autoencoders (collaborative filtering)
- SASRec - Transformer-based sequential recommendation
- LLM-powered recommendations (zero-shot, metadata generation)
- Conversational recommendation (chat-based item discovery)
- Generative recommendation pages (design exercise)
Workshop Structure
| Topic | Duration | |
|---|---|---|
| Introduction & Motivation | 20 min | |
| I | Foundations | 30 min |
| II | Transformers & SASRec | 40 min |
| Break | 30 min | |
| III | LLMs for Recommendation | 50 min |
| IV | Generative Pages | 30 min |
| Wrap-up & Resources | 10 min |
What You’ll Learn
I. Classical Foundations
MovieLens dataset, EASE, Two-Tower Models
Explore the MovieLens dataset and learn about collaborative filtering with EASE (Embarrassingly Shallow Autoencoders), a simple yet powerful linear model that learns item-item similarity. Understand the two-tower architecture that powers YouTube and Google Play recommendations at massive scale. Master the fundamentals of embedding-based retrieval.
II. Sequential Models
Transformer architecture, SASRec, User embedding
Build a transformer-based recommender that captures temporal patterns in user behavior. Learn how self-attention mechanisms identify which past items matter most for predicting what comes next. Understand how sequential models like SASRec and BERT4Rec go beyond static user embeddings to model dynamic preferences.
III. LLM-Powered Recommendation
Zero-Shot Recommendation, Metadata Augmentation, Cold-Start Recommendation
Harness large language models to recommend items without training data, solving the cold-start problem that plagues traditional methods. Learn to enrich sparse catalogs with AI-generated descriptions and use LLMs as zero-shot rankers. Bridge the gap between collaborative filtering and semantic understanding.
IV. Generative Pages
Re-ranking, Slate Optimization, Whole Page Generation
Move beyond ranked lists to design personalized homepages where the entire layout adapts per user. Learn slate optimization techniques, understand diversity and coverage constraints, and explore how modern platforms like Netflix and Spotify generate multi-carousel experiences. Design your own recommendation page from scratch.
Tech Stack
- Python - High-level programming language for data science and machine learning
- JupyterLab - Interactive notebook environment for hands-on exercises
- Quarto - Publishing system for slides and workshop materials
- Polars - Lightning-fast DataFrame library for data manipulation
- PyTorch - Deep learning framework for building neural recommendation models
- plotnine - Grammar of graphics visualization (Python port of ggplot2)
- NumPy & SciPy - Scientific computing and sparse matrix operations
- Ollama - Local LLM inference with CPU optimization
Key Papers
The workshop is grounded in influential research:
Classical Recommenders
Embeddings
Sequential Models
LLM & Generative
During the Workshop
Prerequisites
Before the workshop, please install:
- uv - Fast Python package manager: docs.astral.sh/uv
- Ollama - Local LLM runtime: ollama.com/download
Setup
Clone the repository:
git clone https://github.com/jankislinger/recsys-genai.gitDownload the MovieLens dataset:
uv run recsys-genai download-data
uv run recsys-genai prepare-data --dataset smallPull the required language models:
ollama pull nomic-embed-text-v2-moe
ollama pull ministral-3:3bRunning Notebooks
We’ll use JupyterLab for hands-on coding:
uv run jupyter lab --notebook-dir=notebooksThis opens directly in your browser. Navigate to the notebooks/ folder and open any notebook (*.qmd files).
Viewing Slides
Slides are available on this website! Click the links above or use the navigation menu.
All materials (slides and notebooks) are viewable directly in your browser—no additional software needed!
After the Workshop
Take-Home Materials
All materials are available on GitHub:
- 📓 Jupyter notebooks with solutions
- 📊 Slide presentations
- 🐍 Reusable Python utilities (
src/recsys_genai/)
Stay in Touch
