Sdílet prostřednictvím


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.object
Module

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
str

ID modulu.

name
Vyžadováno
str

Název modulu.

description
Vyžadováno
str

Popis modulu.

status
Vyžadováno
str

Nový stav modulu: Aktivní, Zastaralé nebo Zakázané.

default_version
Vyžadováno
str

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
str

ID modulu.

name
Vyžadováno
str

Název modulu.

description
Vyžadováno
str

Popis modulu.

status
Vyžadováno
str

Nový stav modulu: Aktivní, Zastaralé nebo Zakázané.

default_version
Vyžadováno
str

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
str

Název modulu.

description
Vyžadováno
str

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
str

ID modulu.

Default value: None
name
str

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
str

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
str

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
str

Název modulu.

description
Vyžadováno
str

Popis modulu.

execution_type
Vyžadováno
str

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
str

Verze modulu.

Default value: None
module_type
str

Typ modulu.

Default value: None
step_type
str

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
str

Runconfig, který se použije pro python_script_step

Default value: None
cloud_settings
str

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
str

Název kroku.

source_directory
Vyžadováno
str

Zdrojový adresář pro krok.

script_name
Vyžadováno
str

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
str

Popis modulu.

execution_type
Vyžadováno
str

Typ spuštění modulu. Přijatelné hodnoty jsou esCloud, adlcloud a AzureBatchCloud

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
str

Verze modulu

Default value: None
is_default

Určuje, jestli publikovaná verze má být výchozí.

Default value: False
content_path
str

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 source_directory hash (s výjimkou souborů uvedených v souboru .amlignore nebo .gitignore). ZASTARALÉ: Už není potřeba.

Default value: None
category
str

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
str

Název skriptu ADLA vzhledem k source_directory.

description
Vyžadováno
str

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
int

Stupeň paralelismu, který se má použít pro tuto úlohu.

Default value: None
priority
int

Hodnota priority, která se má použít pro aktuální úlohu.

Default value: None
runtime_version
str

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
str

Verze modulu.

Default value: None
is_default

Určuje, jestli publikovaná verze má být výchozí.

Default value: False
source_directory
str

adresář

Default value: None
hash_paths

hash_paths

Default value: None
category
str

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
str

Popis verze modulu.

compute_target
Vyžadováno

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
str

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
str

(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
str

Pokud create_pool má hodnotu True a virtuální počítač používá VirtualMachineConfiguration, pak tento parametr označuje image virtuálního počítače, která se má použít. Formát hodnoty: urn:publisher:offer:sku. Příklad: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

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
int

Pokud create_pool je hodnota True, znamená to, kolik výpočetních uzlů se přidá do fondu.

Default value: 1
vm_size
str

Pokud create_pool je hodnota True, označuje velikost virtuálního počítače výpočetních uzlů.

Default value: standard_d1_v2
executable
str

Název příkazu nebo spustitelného souboru, který se spustí jako součást úlohy.

Default value: None
source_directory
str

Zdrojový adresář.

Default value: None
category
str

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
str

Název skriptu Pythonu vzhledem k .source_directory

description
Vyžadováno
str

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
str

Verze modulu

Default value: None
is_default

Určuje, jestli publikovaná verze má být výchozí.

Default value: False
source_directory
str

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 source_directory hashuje (s výjimkou souborů uvedených v .amlignore nebo .gitignore). ZASTARALÉ: Už není potřeba.

Default value: None
category
str

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
str

Výchozí verze.

Výjimky

Typ Description

set_description

Nastavte popis modulu.

set_description(description)

Parametry

Name Description
description
Vyžadováno
str

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
str

Název, který chcete nastavit.

Výjimky

Typ Description

Atributy

default_version

Získejte výchozí verzi modulu.

Návraty

Typ Description
str

Výchozí řetězec verze.

description

Získejte popis modulu.

Návraty

Typ Description
str

Řetězec popisu.

id

Získejte ID modulu.

Návraty

Typ Description
str

ID.

name

Získejte název modulu.

Návraty

Typ Description
str

Název

status

Získejte stav modulu.

Návraty

Typ Description
str

Stav.