Skip to content

Workload API configuration

The Workload API schedules each Workload's container groups onto a resource bundle (runtime.containerGroups[].resourceBundles). A bundle is only eligible for this if its use_cases list includes "workload"—bundles that support other use cases (for example, customModel) are not automatically available to the Workload API.

Default bundles

The CPU and GPU resource bundles that ship with DataRobot by default (for example, cpu.medium, cpu.5xlarge, and the default GPU bundles) already include "workload" in their use_cases. No configuration is required to use these out of the box.

Adding custom resource bundles

If you configure custom resource bundles for your installation—for example, following the GPU bundle configuration described in Custom Models Configuration—those bundles are not eligible for Workloads unless you explicitly add "workload" to each bundle's use_cases.

This applies to any of the environment variables that define resource bundles: LRS_CPU_CONTAINER_SIZES, LRS_GPU_CONTAINER_SIZES.

core:
  config_env_vars:
    LRS_GPU_CONTAINER_SIZES: |-
      [
        {
          "id": "gpu.medium",
          "name": "GPU - M",
          "description": "1 x NVIDIA A10 | 24GB VRAM | 8 CPU | 32GB RAM",
          "gpu_maker": "nvidia",
          "gpu_type_label": "nvidia-a10g-1x",
          "gpu_count": 1,
          "gpu_memory_mb": 24576,
          "cpu_count": 8,
          "memory_mb": 32768,
          "use_cases": ["customModel", "workload"]
        }
      ]

In this example, gpu.medium supports both Custom Models and Workloads because its use_cases list includes both customModel and workload. A bundle that should serve Workloads exclusively only needs "use_cases": ["workload"].

Verify bundle availability

After updating a bundle's configuration, confirm it's visible to the Workload API by querying the compute bundles endpoint with the workload use case:

curl -s "${DATAROBOT_ENDPOINT}/mlops/compute/bundles/?useCases=workload" \
  -H "Authorization: Bearer ${DATAROBOT_API_TOKEN}"

A bundle you've added or updated should appear in the response before you reference its id in runtime.containerGroups[].resourceBundles.

Notes: - Adding a bundle to use_cases for another purpose (such as customModel) does not make it eligible for Workloads—"workload" must be listed explicitly.