User Representation¶
The visitor digital twin: who a visitor is and what they care about, learned from a short survey and from how they behave, then kept current through the visit.
A visitor never states their interests outright. They show them: what they open, how long they linger, what they skip, what they search, how they answer a survey. This area is about turning that behavior into a faithful, explainable model the recommender can use, the Adaptive layer of the DAC architecture.
The model has two halves: stable attributes from a short survey (demographics, goals, persona, personal involvement) that bootstrap it before any behavior exists, and dynamic state learned from interaction (inferred engagement, attention, and a sense of which themes resonate).
What you will find here¶
-
The shared vocabulary of visitor actions and the canonical event schema every source maps to.
-
How events become inferred states, a taste vector, and parsed intent. The math of the user embedding.
-
How events travel from the app through RudderStack to the user model, with analytics kept off the hot path.
API for this area
Visitor events enter through the recsys ingest webhook on the
AI Engine API (POST /api/ingest); the materialized user model
is readable at GET /api/usermodel.

Where the data comes from: the Bergen-Belsen Panoramic Display at the MEMORISE exhibition, which gathered the survey and interaction data behind the user model.