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

workspace
Workspace
Vyžadováno

Objekt pracovního prostoru, do který tento modul patří.

module_id
str
Vyžadováno

ID modulu.

name
str
Vyžadováno

Název modulu.

description
str
Vyžadováno

Popis modulu.

status
str
Vyžadováno

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

default_version
str
Vyžadováno

Výchozí verze modulu.

module_version_list
list
Vyžadováno

Seznam ModuleVersionDescriptor objektů.

_module_provider
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
výchozí hodnota: None

(Pouze pro interní použití.) Poskytovatel modulu.

_module_version_provider
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
výchozí hodnota: None

(Pouze pro interní použití.) Zprostředkovatel ModuleVersion.

workspace
Workspace
Vyžadováno

Objekt pracovního prostoru, do který tento modul patří.

module_id
str
Vyžadováno

ID modulu.

name
str
Vyžadováno

Název modulu.

description
str
Vyžadováno

Popis modulu.

status
str
Vyžadováno

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

default_version
str
Vyžadováno

Výchozí verze modulu.

module_version_list
list
Vyžadováno

Seznam ModuleVersionDescriptor objektů.

_module_provider
<xref:<xref:_AevaMlModuleProvider object>>
Vyžadováno

Poskytovatel modulu.

_module_version_provider
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
Vyžadováno

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

workspace
Workspace
Vyžadováno

Pracovní prostor, ve kterém se má modul vytvořit.

name
str
Vyžadováno

Název modulu.

description
str
Vyžadováno

Popis modulu.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
výchozí hodnota: None

(Pouze pro interní použití.) Poskytovatel pracovního postupu.

Návraty

Objekt modulu

Návratový typ

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

workspace
Workspace
Vyžadováno

Pracovní prostor, ve kterém se má modul vytvořit.

module_id
str
výchozí hodnota: None

ID modulu.

name
str
výchozí hodnota: None

Název modulu.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
výchozí hodnota: None

(Pouze pro interní použití.) Poskytovatel pracovního postupu.

Návraty

Objekt modulu

Návratový typ

get_default

Získejte výchozí verzi modulu.

get_default()

Návraty

Výchozí verze modulu.

Návratový typ

get_default_version

Získejte výchozí verzi modulu.

get_default_version()

Návraty

Výchozí verze modulu.

Návratový typ

str

get_versions

Získejte všechny verze modulu.

static get_versions(workspace, name, _workflow_provider=None)

Parametry

workspace
Workspace
Vyžadováno

Pracovní prostor, ve které byl modul vytvořen.

name
str
Vyžadováno

Název modulu.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
výchozí hodnota: None

(Pouze pro interní použití.) Poskytovatel pracovního postupu.

Návraty

Seznam ModuleVersionDescriptor

Návratový typ

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
str
Vyžadováno

Název modulu.

description
str
Vyžadováno

Popis modulu.

execution_type
str
Vyžadováno

Typ spuštění modulu.

input_bindings
list
Vyžadováno

Vstupní vazby modulu

output_bindings
list
Vyžadováno

Výstupní vazby modulu

param_defs
list
výchozí hodnota: None

Definice parametrů modulu.

create_sequencing_ports
bool
výchozí hodnota: True

Určuje, jestli se pro modul vytvoří sekvencování portů.

allow_reuse
bool
výchozí hodnota: True

Určuje, jestli bude modul k dispozici k opakovanému použití.

version
str
výchozí hodnota: None

Verze modulu.

module_type
str
výchozí hodnota: None

Typ modulu.

step_type
str
výchozí hodnota: None

Typ kroku přidruženého k tomuto modulu, například PythonScriptStep, HyperDriveStep atd.

arguments
list
výchozí hodnota: None

Seznam argumentů s poznámkami, který se má použít při volání tohoto modulu

runconfig
str
výchozí hodnota: None

Runconfig, který se použije pro python_script_step

cloud_settings
str
výchozí hodnota: None

Nastavení, která se budou používat pro cloudy

Návraty

Objekt Module def.

Návratový typ

Výjimky

module_version_list

Získejte seznam verze modulu.

module_version_list()

Návraty

Seznam ModuleVersionDescriptor

Návratový typ

process_source_directory

Zpracujte zdrojový adresář pro krok a zkontrolujte, jestli skript existuje.

static process_source_directory(name, source_directory, script_name)

Parametry

name
str
Vyžadováno

Název kroku.

source_directory
str
Vyžadováno

Zdrojový adresář pro krok.

script_name
str
Vyžadováno

Název skriptu pro krok.

Návraty

Zdrojový adresář a cesty k hodnotě hash.

Návratový typ

Výjimky

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

description
str
Vyžadováno

Popis modulu.

execution_type
str
Vyžadováno

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

inputs
list
Vyžadováno

Vstupy Modulu.

outputs
list
Vyžadováno

Výstup modulu.

param_defs
list
výchozí hodnota: None

Definice parametrů modulu.

create_sequencing_ports
bool
výchozí hodnota: True

Určuje, jestli se pro modul vytvoří porty pro sekvencování.

version
str
výchozí hodnota: None

Verze modulu

is_default
bool
výchozí hodnota: False

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

content_path
str
výchozí hodnota: None

adresář

hash_paths
list
výchozí hodnota: None

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.

category
str
výchozí hodnota: None

Kategorie verze modulu

arguments
list
výchozí hodnota: None

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).

