Uživatelské příručky pro modul runtime AI

Důležité

Modul runtime AI pro úlohy s jedním uzlem je ve verzi Public Preview. Distribuované trénovací rozhraní API pro úlohy s více GPU zůstává v beta verzi.

Migrujte stávající úlohy hloubkového učení z klasických clusterů Databricks do modulu AI Runtime, sledujte využití GPU a náklady s využitím fakturovatelné tabulky systému využití a vyhledejte ukázkové poznámkové bloky a opravy běžných chyb.

Migrace klasických úloh GPU na bezserverovou architekturu

Pokud přesouváte existující úlohu hloubkového učení z klasického clusteru Databricks (s Modulem Databricks Runtime ML) do bezserverového prostředí (s využitím AI Runtime), postupujte takto:

  1. Nahraďte kód závislý na clusteru. Odeberte všechny odkazy na distribuované školení založené na Sparku (například TorchDistributor) a nahraďte je dekorátorem @distributed z serverless_gpu.
  2. Aktualizujte načítání dat. Nahraďte přímé cesty DBFS cestami ke svazkům katalogu Unity (/Volumes/...). Nahraďte místní operace datového rámce Sparku službou Spark Connect. Pro streamování souborových dat ze svazků použijte UCVolumeDataset z serverless_gpu.data. Viz též Načtení dat v AI Runtime.
  3. Přeinstalujte závislosti. Nespoléhejte na předem nainstalované knihovny Databricks Runtime ML. Přidejte explicitní %pip install příkazy pro všechny požadované balíčky.
  4. Aktualizujte cesty kontrolních bodů. Přesun kontrolních bodů ze systému souborů DBFS nebo místního úložiště do svazků katalogu Unity (/Volumes/<catalog>/<schema>/<volume>/...). Pro distribuované ukládání kontrolních bodů použijte UCVolumeWriter a UCVolumeReader z serverless_gpu.data, které směrují vstupně-výstupní operace přes místní NVMe. Viz Ukládání kontrolních bodů modelu.
  5. Aktualizujte konfiguraci MLflow. Zajistěte, aby názvy experimentů používaly absolutní cesty a konfigurujte názvy spuštění experimentů tak, aby je bylo možné snadno restartovat.
  6. Nejprve interaktivně testujte. Před naplánováním pracovní zátěže jako úlohy ji ověřte v interaktivním poznámkovém bloku.

Sledování využití a nákladů

Můžete sledovat útratu vašeho AI systému Runtime dotazováním tabulky fakturovatelného využití systému (system.billing.usage). Následující dotaz vrátí celkové využití bezserverových úloh GPU:

SELECT
  SUM(usage_quantity)
FROM
  system.billing.usage
WHERE
  product_features.serverless_gpu IS NOT NULL

Další informace o schématu fakturovatelné tabulky využití najdete v tématu Referenční informace k tabulce systému fakturovatelného využití.

U SKU Trénování modelů se účtují poplatky za používání runtime AI za hodinu GPU podle následujících cen:

  • H100 na vyžádání: 7,00 USD/GPU hodina (USA – východ)
  • A10 na vyžádání: 4,90 USD/HODINA GPU (USA – východ)

Příklady poznámkových bloků

Následující kategorie ukázkových poznámkových bloků vám pomůžou začít:

Kategorie Description
Velké jazykové modely (LLM) Vyladění velkých jazykových modelů včetně metod efektivních parametrů (LoRA, QLoRA)
počítačové zpracování obrazu Rozpoznávání objektů, klasifikace obrázků a další úlohy CV
Systémy pro doporučování hlubokého učení Vytváření systémů doporučení s využitím moderních přístupů hlubokého učení, jako jsou modely dvou věží
Klasické strojové učení Tradiční úlohy ML včetně trénování modelů XGBoost a prognózování časových řad
Distribuované trénování s více GPU Škálování trénování napříč několika GPU pomocí bezserverového rozhraní GPU API

Úplný seznam najdete v ukázkových poznámkových blocích modulu runtime AI.

Troubleshooting

Genie Code může pomoct diagnostikovat a navrhovat opravy chyb instalace knihovny. Viz Použití kódu Genie k ladění chyb výpočetního prostředí.

Chyba ValueError: Velikost numpy.dtype se změnila, což může naznačovat binární nekompatibilitu. Očekávalo se 96 z C hlavičky, ale z objektu PyObject bylo 88.

K chybě obvykle dochází v případě neshody ve verzích NumPy používaných při kompilaci závislého balíčku a aktuálně nainstalované verze NumPy v prostředí runtime. K této nekompatibilitě často dochází kvůli změnám v NumPy C API rozhraní a je to obzvláště patrné z NumPy 1.x na 2.x. Tato chyba značí, že balíček Pythonu nainstalovaný v poznámkovém bloku mohl změnit verzi NumPy.

Doporučené řešení:

Zkontrolujte verzi NumPy v modulu runtime a ujistěte se, že je kompatibilní s vašimi balíčky. Informace o předinstalovaných knihovnách Pythonu najdete v poznámkách k verzi pro bezserverové výpočetní prostředí GPU pro prostředí 4 a prostředí 3 . Pokud máte závislost na jiné verzi NumPy, přidejte tuto závislost do výpočetního prostředí.

PyTorch nemůže najít knihovnu libcudnn při instalaci torch

Při instalaci jiné verze torchse může zobrazit chyba: ImportError: libcudnn.so.9: cannot open shared object file: No such file or directory. Důvodem je to, že funkce torch hledá pouze knihovnu cuDNN v místní cestě.

Doporučené řešení:

Přeinstalujte závislosti přidáním --force-reinstall při instalaci torch:

%pip install torch --force-reinstall