OVERTONE a music model that fits in a web page
model not loaded

It is composing
ahead of what
you are hearing.

A 3.3 million parameter transformer, trained from scratch on 1,034 public-domain folk tunes, running entirely inside this tab. The bars to the right of the playhead have already been written. Nothing is streamed, nothing is generated on a server, and nothing you do here leaves your device.

3.3 MB of weights. Downloads once, then works offline.

Parameters
3,339,008
Training data
1,034 tunes · public domain
Trained on
one laptop, ~30 min
Inference
your browser, 0 servers
Cost per minute
$0.00
played composed ahead chord tone passing tone
bar
chord
buffered
tokens/sec

Sampling temperature. Low is safe and repetitive; high invents, and occasionally rambles.

What this is, and what it is not

It is a real model

Every note you hear was sampled, token by token, from a decoder-only transformer whose weights were trained here from random initialisation. There is no API call, no pre-rendered audio, and no rule-based composer underneath. Open the network tab: after the initial model.bin download, the page makes no further requests.

It writes symbolic music — notes, durations and chord symbols — which a small synthesiser in the page turns into sound. That is the reason it can be this small. Models that generate audio waveforms directly are three to four orders of magnitude larger and cannot run client-side.

It is a deliberately small model

1,034 tunes is a tiny corpus and 3.3M parameters is a tiny model. It has learned the grammar of a specific tradition: it will not write you a trap beat or sing. What it demonstrates is the part that generalises — the tokenisation, the training loop, the quantised export, the client-side runtime, and the scheduler that keeps audio glitch-free while the model composes ahead of it.

The write-up covers how this compares to Suno, Udio, Lyria and the open audio models, what each approach costs to run, and where the legal exposure sits.

Read the technical write-up →