OpenAI fine-tuning job client.
Existing :training_file IDs are submitted directly. Otherwise examples are encoded as deterministic JSONL, uploaded to the OpenAI Files API, and the returned file ID is used for the fine-tuning job.
:training_file