Validate your dataset before you burn a GPU hour: a checklist

Presenting to a room
Presenting to a room

Originally published at https://pranjulrathour.scult.in/blog/dataset-validation-before-training. That copy is the canonical version and gets updates first.

Most fine-tuning failures I have seen were dataset failures: malformed records, duplicated examples, a prompt template mismatch. FineTune Studio validates on upload precisely because a clear error before training is worth more than any dashboard during it. Here is the checklist it implements, so you can run it yourself.

Pranjul Rathour
Pranjul Rathour

Structure

  • Every record parses, and every record has the same shape. One stray field name breaks tokenisation silently.
  • Roles alternate correctly and every conversation ends with an assistant turn — that is the turn you train on.
  • No empty assistant messages. They teach the model that silence is an answer.

Content

  • Exact and near-duplicate examples removed. Duplicates make the loss look great and the model brittle.
  • No overlap between training and evaluation splits — check by hashing normalised text, not by hoping.
  • Length distribution inspected: a handful of 8,000-token examples will set your sequence length and your memory bill. Truncate or drop them deliberately.
  • Label or intent balance checked for classification-style data; a 95/5 split trains a model that always says the 95.

Rendering

Render twenty random examples through the exact chat template you will train with, decode them back to text, and read them. This catches the mistakes scripts cannot: system prompts duplicated on every turn, a stray instruction inside an answer, examples in the wrong language. Formats and templates are covered in fine-tuning datasets without the confusion.

Provenance

Know where every example came from and whether you are allowed to train on it. Client data needs consent; scraped data needs a licence check. Write the source into the dataset card. A model you cannot explain the training data for is a model you cannot ship to a client.

Presenting KrishGyan, farming advice in your voice and language
Presenting KrishGyan, farming advice in your voice and language

Then, and only then

Start the run and watch the loss curve. A validated dataset turns a mysterious training failure into a hyperparameter question, and hyperparameter questions have answers.

From my carousels
1,211 Prompts, Every One Stamped
1,211 Prompts, Every One Stamped, slide 11,211 Prompts, Every One Stamped, slide 2
1,211 Prompts, Every One Stamped, slide 31,211 Prompts, Every One Stamped, slide 4
Full carousel on Instagram and LinkedIn.
Pranjul Rathour
Pranjul Rathour
GenAI engineer, Kanpur · 3x first-prize hackathon winner · campus mentor
I ship production RAG pipelines, fine-tune LLMs and build agentic AI products end to end. I lead engineering at SCULT INDIA for a 14-member team and have mentored 200+ students through TechVerse Enclave.
Open to: GenAI roles, hackathon judging, mentorship sessions and guest talks at colleges.
On stage, at hackathons and on campus
At an Integral Startup Foundation hackathon
At an Integral Startup Foundation hackathon
Pranjul Rathour
Pranjul Rathour
Pitching at CSJMU, Kanpur
Pitching at CSJMU, Kanpur

Comments

Popular posts from this blog

Forming a hackathon team: roles, skills and the mistake most teams make

Hello from Kanpur: what I build, and what I'll write about here

I built 15 free tools, 1,211 prompts and a 50,000-skill library — here's what's inside tools.scult.in