Keynote ISD 2026 Prague

37 slides · speaker notes · the deck · present it

Intro
001

ISD 2026 Keynote

Czech Technical University in PragueRecombee Faculty of Information Technology Company

⏱ 9:00 · ½ min — Say the title once and move on; the room is still settling. No introduction here.

The Great Convergence: Recommendation, Search, and Conversation in Real-World AI Systems

002

About my work

ACADEMIA INDUSTRY Ideas & methods Students & papers Products & users Datasets, AB tests JOINT RESEARCH Recombee Lab

⏱ 9:00:30 · 1 min — One line each: CTU, the research path, Recombee. The point is the two vantage points — academic evaluation and production at scale — not the CV.

This talk benefits from research at CTU supported by Recombee - see our publications at Recombee Research.

003

How information retrieval evolved over time?

KEYWORD MATCH terms and documents 1990s 2000s LEARNING TO RANK signals and feedback SEMANTIC SEARCH vectors and meaning 2010s 2026 GROUNDED ANSWERS retrieve, then generate

⏱ 9:01:30 · 1½ min — Four eras by what could be scored: match, rank, learn vectors, generate over evidence. Land on the two questions; the talk answers them. Skip the individual examples if behind.

004

Three interfaces, one ranking problem

open source vecor db 1 2 3 For you 1 2 3 latest documents to read? 1 2 3

⏱ 9:03 · 1½ min — Three interfaces, one decision: what comes first. Say that even the chat answer is a ranking with a sentence around it. If behind, skip the table.

The interface changes; the decision remains: what should come first?

005

History of Search, Recommender systems and Conversational AI

⏱ 9:04:30 · 1 min — Do not read the table. One sentence: four communities added four signals to the same operation, and embeddings later gave them one representation. Point at Salton as the hinge.

The cited sequence adds term statistics (1957–1975), links (1998–1999), user–item behavior (1994–2009), learned sequence context (2014–2017), and retrieval-grounded generation (2020).

SEARCH
006

Learning to rank added a learned ordering layer

Query Documents BM25 or TF-IDF Cosine similarity sparse vectors Learned ranker

⏱ 9:05:30 · 2 min — Two stages: a cheap filter that must not miss, a learned ranker that orders. Trace the two columns, then the last line: a reranker cannot rescue what the first stage dropped.

Pointwise linear regression learns feature weights; it cannot rerank documents omitted from the BM25 top-k set.

007

The model is only half of learning to rank

Training pairs q · gift for my wife D⁺Personalized necklace D⁻USB-C charging cable D⁺Luxury spa gift set D⁻Athletic socks D⁺Cashmere scarf D⁻Coffee filters Shared ranking model fw(q,d) 1.5 − 0.3 margin 1.2 0.9 − 0.6 margin 0.3 1.1 − 0.2 margin 0.9 Pairwise loss 0.263 0.554 0.341 mean 0.386 Update weights · w ← w − η∇L

⏱ 9:07:30 · 1½ min — Labels decide what the model can learn. Read the training-data column, not the formulas; mention that click labels carry position bias. If behind, skip the worked example.

One pair supervises 1 score difference between 2 documents; it does not identify absolute relevance probabilities.

008

Transformers in search

Ranking Transformer Query + document Full-attention encoder [CLS] Relevance ColBERT Query tokens Query encoder MaxSim Σ Document tokens Document encoder

⏱ 9:09 · 1½ min — Cross-encoder: accurate, unsearchable. ColBERT: encode documents in advance, compare tokens at query time. Say the pattern — precompute the catalogue, keep the per-request work small.

ColBERT retains token-level matching while moving document encoding out of the query path.

009

Search became a personalized retrieval problem

Interaction history User encoder Shared embedding space Search Recommendation query q u u + q items vᵢ

⏱ 9:10:30 · 1½ min — The convergence claim made concrete: one user vector, search adds a query term. Name Alipay and BLaIR as proof at two scales. Say it holds for logged-in product search, not the public web.

Search ranks for a query q; personalization adds neural similarity between user u and document d.

010

A query is now a hypothesis about intent

trail shoes for… wide feet wet rocks winter Context encoder intent · entity constraint BM25 ColBERT ranked docs grounded answer

