parallel Pakiet
Klasy
ParallelJob |
Zadanie równoległe. |
RunFunction |
Uruchom funkcję. |
Funkcje
parallel_run_function
Utwórz obiekt Równoległy, który może być używany wewnątrz dsl.pipeline jako funkcji, a także można go utworzyć jako autonomiczne zadanie równoległe.
Aby zapoznać się z przykładem użycia elementu ParallelRunStep, zobacz notes 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
Nazwa utworzonego zadania równoległego lub składnika.
- description
- str
Przyjazny opis równoległych.
- tags
- Dict
Tagi, które mają być dołączone do tego równoległego.
- properties
- Dict
Słownik właściwości elementu zawartości.
- display_name
- str
Przyjazna nazwa.
- experiment_name
- str
Nazwa eksperymentu, w ramach których zostanie utworzone zadanie, jeśli nie zostanie podany, zostanie ustawiona domyślna nazwa bieżącego katalogu. Zostanie zignorowany jako krok potoku.
- compute
- str
Nazwa obliczenia, w którym jest wykonywane zadanie równoległe (nie będzie używana, jeśli równoległe jest używane jako składnik/funkcja).
- retry_settings
- BatchRetrySettings
Ponowienie próby uruchomienia składnika równoległego nie powiodło się
Słownik nazw i wartości zmiennych środowiskowych. Te zmienne środowiskowe są ustawiane w procesie wykonywania skryptu użytkownika.
- logging_level
- str
Ciąg nazwy poziomu rejestrowania, który jest zdefiniowany w ciągu "rejestrowania". Możliwe wartości to "WARNING", "INFO" i "DEBUG". (opcjonalnie wartość domyślna to "INFO". Tę wartość można ustawić za pomocą parametru PipelineParameter.
- max_concurrency_per_instance
- int
Maksymalna równoległość, jaką ma każde wystąpienie obliczeniowe.
- error_threshold
- int
Liczba błędów rekordów dla tabelarycznego zestawu danych i błędów plików dla zestawu danych plików, które powinny być ignorowane podczas przetwarzania. Jeśli liczba błędów przekroczy tę wartość, zadanie zostanie przerwane. Próg błędu dotyczy całego wejścia, a nie pojedynczej minisadowej wysłanej do metody run(). Zakres to [-1, int.max]. -1 wskazuje, że podczas przetwarzania ignoruj wszystkie błędy
- mini_batch_error_threshold
- int
Liczba błędów mini przetwarzania wsadowego powinna być ignorowana
- task
- RunFunction
Zadanie równoległe
- mini_batch_size
- str
W przypadku danych wejściowych fileDataset to pole jest liczbą plików, które skrypt użytkownika może przetworzyć w jednym wywołaniu run(). W przypadku danych wejściowych TabularDataset to przybliżony rozmiar danych, które skrypt użytkownika może przetworzyć w jednym wywołaniu run(). Przykładowe wartości to 1024, 1024 KB, 10 MB i 1 GB. (opcjonalnie wartość domyślna to 10 plików dla elementu FileDataset i 1 MB dla elementu TabularDataset). Tę wartość można ustawić za pomocą parametru PipelineParameter.
- partition_keys
- List
Klucze używane do partycjonowania zestawu danych w minisadach. Jeśli zostanie określony, dane z tym samym kluczem zostaną podzielone na tę samą minisadę. Jeśli zostaną określone zarówno partition_keys, jak i mini_batch_size, klucze partycji zostaną zastosowane. Dane wejściowe muszą być partycjonowane zestawy danych, a partition_keys musi być podzbiorem kluczy każdego wejściowego zestawu danych, aby to działało
- input_data
- str
Dane wejściowe.
- inputs
- Dict
Dykt danych wejściowych używanych przez tę równoległość.
- outputs
- Dict
Dane wyjściowe tego równoległego
- instance_count
- int
Opcjonalna liczba wystąpień lub węzłów używanych przez docelowy obiekt obliczeniowy. Wartość domyślna to 1
- instance_type
- str
Opcjonalny typ maszyny wirtualnej używany jako obsługiwany przez docelowy obiekt obliczeniowy.
- docker_args
- str
Dodatkowe argumenty do przekazania do polecenia do uruchomienia platformy Docker. Spowoduje to zastąpienie wszystkich parametrów, które zostały już ustawione przez system lub w tej sekcji. Ten parametr jest obsługiwany tylko w przypadku typów obliczeniowych usługi Azure ML.
- shm_size
- str
Rozmiar bloku pamięci udostępnionej kontenera platformy Docker. Powinno to być w formacie (liczba)(jednostka), w którym liczba ma być większa niż 0, a jednostka może być jedną z b(bajtów), k(kilobajtów), m(megabajty) lub g(gigabajty).
- identity
- Union[ <xref:azure.ai.ml._restclient.v2022_02_01_preview.models.ManagedIdentity>, <xref:azure.ai.ml._restclient.v2022_02_01_preview.models.AmlToken>]
Tożsamość, która będzie używana przez zadanie szkoleniowe podczas uruchamiania w środowisku obliczeniowym.
- is_deterministic
- bool
Określ, czy równoległe dane wyjściowe będą zwracać te same dane wyjściowe, biorąc pod uwagę te same dane wejściowe. Jeśli równoległy (składnik) jest deterministyczny, gdy jest używany jako węzeł/krok w potoku, ponownie użyje wyników z poprzedniego przesłanego zadania w bieżącym obszarze roboczym, który ma te same dane wejściowe i ustawienia. W takim przypadku ten krok nie będzie używał żadnego zasobu obliczeniowego. Wartość domyślna to True, określ wartość is_deterministic=False, jeśli chcesz uniknąć takiego zachowania ponownego użycia, wartość domyślna to True.
Zwraca
Węzeł równoległy
Typ zwracany
Uwagi
Aby użyć parallel_run_function:
Utwórz obiekt, <xref:azure.ai.ml.entities._builders.Parallel> aby określić sposób wykonywania przebiegu równoległego, z parametrami służącymi do kontrolowania rozmiaru partii, liczby węzłów na docelowy obiekt obliczeniowy i odwołania do niestandardowego skryptu języka Python.
Tworzenie potoku z obiektem równoległym jako funkcją. definiuje dane wejściowe i wyjściowe dla kroku.
Sumbit potoku do uruchomienia.
Azure SDK for Python