tasks

The tasks config group cares about the task selection available to the scheduler. For each task listed the scheduler automatically holds a TaskStruct that can be interacted with to load the task as well as attach / retrieve other artifacts.

Next to the base list of tasks there are two important concepts:

  • the pivot task is a “highlighted” task, some schedulers behave differently depending whether a pivot is provided or specifically require one

  • the tag mechanism allows task modifications (see also the mml-tags Plugins) - keep in mind that for the majority of cases tagged (and multi-tagged) tasks are treated completely independent

Note that the tasks config entries live “top level”, which means although you select a config file via tasks=fake, the modification of entries has no tasks prepended (aka. ´´pivot.name=MY_TASK``). Having a large pool of tasks is prone for typos during CLI interaction which can be resolved either via creating a config file (you may use _template.yaml as a basis) or using the MMLJobDescription jointly with a JobRunner.

none

By default no tasks are given.

task_list
default: []
  • the task list determines which TaskStruct are available in the scheduler

  • must be provided straight as “task_list=[task_1,task_2,…]” -> do NOT call “tasks.task_list=…”

pivot
name
default: False
  • the pivot task is a special highlighted task

  • it will be added to the list of available tasks automatically

  • must be provided straight as “pivot.name=task_1” -> do NOT call “tasks.pivot.name=…”

tags
default: ‘’
  • allows to attach (multiple) tags to the pivot task

  • use as ‘+TAG_1?PAR_1?PAR_2+TAG_2+TAG_3?PAR_3’ (+ separates tags and ? allows to provide parameters to tags)

  • will be attached to the pivot task automatically

  • must be provided straight as “pivot.tags=+tag_1+tag_2” -> do NOT call “tasks.pivot.tags=…”

tagging
all
default: ‘’
  • convenience methods for tagging all tasks at once

  • usage is identical to pivot.tags

  • if a pivot task is provided make sure to have adapted pivot.name or pivot.tags identical

  • must be provided straight as “tagging.all=+tag_1+tag_2” -> do NOT call “tasks.tagging.all=…”

variants
default: []
  • creates variants for all tasks, so multiple differently tagged versions of each task

  • will result in n_tasks * n_tags tasks to be present

  • use ‘+identity’ to keep an unmodified variant

  • must be provided straight as “tagging.variants=[+tag_1,+tag_2]” -> do NOT call “tasks.tagging.variants=…”

fake

This config points to the fake_task and is intended for debugging and testing.

task_list
default: []
  • the task list determines which TaskStruct are available in the scheduler

  • must be provided straight as “task_list=[task_1,task_2,…]” -> do NOT call “tasks.task_list=…”

pivot
name
default: ‘mml_fake_task’
  • the pivot task is a special highlighted task

  • the mml_fake_task is a dummy classification task for testing purposes

  • it will be added to the list of available tasks automatically

  • must be provided straight as “pivot.name=task_1” -> do NOT call “tasks.pivot.name=…”

tags
default: ‘’
  • allows to attach (multiple) tags to the pivot task

  • use as ‘+TAG_1?PAR_1?PAR_2+TAG_2+TAG_3?PAR_3’ (+ separates tags and ? allows to provide parameters to tags)

  • will be attached to the pivot task automatically

  • must be provided straight as “pivot.tags=+tag_1+tag_2” -> do NOT call “tasks.pivot.tags=…”

tagging
all
default: ‘’
  • convenience methods for tagging all tasks at once

  • usage is identical to pivot.tags

  • if a pivot task is provided make sure to have adapted pivot.name or pivot.tags identical

  • must be provided straight as “tagging.all=+tag_1+tag_2” -> do NOT call “tasks.tagging.all=…”

variants
default: []
  • creates variants for all tasks, so multiple differently tagged versions of each task

  • will result in n_tasks * n_tags tasks to be present

  • use ‘+identity’ to keep an unmodified variant

  • must be provided straight as “tagging.variants=[+tag_1,+tag_2]” -> do NOT call “tasks.tagging.variants=…”