An end-to-end click-through-rate recommender on the Taobao display-ad dataset, built to demonstrate a full ML serving path across languages.
PyTorch (train) ──► ONNX (export) ──► Go (serve) ──► React (explore)The interesting engineering is the seam: rather than serve the model from
Python, the trained graph is exported to ONNX and run from Go via
onnxruntime. Go owns feature assembly — vocabulary lookup, OOV fallback,
behavior-sequence padding — and runs the forward pass. A single
feature-encoding contract is consumed identically by the Python trainer and
the Go server, which is what prevents train/serve skew.
Why DIN
The dataset's signal lives in user behavior sequences. DIN's target-attention pooling weights each historical item by its relevance to the candidate ad, so a user's "interest" is computed per candidate rather than as a flat average.