Proposed next experiment · not a capability announcement
From a musical forecast
to a responsive partner.
Make the interaction contract and runtime work on the existing 5k corpus before scaling the same forecast task to 20k. Keep the accepted checkpoint and listening set as a baseline; do not discard what already works.
The target is straightforward: you keep playing right hand, Cadence produces a useful left-hand part, and future output adapts to newly received playing. A MIDI upload followed by a prerecorded answer is not this target.
This page distinguishes source findings, our measurements, and design choices. It is a proposal for review, not authorization for an unbounded training campaign. No inference model runs on this page.
Domain ownership comes first
Engineering plan Reuse existing owners and public interfaces. Do not create a second scheduler in the web UI or make the MIDI I/O library responsible for musical judgment.
score MIDI messages, note/pedal lifecycle, ports and score I/O session session clock, observed/held state, scheduling, commit log stream adapt incoming device/browser events to the session input inference incremental decoding and cache/rollback integration model checkpoint loading, vocabulary compatibility, decoder/cache duet causal accompaniment serialization and training task forecast preserve the accepted fixed-prefix RH → RH+LH task demo connection/start/stop controls, visualization and transport corpus build causally available training examples and frozen splits training bounded fine-tunes, validation and durable checkpoints evaluation real-clock replay, counterfactuals, traces and listening
The current code already contains MIDI ports, session-loop machinery, held-note state and cache primitives. Those are reusable implementation pieces—not evidence that the accepted forecast checkpoint is compatible with the older duet/session token contract, or that the old accompaniment behavior is musically useful.
Execution started · CPU implementation gates first
The first interaction fine-tune
Starting point: our accepted 5k / step-500 checkpoint. Not base Aria and not random initialization. Preserve that checkpoint and its listening examples; the interaction candidate is a separate run with a fresh optimizer.
Engineering choices StreamMUSE remains the primary interaction/scheduling reference and Moshi the multistream reference. Other sources constrain interpretation; they are not extra architecture requirements. This section specifies our first test, not a claim that either paper validated it.
| Decision | First implementation | Gate |
|---|---|---|
| Input state | Observed RH and played LH up to the decision cutoff, explicit held-note flags, plus already committed upcoming LH. | Changing later human notes or unknown release times cannot change the input prefix. |
| Prediction | Only uncommitted upcoming LH, beyond a positive scheduling lead where configured. | No generated notes enter played history without an actual playback acknowledgement. Joint speculative RH is a later comparison, not ruled out. |
| Initialization | Keep all accepted checkpoint rows/tensors; append only interaction task, timing and active-note controls. | Default legacy vocabulary remains unchanged; migration must preserve every old row exactly and verify the source digest. |
| Data | The same fixed 5,000 files and 4,782 / 98 / 120 train/validation/test split. No new hand labeling or 20k expansion. | Source/sidecar identity checks and per-file window coverage; no silently excluded input files. |
| Training isolation | One source example per batch row, padded rather than concatenated with other windows. | No earlier packed window can expose another example's withheld future to the model. |
| Pilot | Initial 500-step new-task fine-tune, checkpoints every 100 steps, after corpus and compute admission pass. | Saved checkpoint identity and held-out diagnostics before wall-clock replay or a live-quality claim. |
The first snapshot tier uses 1/5/10-second observed contexts; candidate leads of 0/250/500/1,000 ms and target spans of 0.5/1/2 seconds. These are experimental training settings, not validated latency budgets. Zero lead is a diagnostic case, not assumed deployable. Initial encoding uses censored note durations plus held-state flags; sustain-pedal behavior is not yet qualified.
Recorded LH history and prior commitments are teacher-forced during the first corpus build; deployment conditions on actual generated and played history. That mismatch remains an explicit evaluation target. Valid silent future windows are retained rather than forcing every example to contain a note.
What the pilot actually established
| Observation | Recorded result | Boundary |
|---|---|---|
| Data admission | 5,000 selected files loaded; zero skipped or stale labels. Split: 4,782 train / 98 validation / 120 test. | Predicted hand labels; not measured ground-truth hand accuracy. |
| Training | 500 steps; 16,384,000 packed input tokens processed; checkpoint saved and verified. | Training completion does not establish live behavior. |
| Conditioning diagnostic | 391 validation windows: true RH NLL 1.9854; shuffled RH 2.1384; empty RH 5.7150. | Same future targets. Empty-prefix padding is also an out-of-distribution perturbation. Not a musical-quality oracle. |
| Listening | Eight fixed examples; all contain generated RH and LH. Informal user feedback accepted this first forecast/play-along pilot; original clip 04 was preferred. | Not a controlled preference study. Short endings and weaker examples remain in the set. |
| Timing | One real upload measured approximately 9.85 seconds of complete forecast generation. | Not first-note latency, a p95 measurement, or a verdict on streaming feasibility. |
| Interface | MIDI upload, separate parts, shared-timeline RH mute, desktop/phone rendering checked. | Fresh input arriving after the prompt is not continuously incorporated. |
Our experiment These are Cadence measurements, not claims borrowed from papers. The fixed-prefix decoder is already causal/autoregressive relative to its supplied prompt; missing continuous conditioning does not make its architecture inherently non-causal. AR1AM4
Prior symbolic-music work also uses autoregressive likelihood training; that fact does not establish live capability. MA4AM4 Our corpus begins with transcribed performances and predicted hand assignments, not error-free note/hand truth. AD2PH1 The model's memorization disclosure and the distinction between Pruned pretraining data and our Deduped selection prevent us from asserting pretraining independence. AR2AD3
A 20k forecast run might improve coverage or consistency. It would not, by itself, answer the missing questions about incoming events, actual generated history, scheduling and recovery. That prioritization is our judgment—not a theorem about dataset size.
The live information contract
Design decision At each decision time t, condition on real RH events received by then, actual past LH output, and any LH output already committed for playback. Predict upcoming LH—not an invented human continuation presented as input. SM2MO5
Held notes are state, not foreknowledge
A note-on does not reveal its eventual release time. Reuse the existing held-note state, then audit how it is encoded. Either explicit note-on/off events or a faithfully constructed as-of snapshot can work; do not provide final durations early just because the training file contains them.
Encoding choice remains a compatibility experiment, not a commitment to rewrite the entire vocabulary.
One clock, two different timestamps
Record musical event time and the time the controller actually received the event. Freeze a conditioning cutoff per decision. Map browser/device, server and playback clocks explicitly; do not subtract unrelated clocks and call the result latency.
Clocks, source identity and commit ownership belong to the runtime, not a musical heuristic.
Predicted future RH may remain an internal hypothesis, but only genuine device/replay events may update observed human state. A player's new event must not be replaced with the model's guess. Stop/panic is an explicit safety exception: cancel future output and release AI-owned notes without confusing them with the player's notes.
Latency is a measured budget
Required budget: generation-ready time + delivery/render allowance + jitter margin < L
Required sustained behavior: output arrives before playback consumes the buffer
This is our sign convention and scheduling contract, not a copied equation. Report time to the first schedulable note, steady-state throughput, p50/p95 delay, late events and underruns separately. Total-shot generation time is neither first-note latency nor acoustic end-to-end delay. SG3SG4SM3
Start with one model/hardware configuration and select lead/commit budgets from measurements. Freeze those budgets before an evaluation run. If the system only works with a long delay, label that honestly; do not make a prerecorded response look live.
Implementation sequence
Each stage earns the next. MIDI first; no microphone transcription, new audio codec or large-model rewrite in the initial scope.
Freeze the baseline and audit compatibility
Preserve the accepted checkpoint and all eight takes. Compare the forecast and existing session/duet schemas: vocabulary, task markers, hand ownership, time interpretation, cache state and checkpoint loading. Exercise the actual input/output paths—not merely Pydantic request validation.
Wire a real event loop and instrument it
Connect a MIDI keyboard—or browser keyboard for the first test—to the existing session input abstraction. Stream event identities, note-on/off, pedal and timestamps. Use local synthesis/MIDI output for playback, not a WAV-rendering round trip after every phrase. Add start/stop, connection state, active-note display and a panic control.
Expose incremental decoding sufficiently to measure the first complete schedulable note. Test whether the current checkpoint can support a useful probe. Neither success nor failure is predetermined by the fact that its prompt is fixed. MI1SM1
Align training with rolling LH accompaniment
Use the existing verified 5k files and their fixed composition/recording splits. Composition-level separation is also an explicit MAESTRO criterion, though its split does not certify ours. MA2 Construct decisions from only causally available RH, actual past LH and explicitly committed LH. Predict a bounded upcoming LH region with target-only loss. Training history may use recorded LH under teacher forcing; deployment uses actual generated/played LH, so evaluate that mismatch explicitly. AM4SM4SG1
Initialize from the accepted checkpoint where the tested migration supports it. Verify any new task/active-note tokens and preserve model identity; do not silently fall back to a random or different base. Keep Aria's event representation initially rather than switching wholesale to a beat-grid format. AR1SM1
If profiling later motivates hierarchical generation, Moshi supplies a speech precedent for time/depth factorization—not a music-capability result or a reason to replace our decoder now. MO1
Any time/pitch transformation must be coherent across paired parts. Do not perturb an arbitrary melody while retaining an incompatible accompaniment target. Generated-history augmentation or RL are later controlled experiments, not assumed remedies.
Test replanning at actual playback speed
Replay held-out MIDI in wall-clock time, then test pauses/restarts, tempo drift, changed motifs and late-arriving events. Pair sessions with an identical prefix but different subsequent human input; keep seeds and runtime settings fixed where possible. Log the observations each decision consumed and distinguish played, committed and revisable notes.
Musical response does not mean every changed note must trigger a different bass note. It means new input is genuinely available to the model and the resulting continuation remains useful under musical review. A noisy output that changes constantly is not a pass.
Play with it continuously
Run a recorded, at least two-minute unscripted MIDI session, including a pause/restart and an intentional musical change. Inspect isolated LH and the complete performance. Include fresh human playing rather than relying only on two hand tracks from one prerecorded performance.
Judge response, harmony, phrasing, density, continuity and recovery. Preserve weak takes and report early endings. Lower NLL, zero audio errors or a running server are not substitutes for a player's listening verdict.
Scale only the limiting factor
Move to 20k when the live contract and timing work and the remaining weakness is plausibly musical coverage, robustness or data quality. If the bottleneck is scheduling or stale context, fix it there. Qualify microphone transcription and audio rendering only after the MIDI loop is useful. MA1MA3
Definition of done
| Gate | Evidence required | Does not count |
|---|---|---|
| G1 · Causal inputs | Every decision's trace identifies source events received by its cutoff; active-note state uses no unknown final duration. | A causal attention mask alone. |
| G2 · Commit integrity | Zero rewriting of played/committed notes in normal replanning; explicit logged stop/panic handling. | Approximate or thresholded agreement with previously played output. |
| G3 · Real timing | First-note, steady-state and tail latency; deadline/underrun counts under the predeclared lead and commit budgets. | GPU utilization, virtual time, a single best run or total-clip time relabeled first-note latency. |
| G4 · Genuine adaptation | Matched input forks plus trace evidence that newly received events affect conditioning; musically meaningful response is assessed by listening. | Different random output, or predicted RH fed back as human input. |
| G5 · Useful performance | Recorded continuous human session and explicit acceptance of the LH partner, with failure cases retained. | One attractive precomputed example or a lower teacher-forced loss. |
| G6 · Reproducibility | Pinned model/data/task identities, resolved paths, saved traces, and declared inference/timing settings. | Schema-valid requests that refer to wrong or nonexistent artifacts. |
A turn-taking keyboard demo can be a valuable intermediate result. It must remain labeled as turn-taking, not substituted for this simultaneous-interaction gate. GH1GH2
Claims we will not build on
| Tempting claim | Correction / implication |
|---|---|
| MAESTRO proves 3 ms live transcription. | The number describes recording alignment. A causal audio frontend needs its own measured latency and accuracy. MA3 |
| Anticipation means predicting the human's unknown future. | AMT's supplied future controls and an improvising human are different information contracts. AM1AM2AM3 |
| Cross-entropy cannot work interactively. | Neither these autoregressive precedents nor the reported generation gaps establish that universal claim. Specify the task and test it. AM4SM4SG2 |
| StreamMUSE quantified a latency penalty of causality. | The cited highest-base-latency comparison concerns network deployment, not causal versus offline architecture. SM3 |
| Future visibility is a free inference knob. | The accompaniment study trains a model grid. Its printed sign and delay arithmetic also need care; our scheduler uses independently defined positive lead time. SG1SG3SG4 |
| Moshi provides one unchanged checkpoint for three music products. | Speech-task delay variants and an aligned text stream are useful analogies, not that product claim. §5.7 explicitly describes training ASR/TTS variants. MO2MO3 |
| A speech codec's frame rate fixes every musical onset to that grid. | Latent codec rate, transcript alignment, waveform sample rate and MIDI event timing are distinct quantities. MO4 |
| Apache model/code licenses make the corpus commercially cleared. | Track model, code, documentation, compiled data and underlying works separately; Mido itself declares different terms for code and documentation. MI2MI3 AR3AD1PH2 |
| Passing tests means the older session engine already accompanies well. | Tests establish specific implementation properties. Checkpoint/task compatibility and live musical behavior still require the gates above. Our assessment |
Decisions for review
- Product target: continuous LH accompaniment is the target; turn-taking remains an explicitly separate milestone.
- Initial input: MIDI keyboard/browser notes, not microphone audio. Keep synthesis local where practical.
- First training scope: the verified 5k corpus and accepted model family, with a tested causal-task migration—not a 20k labeling campaign by default.
- Timing: measure before selecting and freezing the lead/commit budgets. Report delays honestly rather than adopting a universal perceptual threshold from another setup.
- Learning: supervised causal visibility first; any generated-history/RL or audio-factorization experiment needs its own hypothesis and matched evaluation.
- Acceptance: real causal traces and useful continuous human playing, not model activity or a single polished clip.
These are proposed decisions. Citations motivate or constrain them; no paper is being used as authority for a design choice it did not test.
Primary-source claim ledger
Every literature point used in this plan
Ten primary papers/cards/documentation sources, 34 claim records. Each record exposes the claim, a short exact excerpt, a precise location, its scope limit, and our intended use. Noncontiguous excerpts are separated with an ellipsis. Source findings are not automatically Cadence findings.
Coverage, verification and limits
This is an exhaustive ledger of the literature premises used by this proposed plan, not an exhaustive survey of all interactive-music research. Secondary chat summaries are not treated as primary evidence. ArXiv links identify the inspected version; moving model cards and documentation reflect the 18 September 2026 inspection. Section and paragraph references are identified at the granularity actually checked; documentation line numbers can drift.
The source audit was followed by adversarial checking. A coordinator pass additionally checked the streaming paper's sign/delay equations and Moshi's delay-training section. The result is still a reviewable draft, not a guarantee of infallibility. In particular, first-note/tail latency, causal-task learning, robustness to a new player and musical responsiveness remain experiments to run.
The exact four-slot/384-frame preprocessing recipe discussed earlier is not adopted or relied on here; a repository-level audit would be needed before treating those implementation details as our specification. Cadence currently uses Aria-compatible event timing, not that tick-grid recipe. We make no novelty/first-system claim, no universal impossibility claim, and no claim of commercial clearance.
All literature-derived claims above map to this ledger. Domain placement, state ownership, test procedures, budget notation, stage order and acceptance criteria are explicitly our engineering proposals. Pilot results are our observations; model-generated future RH is never presented as observed human input.