İş yükü YAML başvurusu

Important

Bu özellik Genel Önizleme aşamasındadır.

öğesine geçirdiğiniz databricks air run -fiş yükü YAML yapılandırmasında bir eğitim işinin deneme adını, işlemini, komutunu, ortamını ve kod kaynağını tanımlayın. Bu sayfa, talep üzerine A10 ve H100 iş yükleri için yapılandırmayı ele almaktadır.

Note

CLI, iş yükünü doğrulamak için kullandığı aynı şemadan yapılandırma yardımı üretir. Yüklü versiyonunuz için tam saha listesini açın databricks air run -h config . databricks air run -h config.<section> Kesit başına detay için (örneğin, databricks air run -h config.environment) kullanın.

En az yapılandırma

experiment_name: my-training
environment:
  dependencies:
    - mlflow
compute:
  num_accelerators: 1
  accelerator_type: GPU_1xA10
command: echo "Hello World"

Şu şekilde gönder:

databricks air run -f train.yaml -p profile

Temel kavramlar

Gerekli alanlar deneyi, hesaplama kaynaklarını ve komutları tanımlar. Isteğe bağlı alanlar bağımlılıkları, kodları ve çalıştırma davranışlarını yapılandırır.

Çekirdek alanlar

Çoğu eğitim yapılandırması beş bileşenden oluşur:

  1. experiment_name (Zorunlu): Bir MLflow deneyi oluşturur veya ekler. 1 ila 100 ASCII harf, rakam, tire veya alt çizgi kullanın.
  2. environment(Isteğe bağlı): Python bağımlılıkları veya temel bir ortam sürümü.
  3. compute (Gerekli): GPU kaynakları (tip ve sayı).
  4. command (Zorunlu): Eğitimi başlatmak için en fazla 1.000 satırlık boş olmayan bir shell komutu veya script.
  5. code_source (Isteğe bağlı): Uzaktan erişilebilir eğitim koduna giden yol.

Desteklenen değerler ve alan kısıtlamaları için bkz. Referans.

İlk eğitim işiniz

experiment_name: simple-training
environment:
  dependencies:
    - torch
    - transformers
compute:
  num_accelerators: 8
  accelerator_type: GPU_8xH100
code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
command: torchrun --nproc_per_node=8 $CODE_SOURCE_PATH/train.py

Bu yapılandırmada:

  • experiment_name adlı simple-training bir MLflow denemesi oluşturur (veya zaten varsa yeni bir çalıştırma ekler).
  • environmentVarsayılan ortamı kullanır ve ve ve transformerskurulurtorch.
  • compute bir H100 düğümü (8 H100 GPU) ayırır.
  • code_source klasörü repo konumunda bulunan $CODE_SOURCE_PATHdüğüme yükler.
  • command8 H100 GPU üzerinden train.py çalışırtorchrun. Dosya yerel olarak bulunur /home/username/repo/train.py .

Yaygın kullanım örnekleri

Eğitim kodunuzu yapılandırmak için ortam değişkenleri ve sırlar kullanın, betikte değerler gömmeden eğitim kodunuzu yapın.

Ortam değişkenleri ekleme

experiment_name: training-with-env
environment:
  dependencies:
    - torch
    - transformers
env_variables:
  BATCH_SIZE: '32'
  LEARNING_RATE: '0.001'
compute:
  num_accelerators: 8
  accelerator_type: GPU_8xH100
code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
    git:
      branch: main
command: torchrun --nproc_per_node=8 $CODE_SOURCE_PATH/train.py

Gizli dizileri kullanma (API anahtarları, belirteçler)

experiment_name: training-with-secrets
environment:
  dependencies:
    - torch
    - transformers
secrets:
  HF_TOKEN: 'my_scope/hf_token'
  WANDB_API_KEY: 'my_scope/wandb'
compute:
  num_accelerators: 8
  accelerator_type: GPU_8xH100
code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
    git:
      branch: main
command: torchrun --nproc_per_node=8 $CODE_SOURCE_PATH/train.py

Gizli diziler biçimini scope/key kullanır ve Databricks Gizli Dizileri'nde yapılandırılmalıdır. Bkz. Kurulum için gizli dizi yönetimi . Değişken adı hem env_variables de secrets'de görünemez.

