From 9e1b58f8afd09cfd7a3eeb3f4a9584041f8cdfa0 Mon Sep 17 00:00:00 2001 From: Caroline Chen <324939130+caroline-db@users.noreply.github.com> Date: Fri, 30 Oct 2026 18:54:45 +0000 Subject: [PATCH 1/4] air: show compute options in accelerator type help --- .nextchanges/air/accelerator-field-compute-help.md | 1 + acceptance/air/config-help/output.txt | 4 ++++ cmd/air/run.go | 2 +- cmd/air/runconfig.go | 2 +- cmd/air/runconfig_test.go | 7 +++++++ 5 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 .nextchanges/air/accelerator-field-compute-help.md diff --git a/.nextchanges/air/accelerator-field-compute-help.md b/.nextchanges/air/accelerator-field-compute-help.md new file mode 100644 index 00000000000..b7b3aa3f817 --- /dev/null +++ b/.nextchanges/air/accelerator-field-compute-help.md @@ -0,0 +1 @@ +* Show workspace-supported accelerator types in `databricks air run -h config.compute.accelerator_type`. diff --git a/acceptance/air/config-help/output.txt b/acceptance/air/config-help/output.txt index 16fedb9ffa9..9e2519b2c2f 100644 --- a/acceptance/air/config-help/output.txt +++ b/acceptance/air/config-help/output.txt @@ -128,6 +128,10 @@ config.environment.version config.compute.accelerator_type Which accelerator to run on, e.g. GPU_1xA10. See https://docs.databricks.com/aws/en/machine-learning/ai-runtime/cli/yaml-config#reference for the current list of supported GPU types. Matched case-sensitively. + Supported accelerator types: + GPU_1xH100 - 1 accelerator per node [Private Preview] + GPU_8xH100 - 8 accelerators per node + Type: string Required: no diff --git a/cmd/air/run.go b/cmd/air/run.go index d63193e5888..332f1aa1218 100644 --- a/cmd/air/run.go +++ b/cmd/air/run.go @@ -122,7 +122,7 @@ The path must be a separate argument: cobra reserves -h as a boolean, so } var computeOptions []computeOption - if field.path == "config.compute" { + if field.path == "config.compute" || field.path == "config.compute.accelerator_type" { computeOptions = loadComputeOptionsForHelp(c, args) } renderConfigField(c.OutOrStdout(), field, computeOptions) diff --git a/cmd/air/runconfig.go b/cmd/air/runconfig.go index 31c701cdc12..e4b8fb5411e 100644 --- a/cmd/air/runconfig.go +++ b/cmd/air/runconfig.go @@ -862,7 +862,7 @@ func renderConfigField(w io.Writer, f configField, computeOptions []computeOptio if f.help != "" { fmt.Fprintf(w, " %s\n", f.help) } - if f.path == "config.compute" && computeOptions != nil { + if (f.path == "config.compute" || f.path == "config.compute.accelerator_type") && computeOptions != nil { fmt.Fprintln(w, "\n Supported accelerator types:") if len(computeOptions) == 0 { fmt.Fprintln(w, " No accelerator types are currently available for AI Runtime in this workspace.") diff --git a/cmd/air/runconfig_test.go b/cmd/air/runconfig_test.go index e3c2f34520a..e2d4b47c934 100644 --- a/cmd/air/runconfig_test.go +++ b/cmd/air/runconfig_test.go @@ -984,12 +984,19 @@ func TestRunCommandHelp_NoConfigPath(t *testing.T) { // -h with a config path documents the field instead of the command, and does so // without the otherwise-required --file. func TestRunCommandHelp_ConfigPath(t *testing.T) { + srv := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + _, _ = w.Write([]byte(`{"compute_options":[{"hardware_accelerator":"GPU_FUTURE","per_node_accelerator_count":16}]}`)) + })) + t.Cleanup(srv.Close) + var out strings.Builder cmd := newRunCommand() + cmd.SetContext(cmdctx.SetWorkspaceClient(t.Context(), newTestWorkspaceClient(t, srv.URL))) cmd.SetOut(&out) cmd.SetArgs([]string{"-h", "config.compute.accelerator_type"}) require.NoError(t, cmd.Execute()) assert.Contains(t, out.String(), "config.compute.accelerator_type") + assert.Contains(t, out.String(), "GPU_FUTURE - 16 accelerators per node") assert.Contains(t, out.String(), "Type: string") assert.NotContains(t, out.String(), "Usage:") } From c0e1922e46e10f291f2c9f3b52516c99fdbd18ff Mon Sep 17 00:00:00 2001 From: Caroline Chen <324939130+caroline-db@users.noreply.github.com> Date: Fri, 30 Oct 2026 19:02:04 +0000 Subject: [PATCH 2/4] air: link accelerator help changelog --- .nextchanges/air/accelerator-field-compute-help.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.nextchanges/air/accelerator-field-compute-help.md b/.nextchanges/air/accelerator-field-compute-help.md index b7b3aa3f817..bdc6b13b9e0 100644 --- a/.nextchanges/air/accelerator-field-compute-help.md +++ b/.nextchanges/air/accelerator-field-compute-help.md @@ -1 +1 @@ -* Show workspace-supported accelerator types in `databricks air run -h config.compute.accelerator_type`. +* Show workspace-supported accelerator types in `databricks air run -h config.compute.accelerator_type`. ([#7275](https://github.com/databricks/cli/pull/7275)) From 6573cdc6b77ebdcff9dade0ae57483555b580f07 Mon Sep 17 00:00:00 2001 From: Caroline Chen <324939130+caroline-db@users.noreply.github.com> Date: Fri, 30 Oct 2026 20:06:02 +0000 Subject: [PATCH 3/4] air: update accelerator help snapshot --- acceptance/air/config-help/output.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/acceptance/air/config-help/output.txt b/acceptance/air/config-help/output.txt index 9e2519b2c2f..155c9fb2b9e 100644 --- a/acceptance/air/config-help/output.txt +++ b/acceptance/air/config-help/output.txt @@ -131,6 +131,7 @@ config.compute.accelerator_type Supported accelerator types: GPU_1xH100 - 1 accelerator per node [Private Preview] GPU_8xH100 - 8 accelerators per node + GPU_1xRTX6000 - 1 accelerator per node Type: string Required: no From 5fc3b187175bf4ca14032f05c25e180b7ece5bbf Mon Sep 17 00:00:00 2001 From: Caroline Chen <324939130+caroline-db@users.noreply.github.com> Date: Fri, 30 Oct 2026 22:33:42 +0000 Subject: [PATCH 4/4] air: use GA stage in compute help fixture --- acceptance/air/config-help/output.txt | 4 ++-- acceptance/air/config-help/test.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/acceptance/air/config-help/output.txt b/acceptance/air/config-help/output.txt index 155c9fb2b9e..4df01151206 100644 --- a/acceptance/air/config-help/output.txt +++ b/acceptance/air/config-help/output.txt @@ -75,7 +75,7 @@ config.compute Which accelerators to run on and how many. Supported accelerator types: - GPU_1xH100 - 1 accelerator per node [Private Preview] + GPU_1xH100 - 1 accelerator per node GPU_8xH100 - 8 accelerators per node GPU_1xRTX6000 - 1 accelerator per node @@ -129,7 +129,7 @@ config.compute.accelerator_type Which accelerator to run on, e.g. GPU_1xA10. See https://docs.databricks.com/aws/en/machine-learning/ai-runtime/cli/yaml-config#reference for the current list of supported GPU types. Matched case-sensitively. Supported accelerator types: - GPU_1xH100 - 1 accelerator per node [Private Preview] + GPU_1xH100 - 1 accelerator per node GPU_8xH100 - 8 accelerators per node GPU_1xRTX6000 - 1 accelerator per node diff --git a/acceptance/air/config-help/test.toml b/acceptance/air/config-help/test.toml index 79cb5772cdf..6759bc32089 100644 --- a/acceptance/air/config-help/test.toml +++ b/acceptance/air/config-help/test.toml @@ -9,7 +9,7 @@ Pattern = "GET /api/2.0/ai-training/compute-options" Response.Body = ''' { "compute_options": [ - {"hardware_accelerator": "GPU_1xH100", "per_node_accelerator_count": 1, "launch_stage": "PRIVATE_PREVIEW"}, + {"hardware_accelerator": "GPU_1xH100", "per_node_accelerator_count": 1, "launch_stage": "GA"}, {"hardware_accelerator": "GPU_8xH100", "per_node_accelerator_count": 8, "launch_stage": "GA"}, {"hardware_accelerator": "GPU_1xRTX6000", "per_node_accelerator_count": 1, "launch_stage": "GA"} ]