the model directs, it doesn't play
The LLM emits interpretation and parameters under a JSON schema; our own renderer writes the notes. A malformed spec never fails a generation â it falls back to the genre default.
the sequencer
A prompt-driven MIDI idea generator for techno, groove, bounce and house. Ask for a part, get clips you can audition and drag straight into Ableton â the model interprets and sets parameters, and a deterministic renderer writes every note. In design; the blueprint is locked.
Two things Motif has to do. Be specific: "a bassline for a remix of Miami, 138 bpm" should return one clip that actually fits. And be inspiring: "five ghetto house drum patterns" should return a batch of distinct ideas to browse, audition through your own kit, and drag out â with per-role locks so you can keep the kick and re-roll the hats.
The design decision everything else hangs off: the model never writes notes. Every AI MIDI tool draws the same complaint â patterns that sound the same whatever you asked for, stiff and grid-locked. A language model knows what "ghetto house" and "Miami" are; it cannot feel a 16th-note velocity ladder. So it emits a spec â interpretation, global parameters, a recipe and parameters per part â and the renderer turns that spec into notes. The taste lives in the recipes, tuned by ear rather than derived from papers, which also means the app degrades gracefully: with no model reachable at all, you pick a genre and it still generates.
The rest is refusals. Nothing is quantised, because off-grid is the point. Groove is applied after rendering, so the swing and microtiming sliders re-render instantly with no model round-trip. Every render passes a novelty gate before you see it. Generation is seeded, so the same spec and seed give the same notes. And every generation is logged with your verdict from day one â starred, dragged out, ignored â so a later version can learn the defaults you actually reach for.
The LLM emits interpretation and parameters under a JSON schema; our own renderer writes the notes. A malformed spec never fails a generation â it falls back to the genre default.
Swing, microtiming, velocity ladders, ghost notes and flams are applied after rendering, so moving a slider re-renders with no model round-trip.
Onset and accent fingerprints reject near-duplicates against recent history and enforce diversity inside a batch â without ever failing a generation over it.
Clips export as .mid and .alc, audition over a CoreMIDI virtual port through your own kit, and stay tempo- and phase-synced over Ableton Link.
A track index â Traktor's collection first, Apple Music second â supplies real BPM and key, so a prompt naming a record you own never leans on model trivia.
No model, no problem: genre profiles still generate. A model on the LAN, a small one on the laptop, or an optional cloud key are all just endpoints.