Module Klasa
Reprezentuje jednostkę obliczeniową używaną w potoku usługi Azure Machine Learning.
Moduł to kolekcja plików, które będą uruchamiane na docelowym obiekcie obliczeniowym i opis interfejsu. Kolekcja plików może być skryptem, plikami binarnymi lub innymi plikami wymaganymi do wykonania w docelowym obiekcie obliczeniowym. Interfejs modułu opisuje dane wejściowe, dane wyjściowe i definicje parametrów. Nie wiąże ich z określonymi wartościami ani danymi. Moduł zawiera skojarzona z nim migawkę, która przechwytuje kolekcję plików zdefiniowanych dla modułu.
Zainicjuj moduł.
Konstruktor
Module(workspace, module_id, name, description, status, default_version, module_version_list, _module_provider=None, _module_version_provider=None)
Parametry
| Nazwa | Opis |
|---|---|
|
workspace
Wymagane
|
Obiekt obszaru roboczego, do którego należy ten moduł. |
|
module_id
Wymagane
|
Identyfikator modułu. |
|
name
Wymagane
|
Nazwa modułu. |
|
description
Wymagane
|
Opis modułu. |
|
status
Wymagane
|
Nowy stan modułu: "Aktywny", "Przestarzałe" lub "Wyłączone". |
|
default_version
Wymagane
|
Domyślna wersja modułu. |
|
module_version_list
Wymagane
|
Lista ModuleVersionDescriptor obiektów. |
|
_module_provider
|
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
(Tylko użycie wewnętrzne). Dostawca modułu. Domyślna wartość: None
|
|
_module_version_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
(Tylko użycie wewnętrzne). Dostawca ModuleVersion. Domyślna wartość: None
|
|
workspace
Wymagane
|
Obiekt obszaru roboczego, do którego należy ten moduł. |
|
module_id
Wymagane
|
Identyfikator modułu. |
|
name
Wymagane
|
Nazwa modułu. |
|
description
Wymagane
|
Opis modułu. |
|
status
Wymagane
|
Nowy stan modułu: "Aktywny", "Przestarzałe" lub "Wyłączone". |
|
default_version
Wymagane
|
Domyślna wersja modułu. |
|
module_version_list
Wymagane
|
Lista ModuleVersionDescriptor obiektów. |
|
_module_provider
Wymagane
|
<xref:<xref:_AevaMlModuleProvider object>>
Dostawca modułu. |
|
_module_version_provider
Wymagane
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
Dostawca ModuleVersion. |
Uwagi
Moduł działa jako kontener jego wersji. W poniższym przykładzie element ModuleVersion jest tworzony na podstawie publish_python_script metody i ma dwa dane wejściowe i dwa dane wyjściowe. Parametr Create ModuleVersion to domyślna wersja (is_default jest ustawiona na wartość 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")
Pełny przykład jest dostępny w witrynie https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Ten moduł może być używany podczas definiowania potoku w różnych krokach przy użyciu elementu ModuleStep.
W poniższym przykładzie pokazano, jak połączyć dane używane w potoku z danymi wejściowymi i wyjściowymi modułu ModuleVersion przy użyciu polecenia 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}
Pełny przykład jest dostępny w witrynie https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Mapowanie można następnie użyć podczas tworzenia modułuKrok:
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])
Pełny przykład jest dostępny w witrynie https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Rozwiązanie używanej wersji modułu odbywa się po przesłaniu i następuje następujący proces:
- Usuń wszystkie wyłączone wersje
- Jeśli określono określoną wersję, użyj tej opcji, w przeciwnym razie
- Jeśli zdefiniowano domyślną wersję modułu, użyj tej opcji, w przeciwnym razie
- Jeśli wszystkie wersje są zgodne z semantycznym przechowywaniem wersji bez liter, weź najwyższą wartość, w przeciwnym razie
- Weź wersję modułu, która została ostatnio zaktualizowana
Należy pamiętać, że ponieważ dane wejściowe i wyjściowe węzła mapowane na dane wejściowe i wyjściowe modułu są zdefiniowane podczas tworzenia potoku, jeśli rozpoznana wersja po przesłaniu ma inny interfejs niż ten, który został rozwiązany podczas tworzenia potoku, przesyłanie potoku zakończy się niepowodzeniem.
Podstawowy moduł można zaktualizować przy użyciu nowych wersji, zachowując tę samą wersję domyślną.
Moduły są unikatowo nazwane w obszarze roboczym.
Metody
| create |
Utwórz moduł. |
| deprecate |
Dla modułu ustaw wartość "Przestarzałe". |
| disable |
Dla modułu ustaw wartość "Disabled". |
| enable |
Dla modułu ustaw wartość "Aktywna". |
| get |
Pobierz moduł według nazwy lub identyfikatora; zgłasza wyjątek, jeśli którykolwiek z tych wyjątków nie zostanie podany. |
| get_default |
Pobierz domyślną wersję modułu. |
| get_default_version |
Pobierz domyślną wersję modułu. |
| get_versions |
Pobierz wszystkie wersje modułu. |
| module_def_builder |
Utwórz obiekt definicji modułu, który opisuje krok. |
| module_version_list |
Pobierz listę wersji modułu. |
| process_source_directory |
Przetwórz katalog źródłowy kroku i sprawdź, czy skrypt istnieje. |
| publish |
Utwórz element ModuleVersion i dodaj go do bieżącego modułu. |
| publish_adla_script |
Utwórz element ModuleVersion na podstawie usługi Azure Data Lake Analytics (ADLA) i dodaj go do bieżącego modułu. |
| publish_azure_batch |
Utwórz moduł ModuleVersion używający usługi Azure Batch i dodaj go do bieżącego modułu. |
| publish_python_script |
Utwórz element ModuleVersion oparty na skry skrycie języka Python i dodaj go do bieżącego modułu. |
| resolve |
Rozwiąż i zwróć właściwą wersję modułu. |
| set_default_version |
Ustaw domyślną wartość ModuleVersion modułu. |
| set_description |
Ustaw opis modułu. |
| set_name |
Ustaw nazwę modułu. |
create
Utwórz moduł.
static create(workspace, name, description, _workflow_provider=None)
Parametry
| Nazwa | Opis |
|---|---|
|
workspace
Wymagane
|
Obszar roboczy, w którym ma zostać utworzony moduł. |
|
name
Wymagane
|
Nazwa modułu. |
|
description
Wymagane
|
Opis modułu. |
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Tylko użycie wewnętrzne). Dostawca przepływu pracy. Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
|
Obiekt modułu |
deprecate
Dla modułu ustaw wartość "Przestarzałe".
deprecate()
disable
Dla modułu ustaw wartość "Disabled".
disable()
enable
Dla modułu ustaw wartość "Aktywna".
enable()
get
Pobierz moduł według nazwy lub identyfikatora; zgłasza wyjątek, jeśli którykolwiek z tych wyjątków nie zostanie podany.
static get(workspace, module_id=None, name=None, _workflow_provider=None)
Parametry
| Nazwa | Opis |
|---|---|
|
workspace
Wymagane
|
Obszar roboczy, w którym ma zostać utworzony moduł. |
|
module_id
|
Identyfikator modułu. Domyślna wartość: None
|
|
name
|
Nazwa modułu. Domyślna wartość: None
|
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Tylko użycie wewnętrzne). Dostawca przepływu pracy. Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
|
Obiekt modułu |
get_default
get_default_version
get_versions
Pobierz wszystkie wersje modułu.
static get_versions(workspace, name, _workflow_provider=None)
Parametry
| Nazwa | Opis |
|---|---|
|
workspace
Wymagane
|
Obszar roboczy, w ramach którego utworzono moduł. |
|
name
Wymagane
|
Nazwa modułu. |
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Tylko użycie wewnętrzne). Dostawca przepływu pracy. Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
|
Lista ModuleVersionDescriptor |
module_def_builder
Utwórz obiekt definicji modułu, który opisuje 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
| Nazwa | Opis |
|---|---|
|
name
Wymagane
|
Nazwa modułu. |
|
description
Wymagane
|
Opis modułu. |
|
execution_type
Wymagane
|
Typ wykonywania modułu. |
|
input_bindings
Wymagane
|
Powiązania wejściowe modułu. |
|
output_bindings
Wymagane
|
Powiązania wyjściowe modułu. |
|
param_defs
|
Definicje parametrów modułu. Domyślna wartość: None
|
|
create_sequencing_ports
|
Wskazuje, czy porty sekwencjonowania zostaną utworzone dla modułu. Domyślna wartość: True
|
|
allow_reuse
|
Wskazuje, czy moduł będzie dostępny do ponownego użycia. Domyślna wartość: True
|
|
version
|
Wersja modułu. Domyślna wartość: None
|
|
module_type
|
Typ modułu. Domyślna wartość: None
|
|
step_type
|
Typ kroku skojarzonego z tym modułem, np. "PythonScriptStep", "HyperDriveStep" itp. Domyślna wartość: None
|
|
arguments
|
Lista argumentów z adnotacjami do użycia podczas wywoływania tego modułu Domyślna wartość: None
|
|
runconfig
|
Runconfig, który będzie używany do python_script_step Domyślna wartość: None
|
|
cloud_settings
|
Ustawienia, które będą używane w chmurach Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
|
Obiekt def modułu. |
Wyjątki
| Typ | Opis |
|---|---|
module_version_list
process_source_directory
Przetwórz katalog źródłowy kroku i sprawdź, czy skrypt istnieje.
static process_source_directory(name, source_directory, script_name)
Parametry
| Nazwa | Opis |
|---|---|
|
name
Wymagane
|
Nazwa kroku. |
|
source_directory
Wymagane
|
Katalog źródłowy dla kroku. |
|
script_name
Wymagane
|
Nazwa skryptu dla kroku. |
Zwraca
| Typ | Opis |
|---|---|
|
Katalog źródłowy i ścieżki skrótu. |
Wyjątki
| Typ | Opis |
|---|---|
publish
Utwórz element ModuleVersion i dodaj go do bieżącego modułu.
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
| Nazwa | Opis |
|---|---|
|
description
Wymagane
|
Opis modułu. |
|
execution_type
Wymagane
|
Typ wykonywania modułu.
Dopuszczalne wartości to |
|
inputs
Wymagane
|
Dane wejściowe modułu. |
|
outputs
Wymagane
|
Dane wyjściowe modułu. |
|
param_defs
|
Definicje parametrów modułu. Domyślna wartość: None
|
|
create_sequencing_ports
|
Wskazuje, czy porty sekwencjonowania zostaną utworzone dla modułu. Domyślna wartość: True
|
|
version
|
Wersja modułu. Domyślna wartość: None
|
|
is_default
|
Wskazuje, czy opublikowana wersja ma być domyślną wersją. Domyślna wartość: False
|
|
content_path
|
katalog Domyślna wartość: None
|
|
hash_paths
|
Lista ścieżek do skrótu podczas sprawdzania zmian w zawartości kroku. Jeśli nie wykryto żadnych zmian, potok ponownie użyje zawartości kroku z poprzedniego uruchomienia. Domyślnie zawartość obiektu Domyślna wartość: None
|
|
category
|
Kategoria wersji modułu Domyślna wartość: None
|
|
arguments
|
Argumenty do użycia podczas wywoływania modułu. Argumenty mogą być ciągami, odwołaniami wejściowymi (InputPortDef), odwołaniami wyjściowymi (OutputPortDef) i parametrami potoku (PipelineParameter). Domyślna wartość: None
|
|
runconfig
|
Opcjonalna konfiguracja RunConfiguration. Za pomocą polecenia RunConfiguration można określić dodatkowe wymagania dotyczące przebiegu, takie jak zależności conda i obraz platformy Docker. Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
Wyjątki
| Typ | Opis |
|---|---|
publish_adla_script
Utwórz element ModuleVersion na podstawie usługi Azure Data Lake Analytics (ADLA) i dodaj go do bieżącego modułu.
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
| Nazwa | Opis |
|---|---|
|
script_name
Wymagane
|
Nazwa skryptu USŁUGI ADLA w stosunku do |
|
description
Wymagane
|
Opis wersji modułu. |
|
inputs
Wymagane
|
Powiązania wejściowe modułu. |
|
outputs
Wymagane
|
Powiązania wyjściowe modułu. |
|
params
|
Parametry ModuleVersion jako pary name-default_value. Domyślna wartość: None
|
|
create_sequencing_ports
|
Wskazuje, czy porty sekwencjonowania zostaną utworzone dla modułu. Domyślna wartość: True
|
|
degree_of_parallelism
|
Stopień równoległości do użycia w tym zadaniu. Domyślna wartość: None
|
|
priority
|
Wartość priorytetu do użycia dla bieżącego zadania. Domyślna wartość: None
|
|
runtime_version
|
Wersja środowiska uruchomieniowego aparatu usługi Azure Data Lake Analytics (ADLA). Domyślna wartość: None
|
|
compute_target
|
Obliczenia ADLA do użycia dla tego zadania. Domyślna wartość: None
|
|
version
|
Wersja modułu. Domyślna wartość: None
|
|
is_default
|
Wskazuje, czy opublikowana wersja ma być domyślną wersją. Domyślna wartość: False
|
|
source_directory
|
katalog Domyślna wartość: None
|
|
hash_paths
|
hash_paths Domyślna wartość: None
|
|
category
|
Kategoria wersji modułu Domyślna wartość: None
|
|
arguments
|
Argumenty do użycia podczas wywoływania modułu. Argumenty mogą być ciągami, odwołaniami wejściowymi (InputPortDef), odwołaniami wyjściowymi (OutputPortDef) i parametrami potoku (PipelineParameter). Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
publish_azure_batch
Utwórz moduł ModuleVersion używający usługi Azure Batch i dodaj go do bieżącego modułu.
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
| Nazwa | Opis |
|---|---|
|
description
Wymagane
|
Opis wersji modułu. |
|
compute_target
Wymagane
|
BatchCompute lub
str
Docelowy obiekt obliczeniowy BatchCompute. |
|
inputs
Wymagane
|
Powiązania wejściowe modułu. |
|
outputs
Wymagane
|
Powiązania wyjściowe modułu. |
|
params
|
Parametry ModuleVersion jako pary name-default_value. Domyślna wartość: None
|
|
create_sequencing_ports
|
Wskazuje, czy porty sekwencjonowania zostaną utworzone dla modułu. Domyślna wartość: True
|
|
version
|
Wersja modułu. Domyślna wartość: None
|
|
is_default
|
Wskazuje, czy opublikowana wersja ma być domyślną wersją. Domyślna wartość: False
|
|
create_pool
|
Wskazuje, czy należy utworzyć pulę przed uruchomieniem zadań. Domyślna wartość: False
|
|
pool_id
|
(Obowiązkowe) Identyfikator puli, w której zostanie uruchomione zadanie. Domyślna wartość: None
|
|
delete_batch_job_after_finish
|
Wskazuje, czy zadanie ma zostać usunięte z konta usługi Batch po zakończeniu. Domyślna wartość: False
|
|
delete_batch_pool_after_finish
|
Wskazuje, czy należy usunąć pulę po zakończeniu zadania. Domyślna wartość: False
|
|
is_positive_exit_code_failure
|
Wskazuje, czy zadanie kończy się niepowodzeniem, jeśli zadanie istnieje z kodem dodatnim. Domyślna wartość: True
|
|
vm_image_urn
|
Jeśli Domyślna wartość: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
|
|
run_task_as_admin
|
Wskazuje, czy zadanie powinno być uruchamiane z uprawnieniami administratora. Domyślna wartość: False
|
|
target_compute_nodes
|
Jeśli Domyślna wartość: 1
|
|
vm_size
|
Jeśli Domyślna wartość: standard_d1_v2
|
|
executable
|
Nazwa polecenia/pliku wykonywalnego, który zostanie wykonany w ramach zadania. Domyślna wartość: None
|
|
source_directory
|
Katalog źródłowy. Domyślna wartość: None
|
|
category
|
Kategoria wersji modułu Domyślna wartość: None
|
|
arguments
|
Argumenty do użycia podczas wywoływania modułu. Argumenty mogą być ciągami, odwołaniami wejściowymi (InputPortDef), odwołaniami wyjściowymi (OutputPortDef) i parametrami potoku (PipelineParameter). Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
Wyjątki
| Typ | Opis |
|---|---|
publish_python_script
Utwórz element ModuleVersion oparty na skry skrycie języka Python i dodaj go do bieżącego modułu.
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
| Nazwa | Opis |
|---|---|
|
script_name
Wymagane
|
Nazwa skryptu języka Python względem |
|
description
Wymagane
|
Opis wersji modułu. |
|
inputs
Wymagane
|
Powiązania wejściowe modułu. |
|
outputs
Wymagane
|
Powiązania wyjściowe modułu. |
|
params
|
Parametry ModuleVersion jako pary name-default_value. Domyślna wartość: None
|
|
create_sequencing_ports
|
Wskazuje, czy porty sekwencjonowania zostaną utworzone dla modułu. Domyślna wartość: True
|
|
version
|
Wersja modułu. Domyślna wartość: None
|
|
is_default
|
Wskazuje, czy opublikowana wersja ma być domyślną wersją. Domyślna wartość: False
|
|
source_directory
|
katalog Domyślna wartość: None
|
|
hash_paths
|
Lista ścieżek do skrótu podczas sprawdzania zmian w zawartości kroku. Jeśli nie wykryto żadnych zmian, potok ponownie użyje zawartości kroku z poprzedniego uruchomienia. Domyślnie zawartość obiektu Domyślna wartość: None
|
|
category
|
Kategoria wersji modułu Domyślna wartość: None
|
|
arguments
|
Argumenty do użycia podczas wywoływania modułu. Argumenty mogą być ciągami, odwołaniami wejściowymi (InputPortDef), odwołaniami wyjściowymi (OutputPortDef) i parametrami potoku (PipelineParameter). Domyślna wartość: None
|
|
runconfig
|
Opcjonalna konfiguracja RunConfiguration. Za pomocą polecenia RunConfiguration można określić dodatkowe wymagania dotyczące przebiegu, takie jak zależności conda i obraz platformy Docker. Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
resolve
Rozwiąż i zwróć właściwą wersję modułu.
resolve(version=None)
Parametry
| Nazwa | Opis |
|---|---|
|
version
|
Domyślna wartość: None
|
Zwraca
| Typ | Opis |
|---|---|
|
Wersja modułu do użycia. |