37 slides · speaker notes · the deck · present it
ISD 2026 Keynote
⏱ 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
About my work
⏱ 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.
How information retrieval evolved over time?
⏱ 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.
Three interfaces, one ranking problem
⏱ 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?
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).
Learning to rank added a learned ordering layer
⏱ 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.
The model is only half of learning to rank
⏱ 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.
Transformers in search
⏱ 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.
Search became a personalized retrieval problem
⏱ 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.
A query is now a hypothesis about intent
⏱ 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.
LLM inference is constrained by memory and scheduling
⏱ 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.
Structure can beat parameter count on the right task
⏱ 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
Recommenders learn what matters to each user
⏱ 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.
User-based collaborative filtering: borrow votes from similar users
⏱ 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.
Demo time: recommendations meet semantic search
⏱ 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.
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?
LLM as a recommender: A language model is not a catalogue
⏱ 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.
Demo time: LLM interprets, recommender suggests, LLM answers
⏱ 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.
Unfold the vector: sparse autoencoders make a profile legible
⏱ 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)
Say it: a sentence becomes a direction in that space
⏱ 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.
What a query costs at a hundred million users
⏱ 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.
Compute versus value
⏱ 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.
Four serving levers
⏱ 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.
Linear models are not dead
⏱ 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.
beeFormer: interaction data inside the text encoder
⏱ 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.
Our REEF protocol, evaluation of recsys foundational models
⏱ 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)
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.
Convergence merges vulnerabilities: SHIELD
⏱ 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.
Exposure and the feedback loop
⏱ 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.
Evaluation is alignment: judges need behavioural alignment too
⏱ 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.
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.
The fourth interface: the consumer of the ranking changes
⏱ 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.
Four threads, one question
⏱ 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.
Where this goes: controllable, evaluable, safe ... and perhaps agentic ...
⏱ 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.
Recombee research, 2022 → 2026: the papers behind this talk
⏱ 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.
Thank you
⏱ 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
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.