⏱ 9:12 · 1½ min — A search box is a chain of predictions: what you meant, what matches, what to say. Keep hybrid retrieval in the picture — BM25 still catches exact terms. The last step opens the conversational part.

Search no longer matches a string; it predicts intent, retrieves evidence and composes an answer or ranked list of items.

011

LLM inference is constrained by memory and scheduling

Prompt batch Prefill parallel tokens Ready queue Iteration scheduler active sequences Model step one token / row GPU memory model weights paged KV cache

⏱ 9:13:30 · 1½ min — Arithmetic, not benchmarks: 140 GB of weights, 1.25 GiB of cache per long request, one sequential step per token. Name the four mitigations and their limits. If behind, say only the three numbers.

For Llama 2 70B in BF16, one 4,096-token request adds ≈1.25 GiB of KV cache on top of ≈140 GB of weights.

012

Structure can beat parameter count on the right task

Dense embedding Encoder Top-k Sparse code Sparse index FAST Sparse similarity Decoder Reconstructed NEAR EXACT Dense similarity

⏱ 9:15 · 1½ min — Structure over parameters on the right task: 0.6B beats 4B with the right encoder; sparse matches dense; CompresSAE gives 12× fewer parameters with a speed/exactness dial. Read the first and last row.

CompresSAE stores active coordinates and values instead of every dense coordinate; it reconstructs a dense vector when required. Kasalický et al., 2025

RecomMendation
013

Recommenders learn what matters to each user

Recent behavior Live context User encoder User vector Item vectors Vector search Candidates Ranker Top picks 1 2 3

⏱ 9:16:30 · 1½ min — Content says what an item is, behaviour what people do with it. Read the 'works when' column. Land on: recommendation is retrieval conditioned on a person.

Recommendation is retrieval conditioned on a person.

014

User-based collaborative filtering: borrow votes from similar users

1 YOU 2 similarity 0.92 0.81 0.24 3 weighted votes 4 4.6 2.1

⏱ 9:18 · 1½ min — Click through the four steps in the figure: matrix, neighbours, weighted votes, ranked item. Needs no item text; goes blind without history. If behind, skip the prediction formula.

People who agreed with you before become voters on what you may want next.

015

Demo time: recommendations meet semantic search

Profile A Profile B Recent signals animated movie for kids Catalogue vectors profile vector query vector Personalized order Semantic order

⏱ 9:19:30 · 2½ min — DEMO — 2½ minutes, no more. Switch one profile, add one interaction, type one descriptive query ('quiet European crime drama'). If behind, do the profile switch and the query only.

Notice that search and recommendation of item segments is also important here.

Conversational recommendation
016

You cannot edit your own vector in recommender systems

⏱ 9:22 · 1 min — Every control today acts around the model's picture of you, not on it. Ask the question and move on: can a sentence edit the vector directly?

Existing controls sit outside the learned user representation. The question: can a sentence edit that representation directly?

017

LLM as a recommender: A language model is not a catalogue

User request Language model Analyze request Generate result Generated item No catalogue ID

⏱ 9:23 · 2 min — Hallucination here means an item that does not exist. Walk the middle column briefly, then the fix: the model chooses words, the recommender owns the inventory. If behind, go straight to the solution column.

Let the model choose the words—not invent the inventory.

018

Demo time: LLM interprets, recommender suggests, LLM answers

“quiet · near metro” LLM · interpret quiet near metro preference update Recommender live catalogue ranked IDsmetadata LLM · answer ID 1842 ID 7710

⏱ 9:25 · 2½ min — DEMO — 2½ minutes. One conversational refinement, then ask for a film that does not exist and let the system decline. Say what it does not solve: intent parsing and explanations can still be wrong.

Demo

019

Unfold the vector: sparse autoencoders make a profile legible

Interactions CF encoder Dense embedding SAE encoder TopK code z + SAE decoder CF decoder Ranked items Text request Text mapper Δz

⏱ 9:27:30 · 1½ min — Sparse autoencoder unfolds the tangled user vector into a few named knobs; nothing is retrained. Say only the third bullet if behind. Credit Jarda Hradil's thesis.

