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
- _module_provider
- <xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
(Pouze pro interní použití.) Poskytovatel modulu.
- _module_version_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
(Pouze pro interní použití.) Zprostředkovatel ModuleVersion.
- _module_provider
- <xref:<xref:_AevaMlModuleProvider object>>
Poskytovatel modulu.
- _module_version_provider
- <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
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(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
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(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
get_versions
Získejte všechny verze modulu.
static get_versions(workspace, name, _workflow_provider=None)
Parametry
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(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
- create_sequencing_ports
- bool
Určuje, jestli se pro modul vytvoří sekvencování portů.
- step_type
- str
Typ kroku přidruženého k tomuto modulu, například PythonScriptStep, HyperDriveStep atd.
- arguments
- list
Seznam argumentů s poznámkami, který se má použít při volání tohoto modulu
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
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
- execution_type
- str
Typ spuštění modulu.
Přijatelné hodnoty jsou esCloud
, adlcloud
a AzureBatchCloud
- create_sequencing_ports
- bool
Určuje, jestli se pro modul vytvoří porty pro sekvencování.
- hash_paths
- list
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.
- arguments
- list
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
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
- create_sequencing_ports
- bool
Určuje, jestli se pro modul vytvoří porty pro sekvencování.
- degree_of_parallelism
- int
Stupeň paralelismu, který se má použít pro tuto úlohu.
- runtime_version
- str
Verze modulu runtime modulu Azure Data Lake Analytics (ADLA).
- compute_target
- AdlaCompute, str
Výpočetní prostředky ADLA, které se mají použít pro tuto úlohu.
- arguments
- list
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
- create_sequencing_ports
- bool
Určuje, jestli se pro modul vytvoří porty pro sekvencování.
- delete_batch_job_after_finish
- bool
Určuje, jestli se má úloha po dokončení odstranit z účtu Batch.
- delete_batch_pool_after_finish
- bool
Určuje, jestli se má fond po dokončení úlohy odstranit.
- is_positive_exit_code_failure
- bool
Označuje, jestli úloha selže, pokud úkol existuje s pozitivním kódem.
- 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
.
- target_compute_nodes
- int
Pokud create_pool
je hodnota True, znamená to, kolik výpočetních uzlů se přidá do fondu.
- vm_size
- str
Pokud create_pool
je hodnota True, označuje velikost virtuálního počítače výpočetních uzlů.
- executable
- str
Název příkazu nebo spustitelného souboru, který se spustí jako součást úlohy.
- arguments
- list
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
- create_sequencing_ports
- bool
Určuje, jestli se pro modul vytvoří porty pro sekvencování.
- hash_paths
- list
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.
- arguments
- list
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
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
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
Návraty
Výchozí verze.
Návratový typ
Výjimky
set_description
Nastavte popis modulu.
set_description(description)
Parametry
Výjimky
set_name
Nastavte název modulu.
set_name(name)
Parametry
Výjimky
Atributy
default_version
description
id
name
status
Váš názor
Odeslat a zobrazit názory pro