- Run an RL job with tracing enabled on your hosted task app.
- Convert the resulting trace database into a curated JSONL dataset.
- Submit a fine-tuning job through
uvx synth-ai train --type sft
. - Evaluate the produced checkpoint back on the same task app.
Prerequisites
- You have followed the Get Started guide and deployed the Crafter task app to Modal.
- Tracing is enabled on the deployment (set
TASKAPP_TRACING_ENABLED=1
when deploying or mount a trace volume for the task app). - Your
.env
containsSYNTH_API_KEY
,ENVIRONMENT_API_KEY
, andTASK_APP_URL
.
1. Run a traced RL job
SQLD_DB_PATH
in Modal). After the job completes, download the SQLite trace database from your trace volume.
2. Filter traces into JSONL
--require-achievement
for each outcome you want to retain. The JSONL output follows Synth’s SFT schema and is ready for upload.
3. Launch the SFT job
ft:Qwen/Qwen3-4B:ftjob-…
.
4. Evaluate the tuned checkpoint
Copyexamples/warming_up_to_rl/configs/eval_groq_qwen32b.toml
, replace the model entry with your fine-tuned model ID, and run:
Tips
- Maintain a versioned
datasets/
directory—uvx synth-ai train --type sft
will auto-suggest recent files. - Use
--dry-run
on both SFT and RL commands to inspect payloads before launching production jobs. - Once satisfied with the tuned checkpoint, set
[model].source
in your RL configs so future runs resume from it.