runconfig
RunConfiguration
výchozí hodnota: None

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.

Návratový typ

Výjimky

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

script_name
str
Vyžadováno

Název skriptu ADLA vzhledem k source_directory.

description
str
Vyžadováno

Popis verze modulu.

inputs
list
Vyžadováno

Vstupní vazby modulu.

outputs
list
Vyžadováno

Výstupní vazby modulu

params
dict
výchozí hodnota: None

Parametr ModuleVersion jako název-default_value páry.

create_sequencing_ports
bool
výchozí hodnota: True

Určuje, jestli se pro modul vytvoří porty pro sekvencování.

degree_of_parallelism
int
výchozí hodnota: None

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

priority
int
výchozí hodnota: None

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

runtime_version
str
výchozí hodnota: None

Verze modulu runtime modulu Azure Data Lake Analytics (ADLA).

compute_target
AdlaCompute, str
výchozí hodnota: None

Výpočetní prostředky ADLA, které se mají použít pro tuto úlohu.

version
str
výchozí hodnota: None

Verze modulu.

is_default
bool
výchozí hodnota: False

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

source_directory
str
výchozí hodnota: None

adresář

hash_paths
list
výchozí hodnota: None

hash_paths

category
str
výchozí hodnota: None

Kategorie verze modulu

arguments
list
výchozí hodnota: None

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).

Návratový typ

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

description
str
Vyžadováno

Popis verze modulu.

compute_target
BatchCompute nebo str
Vyžadováno

Cíl výpočetních prostředků BatchCompute.

inputs
list
Vyžadováno

Vstupní vazby modulu.

outputs
list
Vyžadováno

Výstupní vazby modulu

params
dict
výchozí hodnota: None

Parametr ModuleVersion jako název-default_value páry.

create_sequencing_ports
bool
výchozí hodnota: True

Určuje, jestli se pro modul vytvoří porty pro sekvencování.

version
str
výchozí hodnota: None

Verze modulu

is_default
bool
výchozí hodnota: False

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

create_pool
bool
výchozí hodnota: False

Určuje, jestli se má vytvořit fond před spuštěním úloh.

pool_id
str
výchozí hodnota: None

(Povinné) ID fondu, ve kterém se úloha spustí.

delete_batch_job_after_finish
bool
výchozí hodnota: False

Určuje, jestli se má úloha po dokončení odstranit z účtu Batch.

delete_batch_pool_after_finish
bool
výchozí hodnota: False

Určuje, jestli se má fond po dokončení úlohy odstranit.

is_positive_exit_code_failure
bool
výchozí hodnota: True

Označuje, jestli úloha selže, pokud úkol existuje s pozitivním kódem.

vm_image_urn
str
výchozí hodnota: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter

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.

run_task_as_admin
bool
výchozí hodnota: False

Určuje, jestli má úloha běžet s Správa oprávněními.

target_compute_nodes
int
výchozí hodnota: 1

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

vm_size
str
výchozí hodnota: standard_d1_v2

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

executable
str
výchozí hodnota: None

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

source_directory
str
výchozí hodnota: None

Zdrojový adresář.

category
str
výchozí hodnota: None

Kategorie verze modulu

arguments
list
výchozí hodnota: None

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).

Návratový typ

Výjimky

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

script_name
str
Vyžadováno

Název skriptu Pythonu vzhledem k .source_directory

description
str
Vyžadováno

Popis verze modulu.

inputs
list
Vyžadováno

Vstupní vazby modulu.

outputs
list
Vyžadováno

Výstupní vazby modulu

params
dict
výchozí hodnota: None

Parametr ModuleVersion jako název-default_value páry.

create_sequencing_ports
bool
výchozí hodnota: True

Určuje, jestli se pro modul vytvoří porty pro sekvencování.

version
str
výchozí hodnota: None

Verze modulu

is_default
bool
výchozí hodnota: False

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

source_directory
str
výchozí hodnota: None

adresář

hash_paths
list
výchozí hodnota: None

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.

category
str
výchozí hodnota: None

Kategorie verze modulu

arguments
list
výchozí hodnota: None

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).

runconfig
RunConfiguration
výchozí hodnota: None

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.

Návratový typ

resolve

Vyřešte a vraťte správnou hodnotu ModuleVersion.

resolve(version=None)

Parametry

version
výchozí hodnota: None

Návraty

Verze modulu, která se má použít.

Návratový typ

set_default_version

Nastavte výchozí hodnotu ModuleVersion modulu.

set_default_version(version_id)

Parametry

version_id
Vyžadováno

Návraty

Výchozí verze.

Návratový typ

str

Výjimky

set_description

Nastavte popis modulu.

set_description(description)

Parametry

description
str
Vyžadováno

Popis, který se má nastavit.

Výjimky

set_name

Nastavte název modulu.

set_name(name)

Parametry

name
str
Vyžadováno

Název, který chcete nastavit.

Výjimky

Atributy

default_version

Získejte výchozí verzi modulu.

Návraty

Výchozí řetězec verze.

Návratový typ

str

description

Získejte popis modulu.

Návraty

Řetězec popisu.

Návratový typ

str

id

Získejte ID modulu.

Návraty

ID.

Návratový typ

str

name

Získejte název modulu.

Návraty

Název

Návratový typ

str

status

Získejte stav modulu.

Návraty

Stav.

Návratový typ

str