parallel Balíček
Třídy
ParallelJob |
Paralelní úloha. |
RunFunction |
Spustit funkci. |
Funkce
parallel_run_function
Vytvořte objekt Parallel, který lze použít uvnitř dsl.pipeline jako funkci a který lze také vytvořit jako samostatnou paralelní úlohu.
Příklad použití Kroku paralelního spuštění najdete v poznámkovém bloku. https://aka.ms/parallel-example-notebook
from azure.ai.ml import Input, Output, parallel
parallel_run = parallel_run_function(
name="batch_score_with_tabular_input",
display_name="Batch Score with Tabular Dataset",
description="parallel component for batch score",
inputs=dict(
job_data_path=Input(
type=AssetTypes.MLTABLE,
description="The data to be split and scored in parallel",
),
score_model=Input(
type=AssetTypes.URI_FOLDER, description="The model for batch score."
),
),
outputs=dict(job_output_path=Output(type=AssetTypes.MLTABLE)),
input_data="${{inputs.job_data_path}}",
max_concurrency_per_instance=2, # Optional, default is 1
mini_batch_size="100", # optional
mini_batch_error_threshold=5, # Optional, allowed failed count on mini batch items, default is -1
logging_level="DEBUG", # Optional, default is INFO
error_threshold=5, # Optional, allowed failed count totally, default is -1
retry_settings=dict(max_retries=2, timeout=60), # Optional
task=RunFunction(
code="./src",
entry_script="tabular_batch_inference.py",
environment=Environment(
image="mcr.microsoft.com/azureml/openmpi3.1.2-ubuntu18.04",
conda_file="./src/environment_parallel.yml",
),
program_arguments="--model ${{inputs.score_model}}",
append_row_to="${{outputs.job_output_path}}", # Optional, if not set, summary_only
),
)
parallel_run_function(*, name: str | None = None, description: str | None = None, tags: Dict | None = None, properties: Dict | None = None, display_name: str | None = None, experiment_name: str | None = None, compute: str | None = None, retry_settings: BatchRetrySettings | None = None, environment_variables: Dict | None = None, logging_level: str | None = None, max_concurrency_per_instance: int | None = None, error_threshold: int | None = None, mini_batch_error_threshold: int | None = None, task: RunFunction | None = None, mini_batch_size: str | None = None, partition_keys: List | None = None, input_data: str | None = None, inputs: Dict | None = None, outputs: Dict | None = None, instance_count: int | None = None, instance_type: str | None = None, docker_args: str | None = None, shm_size: str | None = None, identity: ManagedIdentity | AmlToken | None = None, is_deterministic: bool = True, **kwargs) -> Parallel
Parametry
- name
- str
Název vytvořené paralelní úlohy nebo komponenty
- description
- str
Popisný popis rovnoběžky.
- tags
- Dict
Značky, které mají být připojeny k tomuto paralellu
- properties
- Dict
Slovník vlastností majetku.
- display_name
- str
Popisný název.
- experiment_name
- str
Název experimentu, ve které se úloha vytvoří. Pokud je zadaný žádný, výchozí hodnota se nastaví na aktuální název adresáře. Jako krok kanálu se bude ignorovat.
- compute
- str
Název výpočetního prostředí, ve kterém se paralelní úloha spouští (nepoužije se, pokud se paralel použije jako komponenta nebo funkce).
- retry_settings
- BatchRetrySettings
Paralelní spuštění komponenty selhalo při opakování
Slovník názvů a hodnot proměnných prostředí. Tyto proměnné prostředí se nastavují v procesu, ve kterém se spouští uživatelský skript.
- logging_level
- str
Řetězec názvu úrovně protokolování, který je definován v "protokolování". Možné hodnoty jsou WARNING, INFO a DEBUG. (Volitelné, výchozí hodnota je INFO.) Tuto hodnotu je možné nastavit prostřednictvím parametru PipelineParameter.
- max_concurrency_per_instance
- int
Maximální paralelismus, který má každá výpočetní instance.
- error_threshold
- int
Počet selhání záznamů pro tabulkovou datovou sadu a selhání souborů pro datovou sadu souborů, které by se měly během zpracování ignorovat. Pokud počet chyb překročí tuto hodnotu, úloha se přeruší. Prahová hodnota chyby je určená pro celý vstup, nikoli pro jednotlivé minidávku odesílané metodě run(). Rozsah je [-1, int.max]. -1 znamená, že se při zpracování ignorují všechna selhání.
- mini_batch_error_threshold
- int
Počet selhání mini dávkového zpracování by se měl ignorovat.
- task
- RunFunction
Paralelní úloha
- mini_batch_size
- str
Pro vstup FileDataset je toto pole počet souborů, které může uživatelský skript zpracovat při jednom volání run(). Pro vstup TabularDataset toto pole představuje přibližnou velikost dat, která může uživatelský skript zpracovat při jednom volání run(). Příklady hodnot jsou 1024, 1024 kB, 10 MB a 1 GB. (Volitelné, výchozí hodnota je 10 souborů pro FileDataset a 1 MB pro TabularDataset.) Tuto hodnotu je možné nastavit prostřednictvím parametru PipelineParameter.
- partition_keys
- List
Klíče použité k rozdělení datové sady do minidávek. Pokud zadáte, data se stejným klíčem se rozdělí do stejné minidávy. Pokud jsou zadány partition_keys i mini_batch_size, projeví se klíče oddílů. Vstupy musí být dělené datové sady a partition_keys musí být podmnožinou klíčů každé vstupní datové sady, aby to fungovalo.
- input_data
- str
Vstupní data.
- inputs
- Dict
Dikt vstupů používaných touto paralelli.
- outputs
- Dict
Výstupy tohoto paralelního
- instance_count
- int
Volitelný počet instancí nebo uzlů používaných cílovým výpočetním objektem Výchozí hodnota je 1.
- instance_type
- str
Volitelný typ virtuálního počítače, který se používá jako podporovaný cílovým výpočetním objektem.
- docker_args
- str
Další argumenty, které se předávají do příkazu Docker run. Tím by se přepsaly všechny parametry, které už byly nastaveny systémem nebo v této části. Tento parametr se podporuje pouze pro výpočetní typy Azure ML.
- shm_size
- str
Velikost bloku sdílené paměti kontejneru Dockeru Mělo by to být ve formátu (number)(unit), kde číslo je větší než 0 a jednotka může být jedna z b(bajtů), k(kilobajtů), m(megabajtů) nebo g(gigabajtů).
- identity
- Union[ <xref:azure.ai.ml._restclient.v2022_02_01_preview.models.ManagedIdentity>, <xref:azure.ai.ml._restclient.v2022_02_01_preview.models.AmlToken>]
Identita, kterou bude trénovací úloha používat při běhu na výpočetních prostředcích
- is_deterministic
- bool
Určete, zda paralelní výstup vrátí stejný výstup se stejným vstupem. Pokud je paralelní (komponenta) deterministická, při použití jako uzlu nebo kroku v kanálu se znovu použijí výsledky z předchozí odeslané úlohy v aktuálním pracovním prostoru, který má stejné vstupy a nastavení. V tomto případě tento krok nepoužije žádný výpočetní prostředek. Výchozí hodnota je Pravda. Pokud se chcete takovému chování opakovaného použití vyhnout, zadejte is_deterministic=Nepravda. Výchozí hodnota je True.
Návraty
Paralelní uzel
Návratový typ
Poznámky
Použití parallel_run_function:
Vytvořte objekt, který <xref:azure.ai.ml.entities._builders.Parallel> určuje, jak se provádí paralelní spuštění, s parametry pro řízení velikosti dávky, počtu uzlů na cílový výpočetní objekt a odkazem na vlastní skript Pythonu.
Sestavte kanál s paralelním objektem jako funkcí. definuje vstupy a výstupy kroku.
Sečtení kanálu, který se má spustit
Azure SDK for Python