voya
Personalisation & memory
07

What VOYA knows about me

Preferences are a form you fill in once. Memory is what the agent learns while you travel — durable across conversations, visible in plain language, and deletable in one tap.

You control your memory.

Nothing VOYA remembers is hidden from the traveller. Every fact shows where it came from, can be paused so it stops influencing recommendations, and can be deleted permanently — including from the vector store.

Prefers boutique hotels over chains
high
Category · Hotels
Why VOYA remembers this · learned from Georgia May conversation
Enjoys hiking and mountain day trips
high
Category · Activity style
Why VOYA remembers this · learned from Georgia May conversation
Usually travels with spouse
high
Category · Family
Why VOYA remembers this · learned from Trip party across 6 trips
Prefers aisle seats
high
Category · Airlines
Why VOYA remembers this · learned from Flight bookings
Mid-range budget, AED 600–900 per night
medium
Category · Budget
Why VOYA remembers this · learned from Booking history
Seeks out local food experiences and markets
high
Category · Food
Why VOYA remembers this · learned from Saved activities
No pork; prefers halal options when available
high
Category · Religious considerations
Why VOYA remembers this · learned from Onboarding
Home city Dubai — departs from DXB
high
Category · Travel preferences
Why VOYA remembers this · learned from Account
Travels at a relaxed pace — max one big activity per day
medium
Category · Travel pace
Why VOYA remembers this · learned from Day 3 edit, Georgia
Add something VOYA should know
Memory activity
“Likes hiking”
Saved from Georgia conversation
“Prefers boutique hotels”
Saved from Georgia conversation
“Relaxed pace — one big activity per day”
Inferred from Day 3 edit
“No pork; halal preferred”
From onboarding
How it works

Durable fact, not chat log. Candidate facts are extracted, deduplicated against existing memory and written as structured rows with a source and a confidence.

Retrieval, not stuffing. Only the facts relevant to the current intent are retrieved via pgvector and passed to the model, keeping cost and latency predictable.

Thread-local vs durable. “My brother's family joins in August” stays on that thread; “prefers aisle seats” becomes durable memory.

Deletion is real. Delete removes the row and its embedding, and the change is reflected in the next retrieval — not just hidden in the UI.