MSc thesis of Jarda Hradil (2026)

020

Say it: a sentence becomes a direction in that space

interactions CF encoder dense user vector sparse autoencoder sparse code more sci-fi text embedding mapper direction decode

⏱ 9:29 · 2 min — A sentence becomes a direction in that space via search machinery — text embedder, InfoNCE, synthetic queries. Numbers: 24th → 3rd on MIND with ELSA; random request lowers the rank, so it is meaning, not mixing. State the limits: offline, exact-item probe, additive only.

IV · The Cost Constraint
021

What a query costs at a hundred million users

The budget nobody negotiatesINSIDE REQUEST BUDGETOUTSIDE REQUEST BUDGET100 ms budgetANN retrieval10⁶–10⁸ items · single-digit msRanking~100 candidates · tens of msLLM inferencehundreds of ms to seconds1 ms10 ms100 ms1 s10 sNetflix’s budget is stricter than typical LLM serving.Retrieval and ranking fit under 100 ms; LLM inference needs a separate serving path.

⏱ 9:31 · 1½ min — One line of arithmetic: 1.5 billion ranking calls a day; a language model on that path is $150k a day before caching; a dot product is microseconds. Cost per request is an objective, not an ops detail.

022

Compute versus value

And then a straight line appearedQuality · log scale1×10×100×1000×Training compute · log scaleDLRM saturatesGenerative recommenderNo observed break · GPT-3 / Llama-2 scalethree orders of magnitude

⏱ 9:32:30 · 1½ min — HSTU: three orders of magnitude of model complexity for 12.4%. OneRec: ten times the arithmetic, a tenth of the cost, because the cascade left the GPUs idle. Migration cost is not in either report.

In Kuaishou's accounting the saving came from using the hardware, not from a smarter model — and the migration cost is not in the report.

023

Four serving levers

The efficiency papers wearing modelling clothes SYSTEM SERVING TRICK MEASURED EFFECT PinFM deduplicated cross-attention (DCAT) +600% throughput UniPinRec KV-cache reuse + FP8 + flex attention 3.92× faster ranking forward pass GEMs multi-stream decoder −70% latency YouTube quantisation + distillation ~20% faster inference PinFM's +600% throughput came from an attention trick omitted from the abstract.

⏱ 9:34 · 1 min — The person's history is the expensive part of every request: cache it, share it between stages, never encode it twice. Read the first and last row; the rest is on the slide.

At scale a modelling win is realised only together with a serving win. Read the systems section of these papers first.

024

Linear models are not dead

From EASE’s quadratic matrix to ELSA’s factorsEASEstrongest simple baselineO(|I|²) dense item × item weights10⁶ items → 10¹² numbersfactorise hidden layerELSAlow-rank + sparse hidden layerO(|I| × d)thin factors: |I|×d and d×|I|item × item matrix never materialisedOutperforms EASE on several tasks · SANSA in production · VASP state of the art on MovieLens 20MFactorisation keeps EASE’s linear strength while making million-item systems shippable.

⏱ 9:35 · 1½ min — EASE is the strongest simple baseline and needs a 400 TB matrix; ELSA factorises it, scales linearly and is more accurate — ours, RecSys 2022, in production. Keep a strong linear baseline.

Keep a strong linear baseline, stupid.

Our Transformers and multimodal foundational models
025

beeFormer: interaction data inside the text encoder

beeFormer: Let Recommendation Loss Reach Text Sentence transformer text encoder Item vectors text + behaviour ELSA collaborative objective encodes items feeds vectors ELSA recommendation gradient updates the encoder Standard practice: encoder frozen recommender loss cannot teach the text model Cross-domain transfer train on books → recommend films Collaborative loss teaches the text encoder which meanings predict what users choose.

⏱ 9:36:30 · 1 min — beeFormer: let the recommendation loss flow into the text encoder, so it learns what people do, not just what things are called. Ours, RecSys 2024, open source.

ELSA stopped being only a model. It became a loss function you can use to train something else entirely.

026

Our REEF protocol, evaluation of recsys foundational models

