Compute

Create reusable compute configurations for processing and training jobs.
View as Markdown

Compute configurations let you choose the machine resources used for long-running platform jobs.

Use processing compute for ingestion and onboarding. Use training compute for model training. Create each configuration once, then reuse its id in the workflows that need it.

How it works

Each compute configuration has a name, a workload type, and a machine type.

FieldDescription
nameA readable name for the configuration.
compute_typeThe workload the configuration is used for. Use PROCESSING or TRAINING.
machine_typeThe machine type used to run the job.

Larger machine types can help with larger workloads or faster jobs, but they may increase cost.

Create a processing configuration

Processing configurations are used by ingestion and onboarding workflows.

First, retrieve the available processing machine types. Choose one of the returned name values for machine_type.

GET
/machine-types
1curl https://api.hi.umnai.com/machine-types \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"
Response
1{
2 "data": [
3 {
4 "name": "ml.m5.4xlarge",
5 "cpus": 16,
6 "cpu_memory_gb": 64,
7 "created_at": "2026-03-15T10:15:30.000000Z",
8 "component": "PROCESSING",
9 "gpus": 0,
10 "gpu_memory_gb": 0
11 },
12 {
13 "name": "ml.m5.8xlarge",
14 "cpus": 32,
15 "cpu_memory_gb": 128,
16 "created_at": "2026-03-15T10:15:30.000000Z",
17 "component": "PROCESSING",
18 "gpus": 0,
19 "gpu_memory_gb": 0
20 }
21 ],
22 "pagination": {
23 "total_items": 2,
24 "items_per_page": 2,
25 "current_page": 1,
26 "total_pages": 1
27 }
28}

Then create the compute configuration with compute_type: "PROCESSING".

POST
/compute-configurations
1curl -X POST https://api.hi.umnai.com/compute-configurations \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "name": "Sample Compute Configuration",
6 "compute_type": "PROCESSING",
7 "machine_type": "ml.m5.4xlarge"
8}'
Response
1{
2 "id": "351df95006b1350e597762a1d58e9319",
3 "name": "Sample Compute Configuration",
4 "machine_type": "ml.m5.4xlarge",
5 "compute_type": "PROCESSING",
6 "account": {
7 "id": "e268443e43d93dab7ebef303bbe9642f",
8 "name": "Sample Account"
9 },
10 "created_at": "2026-03-25T15:23:50.965824Z",
11 "created_by": {
12 "id": "dad46b2058752ffde5eaf02f1eb6abd5",
13 "name": "Sample User"
14 },
15 "updated_at": null
16}

Save the returned id. You will use it when creating ingestion and onboarding configurations.

Create a training configuration

Training configurations are used by model training workflows.

First, retrieve the available training machine types. Choose one of the returned name values for machine_type.

GET
/machine-types
1curl https://api.hi.umnai.com/machine-types \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"
Response
1{
2 "data": [
3 {
4 "name": "ml.m5.4xlarge",
5 "cpus": 16,
6 "cpu_memory_gb": 64,
7 "created_at": "2026-03-15T10:15:30.000000Z",
8 "component": "TRAINING",
9 "gpus": 0,
10 "gpu_memory_gb": 0
11 },
12 {
13 "name": "ml.g5.4xlarge",
14 "cpus": 16,
15 "cpu_memory_gb": 64,
16 "created_at": "2026-03-15T10:15:30.000000Z",
17 "component": "TRAINING",
18 "gpus": 1,
19 "gpu_memory_gb": 24
20 }
21 ],
22 "pagination": {
23 "total_items": 2,
24 "items_per_page": 2,
25 "current_page": 1,
26 "total_pages": 1
27 }
28}

Then create the compute configuration with compute_type: "TRAINING".

POST
/compute-configurations
1curl -X POST https://api.hi.umnai.com/compute-configurations \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "name": "Sample Compute Configuration",
6 "compute_type": "TRAINING",
7 "machine_type": "ml.m5.4xlarge"
8}'
Response
1{
2 "id": "351df95006b1350e597762a1d58e9319",
3 "name": "Sample Compute Configuration",
4 "machine_type": "ml.m5.4xlarge",
5 "compute_type": "TRAINING",
6 "account": {
7 "id": "e268443e43d93dab7ebef303bbe9642f",
8 "name": "Sample Account"
9 },
10 "created_at": "2026-03-25T15:23:50.965824Z",
11 "created_by": {
12 "id": "dad46b2058752ffde5eaf02f1eb6abd5",
13 "name": "Sample User"
14 },
15 "updated_at": null
16}

Save the returned id. You will use it when creating training configurations.