Module Třída
Představuje výpočetní jednotku používanou v kanálu Azure Machine Learning.
Modul je kolekce souborů, které poběží na cílovém výpočetním objektu, a popis rozhraní. Kolekce souborů může být skript, binární soubory nebo jakékoli jiné soubory potřebné ke spuštění na cílovém výpočetním objektu. Rozhraní modulu popisuje vstupy, výstupy a definice parametrů. Neváže je na konkrétní hodnoty nebo data. K modulu je přidružený snímek, který zachycuje kolekci souborů definovaných pro modul.
Inicializace modulu
- Dědičnost
-
builtins.objectModule
Konstruktor
Module(workspace, module_id, name, description, status, default_version, module_version_list, _module_provider=None, _module_version_provider=None)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
Objekt pracovního prostoru, do který tento modul patří. |
module_id
Vyžadováno
|
ID modulu. |
name
Vyžadováno
|
Název modulu. |
description
Vyžadováno
|
Popis modulu. |
status
Vyžadováno
|
Nový stav modulu: Aktivní, Zastaralé nebo Zakázané. |
default_version
Vyžadováno
|
Výchozí verze modulu. |
module_version_list
Vyžadováno
|
Seznam ModuleVersionDescriptor objektů. |
_module_provider
|
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
(Pouze pro interní použití.) Poskytovatel modulu. Default value: None
|
_module_version_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
(Pouze pro interní použití.) Zprostředkovatel ModuleVersion. Default value: None
|
workspace
Vyžadováno
|
Objekt pracovního prostoru, do který tento modul patří. |
module_id
Vyžadováno
|
ID modulu. |
name
Vyžadováno
|
Název modulu. |
description
Vyžadováno
|
Popis modulu. |
status
Vyžadováno
|
Nový stav modulu: Aktivní, Zastaralé nebo Zakázané. |
default_version
Vyžadováno
|
Výchozí verze modulu. |
module_version_list
Vyžadováno
|
Seznam ModuleVersionDescriptor objektů. |
_module_provider
Vyžadováno
|
<xref:<xref:_AevaMlModuleProvider object>>
Poskytovatel modulu. |
_module_version_provider
Vyžadováno
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
Zprostředkovatel ModuleVersion. |
Poznámky
Modul funguje jako kontejner svých verzí. V následujícím příkladu se moduleVersion vytvoří z publish_python_script metody a má dva vstupy a dva výstupy. Výchozí verze create ModuleVersion (is_default
je nastavená na Hodnotu True).
out_sum = OutputPortDef(name="out_sum", default_datastore_name=datastore.name, default_datastore_mode="mount",
label="Sum of two numbers")
out_prod = OutputPortDef(name="out_prod", default_datastore_name=datastore.name, default_datastore_mode="mount",
label="Product of two numbers")
entry_version = module.publish_python_script("calculate.py", "initial",
inputs=[], outputs=[out_sum, out_prod], params = {"initialNum":12},
version="1", source_directory="./calc")
Úplná ukázka je k dispozici na webu https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Tento modul je možné použít při definování kanálu v různých krocích pomocí ModuleStep.
Následující ukázka ukazuje, jak připojit data použitá v kanálu ke vstupům a výstupům modulu ModuleVersion pomocí PipelineData:
middle_step_input_wiring = {"in1":first_sum, "in2":first_prod}
middle_sum = PipelineData("middle_sum", datastore=datastore, output_mode="mount",is_directory=False)
middle_prod = PipelineData("middle_prod", datastore=datastore, output_mode="mount",is_directory=False)
middle_step_output_wiring = {"out_sum":middle_sum, "out_prod":middle_prod}
Úplná ukázka je k dispozici na webu https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Mapování se pak dá použít při vytváření ModuluStep:
middle_step = ModuleStep(module=module,
inputs_map= middle_step_input_wiring,
outputs_map= middle_step_output_wiring,
runconfig=RunConfiguration(), compute_target=aml_compute,
arguments = ["--file_num1", first_sum, "--file_num2", first_prod,
"--output_sum", middle_sum, "--output_product", middle_prod])
Úplná ukázka je k dispozici na webu https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Řešení, která verze modulu se má použít, se provede po odeslání, a následuje následující postup:
- Odebrat všechny zakázané verze
- Pokud byla uvedena konkrétní verze, použijte ji, jinak
- Pokud byla pro modul definována výchozí verze, použijte ji, jinak
- Pokud všechny verze dodržují sémantickou správu verzí bez písmen, použijte nejvyšší hodnotu, jinak
- Vezměte si verzi modulu, která byla naposledy aktualizována
Všimněte si, že vzhledem k tomu, že je mapování vstupů a výstupů uzlu na vstup a výstup modulu definováno při vytvoření kanálu, pokud má vyřešená verze při odeslání jiné rozhraní než rozhraní, které je vyřešeno při vytvoření kanálu, odeslání kanálu selže.
Základní modul je možné aktualizovat novými verzemi a přitom zachovat stejnou výchozí verzi.
Moduly mají jedinečný název v rámci pracovního prostoru.
Metody
create |
Vytvořte modul. |
deprecate |
Nastavte modul na Zastaralé. |
disable |
Nastavte modul na Zakázáno. |
enable |
Nastavte modul na Aktivní. |
get |
Získejte modul podle názvu nebo id; vyvolá výjimku, pokud není k dispozici. |
get_default |
Získejte výchozí verzi modulu. |
get_default_version |
Získejte výchozí verzi modulu. |
get_versions |
Získejte všechny verze modulu. |
module_def_builder |
Vytvořte objekt definice modulu, který popisuje krok. |
module_version_list |
Získejte seznam verze modulu. |
process_source_directory |
Zpracujte zdrojový adresář pro krok a zkontrolujte, jestli skript existuje. |
publish |
Vytvořte ModuleVersion a přidejte ho do aktuálního modulu. |
publish_adla_script |
Vytvořte moduleVersion na základě Azure Data Lake Analytics (ADLA) a přidejte ho do aktuálního modulu. |
publish_azure_batch |
Vytvořte moduleVersion, který používá Azure Batch, a přidejte ho do aktuálního modulu. |
publish_python_script |
Vytvořte moduleVersion, který je založený na skriptu Pythonu, a přidejte ho do aktuálního modulu. |
resolve |
Vyřešte a vraťte správnou hodnotu ModuleVersion. |
set_default_version |
Nastavte výchozí hodnotu ModuleVersion modulu. |
set_description |
Nastavte popis modulu. |
set_name |
Nastavte název modulu. |
create
Vytvořte modul.
static create(workspace, name, description, _workflow_provider=None)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
Pracovní prostor, ve kterém se má modul vytvořit. |
name
Vyžadováno
|
Název modulu. |
description
Vyžadováno
|
Popis modulu. |
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Pouze pro interní použití.) Poskytovatel pracovního postupu. Default value: None
|
Návraty
Typ | Description |
---|---|
Objekt modulu |
deprecate
Nastavte modul na Zastaralé.
deprecate()
disable
Nastavte modul na Zakázáno.
disable()
enable
Nastavte modul na Aktivní.
enable()
get
Získejte modul podle názvu nebo id; vyvolá výjimku, pokud není k dispozici.
static get(workspace, module_id=None, name=None, _workflow_provider=None)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
Pracovní prostor, ve kterém se má modul vytvořit. |
module_id
|
ID modulu. Default value: None
|
name
|
Název modulu. Default value: None
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Pouze pro interní použití.) Poskytovatel pracovního postupu. Default value: None
|
Návraty
Typ | Description |
---|---|
Objekt modulu |
get_default
Získejte výchozí verzi modulu.
get_default()
Návraty
Typ | Description |
---|---|
Výchozí verze modulu. |
get_default_version
Získejte výchozí verzi modulu.
get_default_version()
Návraty
Typ | Description |
---|---|
Výchozí verze modulu. |
get_versions
Získejte všechny verze modulu.
static get_versions(workspace, name, _workflow_provider=None)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
Pracovní prostor, ve které byl modul vytvořen. |
name
Vyžadováno
|
Název modulu. |
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Pouze pro interní použití.) Poskytovatel pracovního postupu. Default value: None
|
Návraty
Typ | Description |
---|---|
Seznam ModuleVersionDescriptor |
module_def_builder
Vytvořte objekt definice modulu, který popisuje krok.
static module_def_builder(name, description, execution_type, input_bindings, output_bindings, param_defs=None, create_sequencing_ports=True, allow_reuse=True, version=None, module_type=None, step_type=None, arguments=None, runconfig=None, cloud_settings=None)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název modulu. |
description
Vyžadováno
|
Popis modulu. |
execution_type
Vyžadováno
|
Typ spuštění modulu. |
input_bindings
Vyžadováno
|
Vstupní vazby modulu |
output_bindings
Vyžadováno
|
Výstupní vazby modulu |
param_defs
|
Definice parametrů modulu. Default value: None
|
create_sequencing_ports
|
Určuje, jestli se pro modul vytvoří sekvencování portů. Default value: True
|
allow_reuse
|
Určuje, jestli bude modul k dispozici k opakovanému použití. Default value: True
|
version
|
Verze modulu. Default value: None
|
module_type
|
Typ modulu. Default value: None
|
step_type
|
Typ kroku přidruženého k tomuto modulu, například PythonScriptStep, HyperDriveStep atd. Default value: None
|
arguments
|
Seznam argumentů s poznámkami, který se má použít při volání tohoto modulu Default value: None
|
runconfig
|
Runconfig, který se použije pro python_script_step Default value: None
|
cloud_settings
|
Nastavení, která se budou používat pro cloudy Default value: None
|
Návraty
Typ | Description |
---|---|
Objekt Module def. |
Výjimky
Typ | Description |
---|---|
module_version_list
Získejte seznam verze modulu.
module_version_list()
Návraty
Typ | Description |
---|---|
Seznam ModuleVersionDescriptor |
process_source_directory
Zpracujte zdrojový adresář pro krok a zkontrolujte, jestli skript existuje.
static process_source_directory(name, source_directory, script_name)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název kroku. |
source_directory
Vyžadováno
|
Zdrojový adresář pro krok. |
script_name
Vyžadováno
|
Název skriptu pro krok. |
Návraty
Typ | Description |
---|---|
Zdrojový adresář a cesty k hodnotě hash. |
Výjimky
Typ | Description |
---|---|
publish
Vytvořte ModuleVersion a přidejte ho do aktuálního modulu.
publish(description, execution_type, inputs, outputs, param_defs=None, create_sequencing_ports=True, version=None, is_default=False, content_path=None, hash_paths=None, category=None, arguments=None, runconfig=None)
Parametry
Name | Description |
---|---|
description
Vyžadováno
|
Popis modulu. |
execution_type
Vyžadováno
|
Typ spuštění modulu.
Přijatelné hodnoty jsou |
inputs
Vyžadováno
|
Vstupy Modulu. |
outputs
Vyžadováno
|
Výstup modulu. |
param_defs
|
Definice parametrů modulu. Default value: None
|
create_sequencing_ports
|
Určuje, jestli se pro modul vytvoří porty pro sekvencování. Default value: True
|
version
|
Verze modulu Default value: None
|
is_default
|
Určuje, jestli publikovaná verze má být výchozí. Default value: False
|
content_path
|
adresář Default value: None
|
hash_paths
|
Seznam cest k hodnotě hash při kontrole změn obsahu kroku Pokud se nezjistí žádné změny, kanál znovu použije obsah kroku z předchozího spuštění. Ve výchozím nastavení se obsah objektu Default value: None
|
category
|
Kategorie verze modulu Default value: None
|
arguments
|
Argumenty, které se mají použít při volání modulu Argumenty můžou být řetězce, vstupní odkazy (InputPortDef), výstupní odkazy (OutputPortDef) a parametry kanálu (PipelineParameter). Default value: None
|
runconfig
|
Volitelná konfigurace RunConfiguration. RunConfiguration se dá použít k určení dalších požadavků pro spuštění, jako jsou závislosti Conda a image Dockeru. Default value: None
|
Návraty
Typ | Description |
---|---|
Výjimky
Typ | Description |
---|---|
publish_adla_script
Vytvořte moduleVersion na základě Azure Data Lake Analytics (ADLA) a přidejte ho do aktuálního modulu.
publish_adla_script(script_name, description, inputs, outputs, params=None, create_sequencing_ports=True, degree_of_parallelism=None, priority=None, runtime_version=None, compute_target=None, version=None, is_default=False, source_directory=None, hash_paths=None, category=None, arguments=None)
Parametry
Name | Description |
---|---|
script_name
Vyžadováno
|
Název skriptu ADLA vzhledem k |
description
Vyžadováno
|
Popis verze modulu. |
inputs
Vyžadováno
|
Vstupní vazby modulu. |
outputs
Vyžadováno
|
Výstupní vazby modulu |
params
|
Parametr ModuleVersion jako název-default_value páry. Default value: None
|
create_sequencing_ports
|
Určuje, jestli se pro modul vytvoří porty pro sekvencování. Default value: True
|
degree_of_parallelism
|
Stupeň paralelismu, který se má použít pro tuto úlohu. Default value: None
|
priority
|
Hodnota priority, která se má použít pro aktuální úlohu. Default value: None
|
runtime_version
|
Verze modulu runtime modulu Azure Data Lake Analytics (ADLA). Default value: None
|
compute_target
|
Výpočetní prostředky ADLA, které se mají použít pro tuto úlohu. Default value: None
|
version
|
Verze modulu. Default value: None
|
is_default
|
Určuje, jestli publikovaná verze má být výchozí. Default value: False
|
source_directory
|
adresář Default value: None
|
hash_paths
|
hash_paths Default value: None
|
category
|
Kategorie verze modulu Default value: None
|
arguments
|
Argumenty, které se mají použít při volání modulu Argumenty můžou být řetězce, vstupní odkazy (InputPortDef), výstupní odkazy (OutputPortDef) a parametry kanálu (PipelineParameter). Default value: None
|
Návraty
Typ | Description |
---|---|
publish_azure_batch
Vytvořte moduleVersion, který používá Azure Batch, a přidejte ho do aktuálního modulu.
publish_azure_batch(description, compute_target, inputs, outputs, params=None, create_sequencing_ports=True, version=None, is_default=False, create_pool=False, pool_id=None, delete_batch_job_after_finish=False, delete_batch_pool_after_finish=False, is_positive_exit_code_failure=True, vm_image_urn='urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter', run_task_as_admin=False, target_compute_nodes=1, vm_size='standard_d1_v2', executable=None, source_directory=None, category=None, arguments=None)
Parametry
Name | Description |
---|---|
description
Vyžadováno
|
Popis verze modulu. |
compute_target
Vyžadováno
|
BatchCompute nebo
str
Cíl výpočetních prostředků BatchCompute. |
inputs
Vyžadováno
|
Vstupní vazby modulu. |
outputs
Vyžadováno
|
Výstupní vazby modulu |
params
|
Parametr ModuleVersion jako název-default_value páry. Default value: None
|
create_sequencing_ports
|
Určuje, jestli se pro modul vytvoří porty pro sekvencování. Default value: True
|
version
|
Verze modulu Default value: None
|
is_default
|
Určuje, jestli publikovaná verze má být výchozí. Default value: False
|
create_pool
|
Určuje, jestli se má vytvořit fond před spuštěním úloh. Default value: False
|
pool_id
|
(Povinné) ID fondu, ve kterém se úloha spustí. Default value: None
|
delete_batch_job_after_finish
|
Určuje, jestli se má úloha po dokončení odstranit z účtu Batch. Default value: False
|
delete_batch_pool_after_finish
|
Určuje, jestli se má fond po dokončení úlohy odstranit. Default value: False
|
is_positive_exit_code_failure
|
Označuje, jestli úloha selže, pokud úkol existuje s pozitivním kódem. Default value: True
|
vm_image_urn
|
Pokud Default value: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
|
run_task_as_admin
|
Určuje, jestli má úloha běžet s Správa oprávněními. Default value: False
|
target_compute_nodes
|
Pokud Default value: 1
|
vm_size
|
Pokud Default value: standard_d1_v2
|
executable
|
Název příkazu nebo spustitelného souboru, který se spustí jako součást úlohy. Default value: None
|
source_directory
|
Zdrojový adresář. Default value: None
|
category
|
Kategorie verze modulu Default value: None
|
arguments
|
Argumenty, které se mají použít při volání modulu Argumenty můžou být řetězce, vstupní odkazy (InputPortDef), výstupní odkazy (OutputPortDef) a parametry kanálu (PipelineParameter). Default value: None
|
Návraty
Typ | Description |
---|---|
Výjimky
Typ | Description |
---|---|
publish_python_script
Vytvořte moduleVersion, který je založený na skriptu Pythonu, a přidejte ho do aktuálního modulu.
publish_python_script(script_name, description, inputs, outputs, params=None, create_sequencing_ports=True, version=None, is_default=False, source_directory=None, hash_paths=None, category=None, arguments=None, runconfig=None)
Parametry
Name | Description |
---|---|
script_name
Vyžadováno
|
Název skriptu Pythonu vzhledem k . |
description
Vyžadováno
|
Popis verze modulu. |
inputs
Vyžadováno
|
Vstupní vazby modulu. |
outputs
Vyžadováno
|
Výstupní vazby modulu |
params
|
Parametr ModuleVersion jako název-default_value páry. Default value: None
|
create_sequencing_ports
|
Určuje, jestli se pro modul vytvoří porty pro sekvencování. Default value: True
|
version
|
Verze modulu Default value: None
|
is_default
|
Určuje, jestli publikovaná verze má být výchozí. Default value: False
|
source_directory
|
adresář Default value: None
|
hash_paths
|
Seznam cest k hodnotě hash při kontrole změn obsahu kroku Pokud se nezjistí žádné změny, kanál znovu použije obsah kroku z předchozího spuštění. Ve výchozím nastavení se obsah objektu Default value: None
|
category
|
Kategorie verze modulu Default value: None
|
arguments
|
Argumenty, které se mají použít při volání modulu Argumenty můžou být řetězce, vstupní odkazy (InputPortDef), výstupní odkazy (OutputPortDef) a parametry kanálu (PipelineParameter). Default value: None
|
runconfig
|
Volitelná konfigurace RunConfiguration. RunConfiguration se dá použít k určení dalších požadavků pro spuštění, jako jsou závislosti Conda a image Dockeru. Default value: None
|
Návraty
Typ | Description |
---|---|
resolve
Vyřešte a vraťte správnou hodnotu ModuleVersion.
resolve(version=None)
Parametry
Name | Description |
---|---|
version
|
Default value: None
|
Návraty
Typ | Description |
---|---|
Verze modulu, která se má použít. |
set_default_version
Nastavte výchozí hodnotu ModuleVersion modulu.
set_default_version(version_id)
Parametry
Name | Description |
---|---|
version_id
Vyžadováno
|
|
Návraty
Typ | Description |
---|---|
Výchozí verze. |
Výjimky
Typ | Description |
---|---|
set_description
Nastavte popis modulu.
set_description(description)
Parametry
Name | Description |
---|---|
description
Vyžadováno
|
Popis, který se má nastavit. |
Výjimky
Typ | Description |
---|---|
set_name
Nastavte název modulu.
set_name(name)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název, který chcete nastavit. |
Výjimky
Typ | Description |
---|---|