Skip to content

Schedules

Schedules automate leaderboard evaluation and fine-tuning.

Leaderboard schedule triggers

Leaderboards support three trigger types.

New model version

Run when linked Dr.Gero models publish new versions/resolutions. Cadence options:

  • DAILY
  • WEEKLY
  • MONTHLY

New data

Run when PUSH datasets accumulate enough new events. Configure:

  • Check cadence: HOURLY, DAILY, WEEKLY, or MONTHLY.
  • every_new_events: minimum number of new accepted rows before running.

Cron

Use presets:

  • DAILY: 0 0 * * * UTC
  • WEEKLY: 0 0 * * 0 UTC
  • MONTHLY: 0 0 1 * * UTC

Or provide a custom five-field cron expression.

Dataset size for scheduled runs

json
{
  "mode": "LIMIT",
  "limit": {
    "auto": false,
    "rows": 5000,
    "algorithm": "LAST_N"
  }
}

Algorithms:

  • LAST_N
  • RANDOM_SHUFFLE
  • WEIGHTED_SHUFFLE

Full leaderboard schedule example

json
{
  "version": 2,
  "triggers": {
    "model_version": {"enabled": true, "cadence": "WEEKLY"},
    "new_data": {"enabled": true, "check_cadence": "DAILY", "every_new_events": 500},
    "cron": {"enabled": true, "preset": "CUSTOM", "expression": "0 6 * * 1"}
  },
  "dataset": {
    "mode": "LIMIT",
    "limit": {"auto": false, "rows": 5000, "algorithm": "LAST_N"}
  }
}

At least one trigger must be enabled.

Fine-tune schedule

Fine-tune schedules are saved on model resources:

json
{
  "run": {"type": "WEEKLY"},
  "dataset": {
    "mode": "LIMIT",
    "limit": {"auto": false, "rows": 2000, "algorithm": "WEIGHTED_SHUFFLE"}
  }
}

Available run types are REAL_TIME, DAILY, WEEKLY, and MONTHLY.

Operator cron endpoints

Deployments can run due schedules with internal cron endpoints:

  • POST /api/leaderboard-schedules/run-due
  • POST /api/push-datasets/consolidate-due

These require deployment cron tokens and are not intended for regular user API tokens.