47% OFFYearly Pro
$30/mo$16/mobilled yearlyGet Pro
Masterclass

Recommender systems masterclass: Two-tower to FastAPI

Build a four-stage personalized recommender end to end: two-tower retrieval, ranking, optional LLM rerank, served by FastAPI on local Postgres, Qdrant, and MLflow.

Still deciding? Ask first.

Message a mentor about fit, prerequisites, or where to start. Replies come on WhatsApp, usually within a day.

  • Curriculum fit, prerequisites, or where to start
  • Honest answer, no pressure to enroll

Engineers are learning here from

NVIDIAMICROSOFTGRABWISEPIPEDRIVEBOLTGLIA

Outcome

What you'll be able to do.

Ship a production-shaped recommender end to end and defend the architecture in an ML engineering interview.

  • A two-tower retrieval model that aligns customers and items in a shared embedding space
  • A CatBoost ranker trained on engineered article and customer features
  • An optional LLM reranker that scores the top set with provider-neutral LiteLLM
  • A FastAPI service that returns top-K recommendations with article metadata
  • A Streamlit shop UI that consumes the API and renders article images
  • A reproducible evaluation harness with recall@K, NDCG, and MAP

Projects you build

Portfolio pieces you can demo.

Each project ships as real code you run locally, not slides you watch. Walk into your next review with something on screen.

01Project

A four-stage personalized recommender API

Hit a FastAPI endpoint with a customer id and get back ranked top-K recommendations, complete with article metadata and an optional LLM rerank toggle. Everything runs locally with one make command.

TensorFlow RecommendersCatBoostQdrantFastAPIMLflow

You ship: A live recommender API you can demo on a laptop. Recruiters and engineering managers see the production shape instantly.

02Project

A Streamlit shop with image previews

Pick a customer, hit "Get recommendations", and watch the four-stage pipeline render a ranked carousel of articles with H&M product imagery. Toggle the LLM reranker to see how the order shifts.

StreamlitQdrantPolars

You ship: A clickable demo that turns the recommender from "it returns JSON" into "look at what it suggests".

03Project

A reproducible evaluation harness

Hold out one purchase per customer, run the pipeline against the rest, and compute recall@K, NDCG, and MAP. The same harness you would put in CI to gate ranking changes.

PolarsNumPyJupyter

You ship: A defensible number behind every model change. The thing that turns "looks better" into "ships".

Curriculum

What's inside.

  1. 01

    Personalized recommender systems: Two-tower retrieval to production serving

    Build a four-stage personalized recommender: two-tower retrieval, ranking, optional LLM rerank, served by FastAPI on local Postgres, Qdrant, and MLflow.

Who it's for

Is this for you?

ML engineers

who have trained models in notebooks and now need to ship a recommender that survives a real product surface

Data scientists

who can move H&M data around in pandas but have never wired retrieval, ranking, and serving together

Backend engineers

who have to maintain the recommender service their data team handed off and want to understand every stage they are paged about

What you'll earn

Ship it, earn it.

Recommender Shipper

Build and serve a four-stage recommender

Production ML

Embeddings, ranking, and serving wired together

Pricing

Pick the path that fits.

Self-paced forever, or mentor-led when you want live feedback.

Frequently Asked Questions

Do I need a GPU?
No. The sampled H&M dataset trains both models in under five minutes on a laptop CPU. The full Kaggle dataset benefits from a GPU but is optional.
Do I need Docker?
Docker is the golden path with Postgres, Qdrant, and MLflow in containers. The repo also ships a LOCAL_MODE that runs on sqlite and embedded Qdrant so you can work without Docker.
How does this differ from Kaggle solutions?
Kaggle solutions optimise for a leaderboard score on one offline split. This masterclass optimises for a working production architecture you can serve, evaluate, and iterate on. Different goal.
Where is the code?
The companion workshop is open source at github.com/learnwithparam/personalized-recommender-system. Clone it, run make dev-local, and you are up in minutes.

Pick your next step.

Build a four-stage personalized recommender end to end: two-tower retrieval, ranking, optional LLM rerank, served by FastAPI on local Postgres, Qdrant, and MLflow.

Start this masterclass

Recommender systems masterclass: Two-tower to FastAPI

Self-paced masterclass