Bir YAML şablonunu paylaşırken, diğer kullanıcıların kendi gizli dizilerini oluşturması veya başvuruda bulunan gizli diziye erişmesi gerekir.

Environment

Bloğu environment kullanarak Sunucusuz GPU ortamı seçin ve Python bağımlılıklarını kurun. Örneğin, aşağıdaki yapılandırma Standard ortam sürüm 4'ü seçer ve PyTorch ile Transformers'ı yükler:

environment:
  version: '4'
  dependencies:
    - torch
    - transformers

Ortam sürümü

environment.version isteğe bağlıdır ve iş yükü için yönetilen ortam sürümünü seçer.

Örnekler şunları içerir:

  • "4" veya "5" ilgili Standard ortam versiyonunu kullanmak gerekir.
  • "databricks_ai_v5" Databricks AI ortamı sürüm 5'i kullanmak için, bu sürüm önceden yüklenmiş ML'ye özgü paketleri içerir. (Tam paket listesi)

Aşağıdaki örnek, Databricks AI ortam sürüm 5'i seçer:

environment:
  version: 'databricks_ai_v5'
  dependencies: []

environment.dependencies belirttiğinizde environment.versionisteğe bağlıdır. Ek paketlere ihtiyacınız yoksa bunu çıkarın veya boş bir liste kullanın. Bağımlılık sağlıyorsanız, gereksinim dosyasına scaler yol değil, bir dizi dizi kullanın.

AI Çalışma Zamanı için mevcut ortamlar hakkında bilgi için bkz. Ortamınızı kurun.

Python bağımlılıkları

İş yükünüzün Python bağımlılıklarını satır içi liste olarak listeleyin.environment.dependencies

Bağımlılık formatı

Bağımlılık listesi Databricks Temel Ortam Belirtimini izler. Her giriş bir pip stili paket belirtimidir (örneğin, my-library==6.1). Liste aşağıdaki girdileri de kabul eder:

  • Gereksinimler dosyaları: kullanarak requirements.txtvar olan -r bir başvuru, örneğin-r '/Workspace/Shared/requirements.txt'. gibi $HOME ortam değişkenleri genişletilir.
  • Tekerlekler: bir dosyanın mutlak yolu .whl , örneğin /Workspace/Shared/path/to/simplejson-3.19.3-py3-none-any.whl.
  • Dizin URL'leri: dizin URL'si, örneğin --index-url https://pypi.org/simple.
environment:
  version: '4'
  dependencies:
    - --index-url https://pypi.org/simple
    - -r '/Workspace/Shared/requirements.txt'
    - my-library==6.1
    - /Workspace/Shared/path/to/simplejson-3.19.3-py3-none-any.whl

Desteklenen kurulum bayrakları

Bağımlılıklar uv ile yüklenir. Aşağıdaki pip stili bayraklar liste girdileri olarak desteklenir:

  • Yüklemenin tamamına uygulanır: --index-url, --extra-index-url, ve --find-links (-f) paket dizinlerini ayarlayın veya genişletin.
  • Aşağıdaki bağımlılıklara uygulanır: --no-deps, --no-build-isolation, --no-cache-dirve --force-reinstall. Bayrağı kendi satırına (veya belirtimden önce) ve ardından uygulandığı bağımlılığı yerleştirin.

Örneğin, zaten yüklü flash-attn (derleme yalıtımı olmadan) ve kendi bağımlılıklarını çözmeden yüklemek torch için:

environment:
  version: '4'
  dependencies:
    - torch
    - --no-build-isolation
    - --no-deps
    - flash-attn

Note

--trusted-host desteklenmez. uv dizin URL'si başına güveni yapılandırdığından veya --index-url kullanın--extra-index-url.

Özel Docker görüntüleri

Yönetilen bir ortama alternatif olarak, Artifact Registry üzerinden özel bir Docker konteyner görüntüsü belirtin ve .environment.unity_catalog_image Değer, kayıt istasyonu adı olmadan formatı <catalog>.<schema>.<image>:<tag> kullanır. environment.unity_catalog_image hem environment.dependencies de environment.versionboş bir bağımlılık listesi dahil olmak üzere karşılıklı olarak dışlanır.

