Tag strength pushes the output toward your selected tags. 1.0 ignores
them; 2–3 is usually the sweet spot.
Max repeats of one note is the strongest cure for a
looping model — it caps how often a single pitch may sound in a
short window. Set it too low and you outlaw trills and ostinatos, which
real music is full of. scripts/diagnose.py measures what
your own training data does and suggests a value.
Click empty space to draw a note, drag to move, drag the right edge to
resize. Shift+click multi-selects,
Del removes, ↑/↓ transposes
(Shift for octaves), Ctrl+Z undoes.
Regenerate selected bars sends your edited piece back to
the model and asks it to rewrite just that region of the selected track,
keeping everything around it. That is the same infilling the model was
trained on, aimed where you point it.
This does not retrain the model. It freezes all 35M
weights and learns a handful of steering vectors — about 2 KB
— that point the model at your music. Think of it as teaching it
a new word, not a new skill.
It runs on one background worker, so if someone else is training you
will wait your turn. A sleeping server loses in-flight jobs; for
anything important, use the Colab notebook and import the result.