Run a benchmark
run_benchmarkSave a task (YAML, see get_task_format) to the user's OpenMark account and run it on the given models with real API calls. Returns a job_id and the expected cost; poll get_results. Spends the user's credits; pass max_credits to only start within a budget. Optional run settings match the app's Configure & Run panel (preset, stability_runs, max_tokens, temperature_discovery, temp_preference, timeout_profile, custom_timeout, fail_fast).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| models | Yes | Model ids from list_models | |
| preset | No | Like the app's presets: standard = 2 passes + snappy timeouts (the default), thorough = 3 passes + patient timeouts. Explicit stability_runs / timeout_profile override it | |
| fail_fast | No | Stop a model after repeated errors to save credits. Set false to let every model finish, e.g. to diagnose failures | |
| task_yaml | Yes | The full task YAML (a JSON object with the same fields also works) | |
| max_tokens | No | Output token limit per answer, 16 to 16000; 0 = no limit. Keep the default unless results show it was too low: a higher limit raises the credits needed to start. get_results flags models whose answers came back empty or near the limit; re-run those with a higher value | |
| upload_uid | No | From prepare_attachments, when tests use attachments | |
| max_credits | No | Budget: if the expected cost is higher, nothing runs and you get the quote instead | |
| custom_timeout | No | Seconds per answer, with timeout_profile custom | |
| stability_runs | No | Passes per model; 2+ shows which models are consistent | |
| temp_preference | No | With temperature_discovery: which temperature wins a tie | low |
| timeout_profile | No | How long to wait per answer: snappy 45s, patient 90s, custom = custom_timeout | snappy |
| temperature_discovery | No | Find each model's best temperature for this task. Costs about 6x as much |