The Idea
Most AI music tools are general models with a "make it sound like X" prompt slapped on top. DJ ADHDJ is the opposite: a model that has never heard anything except drum & bass, paired with a DJ engine that mixes its output the way a clever selector would.
Two parts, intentionally split. Splitting them is what guarantees the non-negotiables (4/4, no trainwrecks, phrase-locked transitions) instead of hoping a single end-to-end model figures all that out.
The Maker: two brains composing in the browser (June 2026)
The part that plays right now is a live composer running in the browser, and the point is that it composes rather than replays. Two small networks do the writing:
- The bass brain. About 5,000 parameters, trained on 2,583 basslines mined from drum & bass classics. It writes a fresh bassline for roughly three of every four slots, live, in the page. Validation loss settled at 1.45, which for a net this small is the difference between noise and a line you would actually nod to.
- The drum brain. About 3,400 parameters over 3,045 onset grids. It places the ghost notes and the chop accents, the human-feel details a straight pattern misses.
The sound is sampled (twelve amen breaks plus a rendered Reese kit), but the arrangement is neural, which is the whole thesis: this is not a sampler with a sequencer, it is a composer with a record bag. The mandate it had to clear was exactly that, composition is learned, sound is real, taste is earned.
Taste is the last piece. You grade what you hear, and any pattern that clears a vote threshold gets promoted into a persistent favorites songbook; the vote profile slowly drifts what the brains reach for. A small local language model is the chat interface, and image or GIF features can seed a mood. The radio even stops itself when no one is grading: it only runs while it is still learning something.
The Two Systems
- System G: the brain. A neural audio codec for the "ears" (pretrained, genre-agnostic plumbing, using a pretrained codec doesn't violate "only DnB" because compression is not musical knowledge) plus a transformer for the "musical mind" trained from scratch on the vinyl rips. Autoregressive, so it generates an endless stream by design, ideal for a 24/7 set.
- System D: the decks. A DJ engine that takes the brain's output, beatmatches across phrase boundaries, schedules transitions on the right bars, layers, drops the drums, brings them back. The musical structure lives here, not in the model.
The Architecture (committed)
- Codec: EnCodec 32 kHz, 4 codebooks @ 50 Hz to start (MusicGen default; lighter token rate, trains faster from scratch). Upgrade path to Descript Audio Codec at 44.1 kHz once v1 works.
- Brain: Meta AudioCraft / MusicGen architecture, a single-stage autoregressive transformer over codec tokens, but randomly initialized and trained on only my vinyl, not fine-tuned from Meta's checkpoint. AudioCraft supports custom datasets, EnCodec/DAC tokenizers, and from-scratch training via its grid system. Battle-tested infra, not a hand-rolled toy.
The Crowd in the Loop (added June 2026)
The 24/7 stream gets a feedback layer. Listeners react while it plays, and every reaction lands on a timestamp: this passage, this transition, this drop. The system assesses the pattern over time and adjusts. If 20 people sour on a stretch, the selector learns to leave that lane. If 1,000 people light up at a particular kind of passage, the system knows to go back to that well. The audience becomes a slow, distributed A&R department.
The signals shape the DECKS, not the record collection. System D learns which transitions, energies, and passages earn attention; System G keeps training on the vinyl alone. The crowd steers the DJ. It does not get to vote on the canon.
The hard design problem is the bad-faith listener: the anti-AI crowd that shows up specifically to make it fail. Defenses, layered:
- Behavior beats buttons. Dwell time, replays, and skips are the primary signal; thumbs are secondary. It is easy to spam a downvote and expensive to fake an hour of listening.
- Skin in the game. The community-funded angle doubles as a filter: backers' reactions carry weight because they paid to care. A costly signal is an honest one.
- Within-listener learning. The system learns what each listener prefers relative to their own history. An account that hates everything contributes no gradient; all-downvotes is a flat line, and flat lines teach nothing.
- Anomaly detection. Coordinated spikes against one passage from accounts with no listening history get quarantined, not learned.
The interesting failure mode is not sabotage; it is success. Pure crowd-pleasing converges to mush. The counterweight is the purist constraint that already defines the project: the corpus is fixed, the genre is fixed, and the crowd only tunes the selector inside those walls.
The Log: Teaching the Machine to Speak (June 2026)
A running log of the actual effort, kept honest. The project split into two systems on purpose: the radio (playing now, real drums because it IS real drums, a sampler with small neural nets composing basslines and chop placements) and the from-scratch model, the S-program, the real bet: a network that learns to produce raw audio itself, so it can invent sounds no sample contains. The radio is the instrument panel; the model is the engine being built. This month the engine took its first breaths.
Sound into language

CD-quality audio is 44,100 numbers per second; a five minute track is 13 million numbers, and no model learns musical structure staring at that. A neural codec compresses audio into 200 tokens per second from a vocabulary of 2,048 sound atoms, four streams deep (a coarse sketch plus three layers of correction). Once music is tokens, the whole language-model toolkit applies: the trainer is the same species as Embryo, a GPT predicting the next symbol forever. Autocomplete for sound.
The honest limit has a name: the coherence horizon. 1,024 tokens of context is about five seconds of memory, which is why early clips flip stations mid-thought. The codec bake-off existed to fix that with smarter tokens before bigger models: SNAC won, its slow structural stream stretching the same window across far more musical time.
The science of the groove

The intuition that DnB works on anticipation is published science: pleasure and the urge to move follow an inverted U against syncopation (Witek 2014), and the brain's reward is well-managed prediction error. A genre is a prediction grammar: the rigid 174 BPM two-step builds the prediction, the chopped break violates it just enough. Two consequences the project stands on: one genre means one grammar, so the techstep-only scope was scientifically right and not just cheap; and quality becomes measurable, because generated audio can be scored for landing in the pleasurable band instead of depending only on my ears.
What actually runs
- The corpus engine, grinding detached on the Mac: Discogs walks the right labels release by release, 1996 to 2004; yt-dlp fetches each queued track; every track becomes EnCodec tokens, SNAC tokens, and a MERT fingerprint, then the audio is deleted. A hundred hours of music stores in about 260 MB. Quality gates police the textbook: fingerprint distance flags impostors, unexpected remixes get quarantined unless the remixer is in-scene, and everything decodes back to listenable audio for spot checks.
- The trainer, on rented A100s: a 16M-parameter GPT, ten minutes and about fifty cents per run. The score that matters is normalized surprise: 1.0 means the model learned nothing, zero means perfect, and it sits around 0.77, a quarter of the randomness stripped out of techstep.
- The radio's brains are a different beast worth distinguishing: symbolic models, five thousand parameters, trained on mined patterns rather than raw audio. Tiny data suffices because the alphabet is musical, not acoustic. That is why they compose credibly today while the audio model needs a hundred hours.
The experiment ledger
| experiment | result | lesson bought |
|---|---|---|
| MusicGen LoRA fine-tunes | fuzz, fuzz, rhythmic fuzz | fine-tuning big audio models is fragile; proxy metrics lie; ears are the gate |
| Pattern brains | credible basslines, live in-browser | the genre's grammar is small and cheaply learnable |
| S0 corpus engine | 18 to 50x realtime ingest | acquisition wall-time, not storage or money, is the real cost |
| S1 pilot ($0.40) | half a second of good, then station-flipping | pipeline works end to end; the horizon becomes the metric |
| S1.5 bake-off ($4) | SNAC beats EnCodec; ears: all shit, differently | tokenizer decided before scaling; the lever is hours |
Total spend across everything: about twelve dollars.
The plan, every step kill-able
Grind the queue toward a hundred hours. At fifty, retrain and ask one question: did the horizon move past half a second? If yes, the S2 merge: a larger model with the radio's pattern-brains prepended as structure tokens, so the system that plays today becomes the conductor of the system being born. Then the full attempt, judged by horizon, canon-fit, the anticipation band, and a blind listen. If that passes, the community scale-up from the crowd-in-the-loop section above. Honest unknowns, stated plainly: roughly 60 percent confident that a hundred hours plus SNAC plus structure-conditioning yields recognizable lo-fi techstep, and the corpus stays a personal research archive, never redistributed.
One sentence: turn the genre into a language, teach a small GPT to speak it, police the textbook with my taste, and measure progress by how long it can hold a groove, while the radio I can already talk to grows the dataset and will one day conduct the result.
Honest Expectations
Calibrated, because from-scratch on a personal corpus is not Suno:
- Data-hungry. Tens to low-hundreds of hours of rips. More vinyl = better.
- One rented GPU for training. One-time spend, roughly twenty to a hundred dollars over iterations. The only unavoidable cost, rental, not new hardware.
- v1 will be lo-fi. Gritty, sometimes incoherent, recognizably DnB. Normal for from-scratch on a personal corpus. Improves with more data and more scale.
- Purity vs. fidelity tradeoff. Random-init-only-DnB is the purist road. Fallback if quality disappoints: hard fine-tune from Meta's checkpoint (one config change), sacrifices purity for fidelity.
The Legal Thing
Not legal advice, around 85% confident: ripping records I own for a personal, non-distributed 24/7 player is the cleanest version of AI music training that exists. It does NOT grant rights to distribute the model or its output. Audio and checkpoints stay out of git. Distribution and monetization is the Suno/Udio litigation zone, not where this lives.
Status
Architecture committed, dataset assembly in progress. The interesting work is the DJ engine, getting transitions to land on the right bar, getting phrase detection right, getting the layering to feel like a person who actually knows the music. The brain is the part everyone talks about; the decks are the part that makes it listenable.
Pairs with Embryo, same blank-slate instinct, different modality.