JSONL → OpenAI Fine-Tuning Converter

Convert your data to OpenAI fine-tuning format with validation.

Ad placeholder (leaderboard)

Build a valid fine-tuning file in seconds

OpenAI’s chat fine-tuning endpoint expects a precise JSONL shape: one JSON object per line, each containing a messages array with system, user, and assistant roles. Getting a single line wrong fails the whole upload. This tool takes your raw prompt/completion pairs or chat turns and produces exactly that schema, validating roles and example counts before you submit.

How it works

Choose your input mode. In pair mode, paste one example per line with the prompt and completion separated by a tab or a pipe (|); the tool maps the prompt to a user message and the completion to an assistant message. In structured mode, paste JSON arrays of messages you have already shaped. You can supply one system prompt that is prepended to every example. The tool emits valid JSONL and runs validation: it confirms each example ends with an assistant turn, checks that roles are recognized, and warns if you have fewer than the ten-example minimum.

Tips and notes

Keep your system prompt identical to what you will use at inference — the model learns the behavior in the context of that instruction. Aim well above the minimum count; fifty to a few hundred clean, consistent examples beat thousands of noisy ones. Everything runs locally in your browser, so proprietary data is safe. After copying the JSONL, you can upload it directly with the Files API and reference the file ID when creating a fine-tuning job.

Ad placeholder (rectangle)