experiment_name: my-dcs-training
environment:
  unity_catalog_image: main.ml.training:v1
compute:
  num_accelerators: 1
  accelerator_type: GPU_1xA10
command: python /app/train.py

Özel bir görüntü kullanmadan önce, iş yükünü göndermek için kullandığınız aynı çalışma alanında Artifact Registry sayfasına gönderin. Artifact Registry ile başlayın ve AI Runtime ile özel Docker görüntülerini kullanın bölümünü inceleyin.

Kod kaynaklarıyla çalışma

Blok, code_source eğitim işinin çalıştırabilmesi için yerel kodu karşıya yükler.

  • root_path anlık görüntü için yerel dizindir. Blok git: olmadan, Databricks CLI, çalışma ağacını paketler, taahhüt edilmemiş değişiklikler dahil, Git kurallarına saygı gösterir.
  • Bunun yerine bir Git versiyonunu anlık fotoğraflamak için, bir branch veya commitile bir git: blok ekleyin. Dizinin bir Git deposunda olması gerekir. Eğer root_path bir alt dizine işaret ederse, sadece o alt ağac paketlenir.
  • Büyük depolar için bir include_paths alt kümenin anlık görüntüsünü almanızı sağlar.

En küçük örnek

experiment_name: simple-training
environment:
  dependencies:
    - torch
    - transformers
compute:
  num_accelerators: 8
  accelerator_type: GPU_8xH100
code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
command: python $CODE_SOURCE_PATH/train.py

Uzak makinede kod konumuna yerleştirilir /databricks/code_source/<directory_name>; burada <directory_name> son yol bileşenidir root_path. $CODE_SOURCE_PATH bu mutlak yola ayarlanır, bu nedenle konumu sabit kodlamak yerine komutunuzda kullanın.

Git depoları: dal veya işlemeye göre sabitleme

Git depoları için, kod sürümünü branch veya commit SHA'ya göre pin etmek için bir git: blok ekleyin. branch ve commit birbirini dışlar: blok içinde tam olarak bir tane belirtin. Revizyon yerel olarak olmalı. CLI uzak bir depodan getirmez.

