How Orion's Taste Map Works
Orion builds playlists that fit a moment. To do that it keeps a taste map: a model of what you like, a model of what sounds like what, and a set of controls that decide how far a playlist wanders from the familiar. This is a conceptual tour of that map — enough to follow how a situation ("backyard party on Saturday") becomes a real playlist, without the implementation detail.
Two ideas run through all of it. First, liking a piece of music and knowing what it sounds like are separate questions with separate answers. Second, one of those answers is private to a listener and the other is true for everyone. Keeping them apart is what lets Orion be both personal and shareable.
What counts as liked
Every artist and song carries a single preference score — how much the listener likes it. Three things feed it:
- Listening history, weighted toward recent. What someone actually plays, with recent plays counting more than old ones and old favorites fading slowly over months. The slow fade is deliberate: taste drifts over seasons, not days, so the center of the map follows what you listen to now without anyone tending it.
- How deliberately a play was chosen. A song you searched for and played on purpose says more than one an algorithm served you in the background. Orion weights deliberate choices up and passive, algorithmic exposure down, so the map reflects intent rather than what a feed happened to autoplay.
- Curation, the explicit statement. You can tell Orion directly — love an artist to lift it, demote one to lower it, block one to exclude it outright. Stated opinions don't fade the way plays do, because a love is a declaration, not a passing behavior.
The preference score is history plus curation, with blocks removing items from the running entirely.
What it sounds like
The preference score says how much you like something. It says nothing about how it sounds. That is a separate dimension: a style vector, a compact description of an artist's or song's sonic character, drawn from the genres, moods, and descriptive labels that public music data attaches to it. Two artists with similar style vectors sound alike; two with distant vectors don't.
Sounding alike is a different kind of closeness from playing together. Two artists can be one collaboration apart and sound nothing alike, and two who never crossed paths can sound like twins. Orion keeps both notions and uses them for different jobs.
What sounds like what: the similarity graph
Underneath the personal taste sits an objective structure — a large graph of artists and songs connected by "is similar to" and "is related to" links, built from public music data (similar-artist relationships, band membership, collaborations). Orion builds this graph up over time and keeps it, so it doesn't re-ask the outside world the same question on every playlist.
The graph gives a sense of distance. Starting from a home artist, its direct neighbors are one hop away, their neighbors two hops away, and so on. Distance is how a recommendation reaches new music: a playlist that stays at zero hops just replays the seeds, and one that ventures a few hops out lands in genuinely unfamiliar territory. Relevance thins quickly the farther you walk, so Orion only walks a few hops, and a candidate reachable only through a long chain of weak links scores lower than a close, strong neighbor.
This graph is Orion's own discovery signal, and its independence is the point: it lets results escape the sameness of a streaming service's built-in recommender and surface music that algorithm wouldn't.
The objective graph times the private taste
The two structures play different roles, and the line between them is deliberate.
The similarity graph is objective. "What sounds like what" is true for anyone — no play counts, no timestamps, no trace of who is listening. It could be rebuilt from public data by anyone.
The taste — the preference scores, the curation, the history — is private. "What this listener likes" is true for one person alone. It lives only on their own device and never leaves it.
A recommendation multiplies the two: the objective graph proposes candidates and says how far each sits from home; the private taste scores those candidates and decides which to keep. Neither half does the job alone. The graph without the taste is a generic map of music; the taste without the graph is a list of things you already know.
The three knobs
A human DJ controls more than "how far out." Orion exposes three independent knobs, so they combine without fighting each other:
- Novelty — how far from home the music roams. Low keeps the playlist among close, familiar neighbors; high pushes its center outward into music you've probably never heard.
- Exploration — how far the sequence strays before homing back. With novelty fixed, low exploration holds a tight tether at a steady distance; high exploration lets the set drift outward for a stretch before it's reeled home.
- Variation — how much consecutive tracks resemble each other. Low variation makes each track flow from the last in long coherent stretches; high variation hops between unrelated-sounding favorites. This one rides style, not distance.
Orion sets all three from context by default — a backyard party leans moderate novelty and low variation (one coherent, familiar vibe); focus work leans low on everything; a road trip leans higher on exploration and variation. These are starting points, and you can override any of them.
How a playlist gets built
Putting it together, the path from a situation to a finished playlist:
- A situation arrives — either something you describe in chat, or a life-fact handed over from a companion app ("backyard party, eight people, outdoors, six o'clock"). The companion sends only the situation, never a genre or artist; all musical interpretation happens on Orion's side.
- Orion interprets it into a musical intent. This is the one fuzzy, judgment-based step, handled by a language model: it reads the situation and decides what it calls for, then sets the three knobs to match — against your taste, so the same party reads differently for someone who lives on cumbia than for someone who lives on indie rock. Every step after this is deterministic and repeatable.
- It picks seed artists — the highest-preference artists that fit — and traverses the similarity graph outward from them, gathering candidates a few hops deep.
- It walks. Rather than ranking the whole pool at once, Orion builds the playlist as a sequence, choosing each track with an eye to where the last one landed. The knobs shape the walk, and your private taste rides along the whole time, favoring the candidates you're likelier to like. The walk is biased toward home, so it explores and then returns.
- It resolves the songs onto a real streaming service, writes the playlist, and hands back the link.
Why it stays private
The taste map is a living thing — it moves as you do, drifting with what you play and snapping to what you curate, with no manual upkeep. Orion also watches how each playlist is received (played through, skipped, saved, thumbed) and feeds that back in, so the recommendations and the defaults sharpen over time.
All of that — the taste, the history, the curation, and the quality signal — stays on your own device and never leaves it. The objective "what sounds like what" is shareable by design; the private "what you like" is yours alone. That split is the whole idea.