https://gateway.omnia-voice.com/v1 or the dashboard’s fine-tuning wizard.
You can also curate a managed dataset straight from your
logged traffic;
filtered by task, model, or auto-detected segment, with
a disjoint eval holdout. A dataset is a frozen snapshot: logs age out on
your retention window (7/30/90 days), but a dataset curated from them does
not: curate what matters before it expires.
Curation isn’t just a filter; it cleans as it builds. Only successful
responses are included; byte-identical duplicates (cache-replay collapse),
truncated answers (finish_reason=length), and empty replies are dropped, and
multi-turn conversations are reconstructed and folded so early turns aren’t
over-trained. Every build reports exactly what it kept and why
(“kept 4,812 of 6,003: 891 duplicates, 300 truncated…”).
Upload methods
Direct file
Upload a JSONL file directly as a training file.
Object storage (S3)
Use an S3-compatible bucket as a dataset source with your credentials.
Chunked upload
Large files upload in parts (chunked/multipart) so big datasets upload
reliably.
Uploading a training file
Upload a JSONL training file withPOST /v1/fine_tuning/files, and list your
files with GET /v1/fine_tuning/files.
trainingFileId (or
validationFileId) when creating a job.
Training formats
When you use a managed dataset, you map its columns into one of four training formats. Pick the format that matches your task:Text — raw text completion
Text — raw text completion
Plain text. Map a single column to the text field. Use for continued
pretraining or simple completion.
Prompts — prompt / completion pairs
Prompts — prompt / completion pairs
Prompt/completion pairs. Map one column to the prompt and one to the
completion. Use for instruction tuning.
Messages — chat format (role / content)
Messages — chat format (role / content)
OpenAI chat format: role/content conversations. Map the column that holds
the conversation. Use for chat/assistant fine-tuning.
Pretokenized — token-id arrays
Pretokenized — token-id arrays
Already-tokenized data as token-id arrays. Map
input_ids (and optionally
labels, attention_mask). Use when you control tokenization.Validation
JSONL is validated before a job starts. Line-level JSONL errors and format problems are surfaced with the exact reason, so you fix them before spending on a job rather than after. You can also preview dataset rows in the dashboard before training.Using a dataset in a job
Once your file or dataset is ready, reference it when creating a fine-tuning job. A managed dataset is converted to a training_file automatically, using the column-mapping format you chose; you then pass the resulting file id astrainingFileId.
Create a job
Start training with your prepared data.
Deploy the result
Serve a trained model on a dedicated endpoint.