Toni D Voice Model

Llama 3.1 8B fine-tuned with QLoRA to write rap lyrics in my own voice, from a dataset built on my roughly 97-song catalog. A Custom GPT given the same data wrote the songs on the Suno playlist.
Built with
- Python
- PyTorch
- Hugging Face
- Llama 3.1
- Kaggle
- Weights & Biases
- Supabase
- Ollama
What it does
- Writes verses, hooks and full songs in my style from a short prompt, ready for Suno to render as audio.
- Runs entirely on my own machine: the adapter is converted to GGUF (Q8_0) with llama.cpp and served through Ollama.
- A stylometric evaluation suite scores each output for syllable density, type-token ratio, verbatim memorization and output diversity.
- Rehearsal data (persona prose and general-assistant examples) limits style bleed and keeps the base model's general abilities.
How it's built
- QLoRA fine-tune (4-bit, r=16) on Kaggle GPUs, with experiments tracked in Weights & Biases and adapters hosted on Hugging Face.
- Dataset pipeline: per-song phonetic, rhyme and structure analysis behind automated audit gates, then named-entity masking, section-marker normalization and prompt diversification, with a song-level train/validation holdout.
- Custom Python tooling, including an AAVE-tuned phoneme mapper for syllable counting and rhyme detection.
- Across three training runs I traced verbatim memorization to high-frequency completions, corrected syllable-density drift and overfitting, and fixed a TRL / Llama 3.1 chat-template loss-masking mismatch. Memorization is reduced, not eliminated.
- Lyrics, analyses and training pairs live in Supabase (PostgreSQL).
- The small model was promising, so I gave a frontier model the same data by compiling it into a Custom GPT (a feature OpenAI has since retired). Its songs were much stronger, and they are the ones on the Suno playlist.