~/talk

Teaching Ruby to Rank: A Search Pipeline Story

Talkat RubyConf 2026 · 2026-07-14..07-16· [machine-learning, ruby]
name:Jon Rizzo
github:jondrizzo
slides:none on file

Fullscript builds a full Learning to Rank pipeline entirely in Ruby that takes click and impression logs, auto‑engineers BM25 and relative rank features, trains XGBoost models, and reranks OpenSearch hybrid retrieval candidates to improve ecommerce relevance. The system runs daily training and optimization, serves up to four engines (autocomplete, regional splits), shows clear NDCG gains, and drives negative search feedback nearly to zero. They use pure Ruby pipeline tooling and plan to release the code as a gem.

AI-written summary · about

  1. 0:00Teaching Ruby to rank
  2. 1:26Search pipeline at Full Script
  3. 3:38BM25 scoring in OpenSearch
  4. 5:22Static query boosting limits
  5. 6:03User feedback on search failures
  6. 7:07Measuring relevance with NDCG
  7. 10:49Learning to rank in Ruby
  8. 11:33Training data from user behavior
  9. 12:55Feature engineering
  10. 14:41Types of ranking features
  11. 15:26Optimizing model features
  12. 16:50Deploying reranking model
  13. 18:56Results and feedback
  14. 19:37Lessons learned
  15. 21:04Future plans for Ruby gem
  16. 22:07Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.