Winning configuration so far: The frozen baseline leaves three distinct mismatches TUNING METHOD LoRA ✓ MECHANISM Low-rank Δ learns; backbone fixed Pretrained geometry is preserved FIXES FULL-TUNE FAILURE Full tuning can damage the pretrained geometry FUSION Interaction-conditioned attention ✓ MECHANISM αᵢ·text + (1−αᵢ)·image The weight is learned per item FIXES INDEPENDENT ENCODERS Text and image need not share one calibrated relevance scale OBJECTIVE ELSA reconstruction ✓ MECHANISM Embedding → item–item operator → reconstruct behavior FIXES SEMANTIC-ONLY GEOMETRY Collaborative relations align while semantic structure remains preserves adapts per item aligns behavior WINNING CONFIGURATION LoRA + per-item attention + ELSA reconstruction LoRA, adaptive fusion, and ELSA each repair a different frozen-baseline failure.

⏱ 9:37:30 · 1½ min — REEF: hold everything still, vary only the encoder. Read the table: frozen → fine-tuned, +16–29%, cold start +39% on Amazon; LoRA beats full fine-tuning; the winning objective is the 2022 linear loss. Say the negative result: transfer mostly failed. Credit Tomáš Laurin's thesis. Bridge: cheaper stack, more power per ranking decision — alignment next.

Master thesis of Tomáš Laurin (2026)

V · Alignment Engineering
027

Alignment is a table of measurable properties

⏱ 9:39 · 1 min — Alignment as five measurable properties, each with a metric and a component. Read the property column only; the next slides are the rows.

Every row is engineering: a number to move, a component that moves it.

028

Convergence merges vulnerabilities: SHIELD

Semantic retrieval walked around the keyword filterHARMFUL QUERYglass tubingKEYWORD FILTERblocked-word lookup0 matchesSEMANTIC RETRIEVERmatches intentharmful resultsEMBEDDING DEFENCEscreens the vectorcaughtno keyword hitharmful meaning matchAccuracy comparisonBM25 keyword93.2%semantic embeddings + FAISS96.5%MoralBERT98.4%Safety had to move to embeddings because meaning, not words, selected the results.

⏱ 9:40 · 1 min — Semantic search walked around the keyword filter — 'glass tubing'. SHIELD: generated queries, reward-model filter, classifier, 98.4%. Ours, UMAP 2025.

Merge the stacks and you merge the attack surface. The fix has to understand meaning as well as the search does.

029

Exposure and the feedback loop

The model learns only from what it showed Model Chooses what to show User reacts Interaction log Training scores candidates exposes items click / skip becomes data updates model CONSEQUENCES • Unobserved is not negative • Offline metrics inherit the bias • The loop self-reinforces ITEMS NEVER SHOWN item A item B item C no exposure, no feedback The model never sees feedback on what it did not show, and neither does your metric.

⏱ 9:41 · ½ min — The model learns only from what it showed; the loop amplifies popularity and hurts minority users most. Exposure is a resource — put a floor under it (ours, with a measured trade-off). Half a minute.

030

Evaluation is alignment: judges need behavioural alignment too

Both Evaluation Bridges Are Circular SYNTHETIC-USER BRIDGE MODEL-JUDGE BRIDGE Model Simulates user Generates interactions Evaluates model Model Judges output Optimise toward judge PRIORS RETURN PLAUSIBILITY RETURNS External reference: real users or ground truth — not consulted Literature note: sim-to-real gap papers already document this risk. Synthetic users inherit model priors; model judges reward what they already find plausible.

⏱ 9:41:30 · ½ min — A zero-shot LLM judge argues both ways on the same evidence; aligned to behaviour it matches the production model. Anything between offline and A/B must be calibrated against real outcomes. Half a minute.

A judge that can argue either way is not a judge. Align it to behaviour, then measure the correlation.

031

The rules outside the model

⏱ 9:42 · ½ min — DSA 27 and 38, AI Act 50 — the regulator's list is the engineering table from slide 27. No dates on the slide; drop this slide entirely if behind.

Regulation is arriving as a list of properties. The engineering table four slides ago is the same list.

VI · Future And Work
032

The fourth interface: the consumer of the ranking changes

