JSONL Training File Validator

Paste a JSONL training file, find broken lines and message-role mistakes, then export the valid records.

Also useful for: jsonl validator fine-tuning jsonl validator openai jsonl validator JSONL Training File Validator

JSONL Training File Validator

Runs in your browser. Inputs are not uploaded.
Input
Results
Summary: 2 valid records out of 4 non-empty lines. 2 errors, 1 warning.

Stats
- Records: 4
- Valid Records: 2

Issues
- Critical, line 2: Message 1 has unsupported role "customer".
- Critical, line 4: Line is not valid JSON. Expected property name or '}' in JSON at position 1 (line 1 column 2)
- Warning, line 2: Chat record has no assistant message.

Output
{"messages":[{"role":"system","content":"Be concise."},{"role":"user","content":"Write a subject line."},{"role":"assistant","content":"Launch notes inside"}]}
{"prompt":"Product: rain jacket","completion":" Waterproof shell for wet commutes."}

JSONL Training File Validator Example Run

Catch provider-blocking training rows before upload.

Sample inputs
{"messages":[{"role":"system","content":"Be concise."},{"role":"user","content":"Write a subject line."},{"role":"assistant","content":"Launch notes inside"}]}
{"messages":[{"role":"customer","content":"Bad role"}]}
{"prompt":"Product: rain jacket","completion":" Waterproof shell for wet commutes."}
{bad json}

Generated result
Summary: 2 valid records out of 4 non-empty lines. 2 errors, 1 warning.

Stats
- Records: 4
- Valid Records: 2

Issues
- Critical, line 2: Message 1 has unsupported role "customer".
- Critical, line 4: Line is not valid JSON. Expected property name or '}' in JSON at position 1 (line 1 column 2)
- Warning, line 2: Chat record has no assistant message.

Output
{"messages":[{"role":"system","content":"Be concise."},{"role":"user","content":"Write a subject line."},{"role":"assistant","content":"Launch notes inside"}]}
{"prompt":"Product: rain jacket","completion":" Waterproof shell for wet commutes."}

What the JSONL Training File Validator Checks

  • One JSON object per line

    Every non-empty row is parsed independently, so one broken line does not hide the rest of the file.

  • Chat message shape

    The validator checks messages arrays, role values, and content fields expected by common chat fine-tuning formats.

  • Prompt/completion fallback

    Older completion-style records are accepted when both prompt and completion are strings.

  • Clean export boundary

    Rows with syntax or structural errors are left out of the downloadable clean JSONL output.

  • Local privacy

    Training examples, prompts, and uploaded text stay in the browser while the report is built.

JSONL Training File Validator Questions

  • Q: Does the JSONL training file validator upload my training data? A: No. Inputs are processed in your browser, and pasted content is not sent to analytics or a server.
  • Q: What should I paste into the JSONL training file validator? A: Paste JSONL with one training record per line. Chat-style records should contain a messages array; older records can use prompt and completion strings.
  • Q: What can I copy or download? A: You can copy the issue report or download a clean JSONL file containing only rows without blocking errors.
  • Q: What does the JSONL training file validator not verify? A: It does not judge answer quality, dataset balance, token limits, or whether a provider will keep the same fine-tuning rules forever.

Use JSONL Training File Validator with an LLM

Copy the prompt or pass the llms.txt contract link to your assistant.

Prompt
Use the CleanUtils JSONL Training File Validator tool for this request.
Tool contract: https://cleanutils.com/developer-tools/jsonl-training-file-validator/llms.txt

Read the llms.txt contract, ask me for any missing required input, then follow the contract exactly. If the contract includes JavaScript, run `runCleanUtilsTool(userInput)` in a sandboxed JavaScript runtime and return the result with any warnings or errors.