Bir dala sabitleyin (bu dalın yerel HEAD'ini kullanır):

code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
    git:
      branch: main # Uses local HEAD of main (no remote fetch)
command: bash $CODE_SOURCE_PATH/train.sh

İşleme SHA'sına sabitle (tam yeniden üretilebilirlik):

code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
    git:
      commit: abc1234567 # Pins specific commit
command: bash $CODE_SOURCE_PATH/train.sh

Anahtar alanları:

  • root_path (Zorunlu): Anlık görüntüye yerel bir yol veya bir alt dizin.
  • git.branch (İsteğe bağlı): Şubenin yerel HEAD'ini kullanır. Seçilen yollarda belirlenmemiş değişiklikler, bu taahhütle ilgili bir parça olmadıkları için hata oluşturur.
  • git.commit (İsteğe bağlı): Belirli bir yerel olarak mevcut commit kullanır. Taahhüt edilmemiş değişiklikler dahil değildir.
  • git.remote: Bu alanı çıkarın veya .false Uzaktan getirme veya true uzaktan bir isimle desteklenmemektedir. İş yükünü göndermeden önce revizyonu yerel olarak getirin.

Bloku git: çıkarırsanız, Databricks CLI çalışma ağacını paketler; bu da dahil olmak üzere kararlı olmayan değişiklikler ve göz ardı edilen dosyalar hariç tutulur. Ek alan gerekmez.

Git dışı dizinler

Git deposu olmayan dizinleri anlık çekebilirsiniz. git: bloğunu atlayın. CLI, dizini paketlerken Git kurallarını görmezden gelir. Hem çalışma ağacı hem de Git sabitli anlık görüntüler, snapshot önbellek anahtarı değişmediğinde yüklenen arşivi yeniden kullanabilir.

code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/my_project
command: python $CODE_SOURCE_PATH/train.py

ile klasör filtreleme include_paths

Büyük monorepolar için, karşıya yükleme ve indirme süresini ve anlık görüntü boyutunu azaltmak için anlık görüntü yalnızca belirli klasörler:

code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
    include_paths:
      - research/models
      - research/common
      - research/configs
command: python $CODE_SOURCE_PATH/research/models/launch_training.py

Önemli noktalar:

  • Alan isteğe bağlıdır. Eğer atlanırsa, CLI yukarıda açıklanan anlık görüntü modunu kullanarak dosyaları seçer root_path . Boş bir liste koymayın.
  • Yollar ile root_pathilişkili olmalı ve öncüsü /olmamalıdır.
  • .. izin verilmez. Ana dizinlere referans veremezsiniz.

Bir hacme snapshot'ları yükleyin

Varsayılan olarak, CLI anlık görüntüleri çalışma alanınıza yükler. Bunun yerine bir Unity Kataloğu cildi kullanmak için, şu ile /Volumes/başlayan bir yola ayarlayıncode_source.snapshot.remote_volume:

code_source:
  type: snapshot
  snapshot:
    root_path: .
    remote_volume: /Volumes/main/ml/training-code

Hacime erişiminiz ve ona dosya yazma izniniz olmalıdır.

Gelişmiş özellikler

Aşağıdaki alanlarla eğitim parametrelerini, davranışı yeniden denemeyi ve maliyet atfümasyonunu yapılandırın.

Özel hiper parametreler

ile yapılandırılmış yapılandırmayı eğitim betiğinize geçirin HYPERPARAMETERS_PATH:

experiment_name: parameterized-training
environment:
  dependencies:
    - torch
    - transformers
compute:
  num_accelerators: 8
  accelerator_type: GPU_8xH100
code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
    git:
      branch: main
command: torchrun --nproc_per_node=8 $CODE_SOURCE_PATH/train.py
parameters:
  model:
    name: 'gpt2'
    hidden_size: 768
  training:
    batch_size: 32
    learning_rate: 0.0001

Bunları betiğinizde okuyun:

import os
import yaml

with open(os.environ['HYPERPARAMETERS_PATH']) as f:
    params = yaml.safe_load(f)

learning_rate = params['training']['learning_rate']
model_name = params['model']['name']

İş güvenilirliği

experiment_name: reliable-training
environment:
  dependencies:
    - torch
    - transformers
compute:
  num_accelerators: 8
  accelerator_type: GPU_8xH100
code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo
    git:
      branch: main
command: torchrun --nproc_per_node=8 $CODE_SOURCE_PATH/train.py
max_retries: 2
timeout_minutes: 90

max_retries: 2 İlk denemeden sonra en fazla iki deneme hakkı verir. Varsayılan değer: 3. Denemeleri max_retries: 0 devre dışı bırakın.

timeout_minutes: 90 gönderilen iş çalışması için 90 dakikalık bir mola belirler. Her deneme için ayrı bir 90 dakikalık bütçe değil. Değer en az 1olarak olmalıdır. Eğer hariç tutulursa, arka uç varsayılan uygulanır.

Maliyet atfı

Mevcut sunucusuz kullanım politikasına bir iş yükü ekleyin.usage_policy_name İş yükü başlatıldığında ad ilkenin kimliğine çözümlenir. Alternatif olarak, mevcut bir poliçenin UUID'sine ayarlayın usage_policy_id . Bu alanlar birbirini dışlar. Poliçe adları 1 ile 127 karakter arasında olmalıdır. Kurulum için bkz . Sunucusuz kullanım ilkeleriyle öznitelik kullanımı.

experiment_name: my-training
environment:
  dependencies:
    - mlflow
compute:
  num_accelerators: 1
  accelerator_type: GPU_1xA10
command: echo "Hello World"
usage_policy_name: my team policy

Reference

Bu tabloları bu sayfada açıklanan talep üzerine iş yükü alanları ve GPU yapılandırmaları için kullanın. Kurulum CLI'nız tarafından kabul edilen tam şema için çalıştırın databricks air run -h config.

Çekirdek alan referansı

Alan Türü Description Example
experiment_name String Gerekli MLflow deney adı. 1 ila 100 ASCII harf, rakam, tire veya alt çizgi. "my-training-job"
mlflow_artifact_location String Çalıştırma tarafından kaydedilen MLflow artefaktlarının kök konumu. Optional. /Volumes/main/default/mlflow-artifacts/my-training
environment.dependencies liste Bağımlılık spesifikasyonlarının isteğe bağlı listesi. ["torch", "transformers"]
environment.version dize veya tamsayı Yönetilen ortam versiyonu. Optional. Eğer hariç varsa varsayılan yöntemi kullanır. Çevre versiyonuna bakınız. "4", "5", "databricks_ai_v5"
compute.num_accelerators int GPU sayısı. Seçilen compute.accelerator_typedüğüm için GPU'ların katı olmalı. 1, 4, 8
compute.accelerator_type String GPU tipi ve düğüm şekli dahil hızlayıcı konfigürasyonu. Desteklenen GPU yapılandırmalarına bakınız. "GPU_1xA10", "GPU_1xH100", "GPU_8xH100"
code_source dict Kod kaynağı yapılandırması. Bkz . Kod kaynaklarıyla çalışma.
command String En fazla 1.000 satırlık boş olmayan kabuk komutu veya script. torchrun --nproc_per_node=8 train.py

Desteklenen GPU yapılandırmaları

CLI, hızlandırıcı isimlerini büyük harf hassasiyetiyle eşleştiriyor. Uygunluk ve kotalar çalışma alanınıza bağlıdır.

accelerator_type Düğüm başına GPU sayısı num_accelerators Gereksinim Notlar
GPU_1xA10 1 Herhangi bir pozitif tam sayı Tek A10, geliştirme ve küçük iş yükleri için uygundur.
GPU_1xH100 1 Herhangi bir pozitif tam sayı Tek H100.
GPU_8xH100 8 8'in pozitif katı Dağıtılmış eğitim için tipik olan tam H100 düğümü.

Hızlandırıcı yetenekleri ve önerilen kullanım senaryoları için Donanım seçenekleri bölümüne bakınız.

compute.num_accelerators iş yükü için toplam GPU sayısıdır. Seçilen compute.accelerator_typeiçin her düğüm için GPU'ların katı olmalı.

İsteğe bağlı alanlar

Bu alanlar, gerekli deney, hesaplama ve komutun yanı sıra koşuyu yapılandırır:

Alan Türü Kısıtlamalar ve davranış
env_variables Dizelerin haritası Düz ortam değişkenleri. Bir isim de içinde secretsyer alamaz.
secrets Dizelerin haritası Ortam değişken isimleri gizli referanslara eşlenir scope/key .
parameters harita Serbest biçimli, iç içe eğitim parametreleri .HYPERPARAMETERS_PATH
max_retries integer Negatif olmayan tekrar deneme sayısı. Varsayılan değer 3’dır. 0 Yeniden denemeleri devre dışı bırakmak için olarak ayarlayın.
timeout_minutes integer İş süresi dakikalar içinde. En azından 1öyle olmalı. Eğer hariç tutulursa, arka uç varsayılan uygulanır.
idempotency_token String Gönderimleri deduplicate etmek için en fazla 64 karakterlik boş olmayan token. Bayrak --idempotency-key önceliklidir.
mlflow_run_name String 1 ile 100 ASCII harf, rakam, tire veya alt çizgi isimini çalıştırın. Varsayılan değer experiment_name’dır.
mlflow_experiment_directory String MLflow deneyi için workspace dizini. ile /Workspacebaşlamalıdır. CLI gerekirse dizini oluşturur.
mlflow_artifact_location String Artifact kökü bir dbfs:/ URI veya /Volumes/ yol olarak kullanılır. CLI, URI'lere dbfs:/Volumes/ giden yolları normalleştirir/Volumes/.
permissions nesne listesi Her hibe için boş level olmayan ve tam olarak bir , user_namegroup_name, veya service_principal_name. Izin seviyeleri çalışma alanı tarafından doğrulanır.
usage_policy_name String Mevcut kullanım politikası adı 1'den 127'ye kadar değişiyor. usage_policy_id ile birbirini dışlar.
usage_policy_id String Mevcut kullanım politikası UUID. usage_policy_name ile birbirini dışlar.

Ortam yapılandırması

environment:
  version: '4'
  dependencies:
    - torch
    - transformers
env_variables:
  BATCH_SIZE: '32'
secrets:
  HF_TOKEN: 'my_scope/hf_token'

Ortam sürümleri, bağımlılık formatı ve desteklenen kurulum bayrakları için Çevre'ye bakınız.

Özel Docker görüntüsü

environment:
  unity_catalog_image: main.ml.training:v1

Bu alan ve environment.dependenciesenvironment.versionile birbirini dışlar. Kullanmadan önce görüntüyü Artifact Registry sayfasına gönderin. Özel Docker görüntülerini AI Çalışma Zamanı ile Kullan bölümünü inceleyin.

Çalıştırma izinleri

Gönderilen işe başvuru için bir müdür ile erişim ver. Örneğin:

permissions:
  - group_name: training-team
    level: CAN_VIEW
  - user_name: trainer@example.com
    level: CAN_MANAGE

MLflow deney dizini

Deneyi paylaşılan bir çalışma alanı dizininde depolayın:

mlflow_experiment_directory: /Workspace/Shared/training-experiments

Kod kaynağı yapılandırması

code_source:
  type: snapshot
  snapshot:
    root_path: /home/username/repo # REQUIRED — local path to repo or directory
    git: # Optional (git repos only) — pin to a branch or commit
      branch: main # Uses the branch's local HEAD
      # commit: abc1234567 # Mutually exclusive with 'branch'
      remote: false # Optional; remote fetching is not supported
    include_paths: # Optional — filter included paths
      - src/
      - configs/

Alan kısıtlamaları:

  • git.branch ve git.commit birbirini dışlar: blok içinde git: tam olarak bir tane belirtin.
  • Atla git.remote ya da ayarla false. CLI, uzaktan kumandadan revizyon getirmez.
  • Bloğu git: çıkarırsanız, çalışma ağacı paketlenir ve Git görmezden gelme kurallarına saygı gösterir, seçilen dosyalarda taahhüt edilmemiş değişiklikler dahil.

Özel parametreler

aracılığıyla HYPERPARAMETERS_PATHiş yüküne geçirilir:

parameters:
  model:
    name: 'gpt2'
    hidden_size: 768
  training:
    batch_size: 32

MLflow çalıştırma adı

1 ila 100 ASCII harf, rakam, tire veya alt çizgi kullanın. Eğer atlanırsa, çalışma adı varsayılan olarak olarak .experiment_name

mlflow_run_name: 'experiment-001-baseline'

MLflow artefakt konumu

MLflow deneyi için eserleri özel bir kök konumunda depolamak için ayarlandı mlflow_artifact_location . Bu alanı atlarsanız, yeni bir deney varsayılan DBFS konumunu kullanır, örneğin dbfs:/databricks/mlflow-tracking/<experiment-id>/....

mlflow_artifact_location: /Volumes/main/default/mlflow-artifacts/my-training

DBFS erişimi kısıtlıysa veya Unity Catalog'u tercih ediyorsanız, ya bir /Volumes/<catalog>/<schema>/<volume>/... yol ya da eşdeğer dbfs:/Volumes/<catalog>/<schema>/<volume>/... URI'yi belirtin. Databricks CLI, MLflow'un kullandığı URI'ye bir /Volumes yolu dbfs: dönüştürür.

Her deneye özgü bir konum kullanın. Bir MLflow deneyinin artefakt konumu, deney oluşturulduğunda sabitlenir. Mevcut experiment_name bir deney tespit edilirse, mlflow_artifact_location onun eser konumuyla eşleşmeli veya çıkarılmalıdır. Farklı bir konum kullanmak için yeni bir deney adı belirtin.

Yol çözünürlüğü

Göreceli değerler, code_source.snapshot.root_path iş yükü YAML dosyasının dizininden çözülür. include_paths Girişler 'den çözülür root_path. İçindeki command yollar, uzaktan çalışma zamanındaki dosyalara atıfta bulunur, yerel makinenize değil. Yüklenen koda referans vermek için kullanın $CODE_SOURCE_PATH .

Klasör yapısı:

/home/username/my-project/
├── train.yaml
└── scripts/
    └── train.py

YAML yapılandırması:

experiment_name: my-training
environment:
  dependencies:
    - torch
    - transformers
compute:
  num_accelerators: 8
  accelerator_type: GPU_8xH100
code_source:
  type: snapshot
  snapshot:
    root_path: . # Relative to train.yaml
    git:
      branch: main
command: torchrun --nproc_per_node=8 $CODE_SOURCE_PATH/scripts/train.py