Five protocols in nine months FIVE LAUNCHES · APR 2025 — JAN 2026 Mastercard Agent Pay Apr 2025 Google AP2 Sep 2025 OpenAI ACP Sep 2025 first merchant: Etsy Visa Trusted Agent Oct 2025 Google UCP Jan 2026 Instant Checkout retired Mar 2026 THE SETTLEMENT Discover in the chat search, rank, explain Transact on merchant site checkout and payment hands off intent Agentic commerce converged on chat discovery and merchant-site checkout.

⏱ 9:42:30 · ½ min — Agents are a new client of the same stack, not a new stack. Say the last row: structured catalogues are what agents can act on — Klímek's keynote from inside the product; constrained decoding is Mannaert's guard rail. Skip the protocol race if behind.

Search, recommendation, conversation — and now an agent asks the same question on the user's behalf.

033

Four threads, one question

Four Threads, One Question Sparsity & scale ELSA · SANSA CompresSAE · VASP Representation beeFormer Inductive Matrix Completion Conv4Rec · REEF Trustworthiness SHIELD Minimum Item Exposure Guarantees SAGEA · The Stars Align Evaluation Repsys offline-online bridging uncertainty estimation SHARED QUESTION How do we put large-model quality inside an ordinary budget? Every publication asks how to fit large-model quality into a budget someone will approve.

⏱ 9:43 · ½ min — The portfolio on the three axes — everything here was already used as evidence. End on the sentence: good enough within a budget somebody will approve is a different question, and the one more people have.

Frontier labs work on being better. We have spent ten years on being good enough within a budget somebody will approve. That is a different question — and it is the one more people have.

034

Where this goes: controllable, evaluable, safe ... and perhaps agentic ...

What’s next: conversational and agentic systems Current recommendation Conversational + agentic recommendation CONTROLLABLE Earlier work: constrained decoding + guard rails EVALUABLE Earlier work: REEF offline-to-online correlation SAFE Earlier work: SHIELD embedding-level safety

⏱ 9:43:30 · ½ min — Controllable, evaluable, safe: each already has a working component; the two theses are the first steps. One sentence on agent-to-agent marketplaces, then the publication timeline.

Recommender system and reasoning agents in agent2agent online marketplaces.

035

Recombee research, 2022 → 2026: the papers behind this talk

scale & sparsity representation trust & alignment evaluation & tools steering & agents 20222023202420252026 ELSA · RecSys RepSys · RecSys Explainable LSAE · UMAP Inductive MC · AAAI GNN completion · RecSys Offline→online · KDD ws beeFormer · RecSys Min. exposure · ESWA Regional CF · ACM TSAS Uncertainty MF · TNNLS CompresSAE · RecSys SAGEA · RecSys Next-basket · RecSys Uncertainty · RecSys LSAE at scale · ACM TORS Conv4Rec · TNNLS Search safety · UMAP Triplet multitask · ESWA News metrics · RecSys ws Email outreach · CIKM Stars Align · UMAP Text embeddings · UMAP Sparse learning · WWW Artist catalogs · UMAP Steerable CF · RecSys ws SAE adapters · RecSys 3 demos · RecSys Explanations · CIKM Entity matching · CIKM

⏱ 9:44 · 1 min — Twenty-nine peer-reviewed papers in five years, coloured by the threads of this talk. Point at the drift: green and purple early, red and blue lately. Name three venues, skip the individual pills — the commentary lists them all.

Peer-reviewed at RecSys, UMAP, WWW, KDD, AAAI, CIKM, and in ACM TORS, ACM TSAS, IEEE TNNLS, Expert Systems with Applications. Recent years turn from cost and representation toward genAI, foundational models, trust and steering.

036

Thank you

Czech Technical University in PragueRecombee Faculty of Information Technology Company

⏱ 9:45 · questions — 9:45. Leave this on the screen for questions. Research, open source, theses: the addresses are on the slide.

The Great Convergence — Pavel Kordík · ISD 2026 · Prague

037

What else I’m building or collaborating on ...

⏱ after questions — Only if asked or if time remains after questions: Slaidy (this deck was made in it), the book, the coaches. Otherwise leave it.

This keynote was prepared in Slaidy.