Konfigurera AI Runtime-paketuppgifter

Använd denna referens för att anpassa en ai_runtime_task i Deklarative Automation Bundles. För körbara exempel som schemalägger en GPU-arbetsbelastning och lägger till förbehandlingsuppgifter, börja med schemalägg GPU-arbetsbelastningar och komponera uppgifter.

För uppgiftsfält och deras definitioner, se AI Runtime-uppgiftsreferensen. Ställ in omförsök, timeouts, behörigheter och environment_key på den omgivande uppgiften eller jobbet.

Skicka din träningskod

Paketet synkar filer som command.sh vid distribution. En arbetsbelastning endast med kommando kan peka command_path på ${workspace.file_path}/command.sh och utelämna code_source_path.

För en separat katalog med träningskod, sätt code_source_path till en paketerad artefakt eller en arbetsyta eller volymväg.

Paketera en lokal katalog

Deklarera en tgz artefakt för att paketera din kod på databricks bundle deploy. Denna konfigurationsfragment paketerar src/ och pekar uppgiften mot det resulterande arkivet:

artifacts:
  code:
    type: tgz
    path: .
    include: [src]
    files:
      - source: ./dist/code.tgz

resources:
  jobs:
    train:
      tasks:
        - task_key: train
          ai_runtime_task:
            code_source_path: ./dist/code.tgz

Runtimen extraherar arkivet och sätter CODE_SOURCE_PATH till sin toppnivåkod. Med path: . och , innehåller src/train.py arkivet och CODE_SOURCE_PATH är /databricks/code_source/srcinclude: [src]. Efter att ha bytt till den katalogen, kör python train.py:

#!/usr/bin/env bash
set -euo pipefail
cd "$CODE_SOURCE_PATH"
python train.py

För artefaktinställningar, inklusive path, include, , gitoch files, se referensen för bundle artefakter.

Använd uppladdad kod

Ställ code_source_path in på en /Workspace/… eller /Volumes/… sökväg för ett kodarkiv som redan är uppladdat. Paketet använder den vägen utan att paketera din lokala katalog.

Konfigurera beräkning och miljöer

Sätt accelerator_count till en multipel av GPU:erna per nod kodad i accelerator_type. Till exempel, GPU_8xH100 med accelerator_count: 16 kör på två noder. Se Hårdvarualternativ för hårdvaruguidning.

För en arbetsbelastning med flera noder kör AI Runtime kommandot på varje nod. Uppgiftsmiljön inkluderar NUM_NODES, WORLD_SIZE, LOCAL_WORLD_SIZE, , MASTER_ADDRoch MASTER_PORT. Läs dessa variabler i ditt distribuerade träningskommando.

Deklarera beroenden i jobbets environments block och välj miljön med uppgiftens environment_key. Följande konfigurationsfragment installerar PyTorch i träningsmiljön:

resources:
  jobs:
    train:
      tasks:
        - task_key: train
          environment_key: training
      environments:
        - environment_key: training
          spec:
            environment_version: '6'
            dependencies:
              - torch

Använd environment_version för en standardmiljö. För att använda en Databricks AI-miljö, sätt base_environment istället till exempel workspace-base-environments/databricks_ai_v6. Se Konfigurera din miljö.

För en anpassad Docker-image, sätt docker_image_url på ai_runtime_task och följ Använd anpassade Docker-images med den äldre Python CLI:n.

Skicka konfiguration och data till uppgifter

Definiera en jobbnivå-entry environment_variables och välj den med uppgiftens environment_variables_key. Sätt in variables vanliga värden och använd {{secrets/scope/key}} dem för hemliga referenser. Denna konfiguration kräver miljövariablerna som förhandsgranskas i Konfigurera miljövariabler för serverlösa jobb.

För att skicka parametrar genom HYPERPARAMETERS_PATH, spara en hyperparameters.yaml fil bredvid skriptet som refereras av command_path. Bundlet synkar båda filerna, och runtime-filen ställs HYPERPARAMETERS_PATH in till parameterfilen för ditt träningskommando. För konvertering från en befintlig arbetsbelastnings-YAML, se Konvertera en AI Runtime-arbetsbelastning till ett paket.

Note

An ai_runtime_task stöder inte jobbuppgiftsvärden ({{tasks.<task_key>.values.<name>}} eller dbutils.jobs.taskValues). För att skicka data mellan uppgifter, skriv den till en delad plats, såsom en Unity Catalog-volym, och använd samma sökväg i båda uppgifterna.

Ytterligare resurser