CommandStep Класс
Создание этапа конвейера Azure ML, который выполняет команду.
Создание этапа конвейера Azure ML, который выполняет команду.
- Наследование
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBaseCommandStep
Конструктор
CommandStep(command=None, name=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, allow_reuse=True, version=None)
Параметры
Имя | Описание |
---|---|
command
|
Команда для выполнения или путь к исполняемому файлу или скрипту относительно Default value: None
|
name
|
Имя шага этапа. Если значение не указано, используется первое слово в Default value: None
|
compute_target
|
Целевой объект вычислений для использования. Если значение не указано, используется целевой объект из Default value: None
|
runconfig
|
Необязательный объект конфигурации, который инкапсулирует сведения, необходимые для отправки выполнения обучения в эксперименте. Default value: None
|
runconfig_pipeline_params
|
<xref:<xref:{str: PipelineParameter}>>
Переопределяет свойства runconfig во время выполнения с использованием пар "ключ-значение", каждая из которых имеет имя свойства runconfig и PipelineParameter для этого свойства. Поддерживаемые значения: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount" Default value: None
|
inputs
|
list[InputPortBinding или
DataReference или
PortDataReference или
PipelineData или
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> или
DatasetConsumptionConfig]
Список входных привязок портов. Default value: None
|
outputs
|
Список выходных привязок портов. Default value: None
|
params
|
Словарь пар "имя-значение", зарегистрированных как переменные среды с помощью "AML_PARAMETER_". Default value: None
|
source_directory
|
Папка, содержащая скрипты, среду Conda и другие ресурсы, используемые на этапе. Default value: None
|
allow_reuse
|
Указывает, должен ли этап повторно использовать предыдущие результаты при повторном выполнении с теми же параметрами. Повторное использование включено по умолчанию. Если содержимое этапа (скрипты или зависимости), а также входные данные и параметры не изменяются, выходные данные предыдущего выполнения этого этапа используются повторно. При повторном использовании этапа вместо отправки задания для вычисления немедленно предоставляются результаты предыдущего выполнения для последующих этапов. Если в качестве входных данных используются наборы данных Машинного обучения Azure, то повторное использование зависит от изменения определения набора данных, а не базовых данных. Default value: True
|
version
|
Необязательный тег версии для обозначения изменения функциональных возможностей этапа. Default value: None
|
command
Обязательно
|
Команда для выполнения или путь к исполняемому файлу или скрипту относительно |
name
Обязательно
|
Имя шага этапа. Если значение не указано, используется первое слово в |
compute_target
Обязательно
|
Целевой объект вычислений для использования. Если значение не указано, используется целевой объект из |
runconfig
Обязательно
|
Необязательный объект конфигурации, который инкапсулирует сведения, необходимые для отправки выполнения обучения в эксперименте. |
runconfig_pipeline_params
Обязательно
|
<xref:<xref:{str: PipelineParameter}>>
Переопределяет свойства runconfig во время выполнения с использованием пар "ключ-значение", каждая из которых имеет имя свойства runconfig и PipelineParameter для этого свойства. Поддерживаемые значения: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount" |
inputs
Обязательно
|
list[InputPortBinding или
DataReference или
PortDataReference или
PipelineData или
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> или
DatasetConsumptionConfig]
Список входных привязок портов. |
outputs
Обязательно
|
Список выходных привязок портов. |
params
Обязательно
|
Словарь пар "имя-значение", зарегистрированных как переменные среды с помощью "AML_PARAMETER_". |
source_directory
Обязательно
|
Папка, содержащая скрипты, среду Conda и другие ресурсы, используемые на этапе. |
allow_reuse
Обязательно
|
Указывает, должен ли этап повторно использовать предыдущие результаты при повторном выполнении с теми же параметрами. Повторное использование включено по умолчанию. Если содержимое этапа (скрипты или зависимости), а также входные данные и параметры не изменяются, выходные данные предыдущего выполнения этого этапа используются повторно. При повторном использовании этапа вместо отправки задания для вычисления немедленно предоставляются результаты предыдущего выполнения для последующих этапов. Если в качестве входных данных используются наборы данных Машинного обучения Azure, то повторное использование зависит от изменения определения набора данных, а не базовых данных. |
version
Обязательно
|
Необязательный тег версии для обозначения изменения функциональных возможностей этапа. |
Комментарии
CommandStep — это базовый встроенный этап выполнения команды в заданном целевом объекте вычислений. Он принимает команду в качестве параметра или из других параметров, таких как runconfig. Он также принимает другие необязательные параметры, такие как целевой объект вычислений, входные и выходные данные. Чтобы указать требования для CommandStep, например пользовательский образ Docker, необходимо использовать ScriptRunConfig или RunConfiguration.
Для работы с CommandStep рекомендуется использовать отдельную папку для исполняемого файла или скрипта для выполнения зависимых файлов, связанных с этим этапом, и указать эту папку с помощью параметра source_directory
. Эта рекомендация имеет два преимущества. Во-первых, это помогает уменьшить размер моментального снимка, создаваемого для этапа, поскольку создается моментальный снимок всего, что требуется для данного этапа.
Во-вторых, выходные данные этапа предыдущего выполнения могут быть использованы повторно, если нет изменений source_directory
, которые активируют повторную отправку моментального снимка.
Для системно известных команд каталог source_directory
не требуется, но его по-прежнему можно указывать со всеми зависимыми файлами, связанными с этим этапом.
В следующем примере кода показано, как использовать CommandStep в сценарии обучения машинного обучения. Для вывода списка файлов в Linux:
from azureml.pipeline.steps import CommandStep
trainStep = CommandStep(name='list step',
command='ls -lrt',
compute_target=compute_target)
Для выполнения скрипта Python:
from azureml.pipeline.steps import CommandStep
trainStep = CommandStep(name='train step',
command='python train.py arg1 arg2',
source_directory=project_folder,
compute_target=compute_target)
Для выполнения скрипта Python через ScriptRunConfig:
from azureml.core import ScriptRunConfig
from azureml.pipeline.steps import CommandStep
train_src = ScriptRunConfig(source_directory=script_folder,
command='python train.py arg1 arg2',
environment=my_env)
trainStep = CommandStep(name='train step',
runconfig=train_src)
Для дополнительных сведений о создании конвейеров см. https://aka.ms/pl-first-pipeline.
Методы
create_node |
Создание узла для CommandStep и его добавление в указанный граф. Данный метод не предназначен для непосредственного использования. При создании экземпляра конвейера с помощью этого этапа Azure ML автоматически передает необходимые параметры через этот метод, чтобы данный этап можно было добавить в граф конвейера, представляющий рабочий процесс. |
create_node
Создание узла для CommandStep и его добавление в указанный граф.
Данный метод не предназначен для непосредственного использования. При создании экземпляра конвейера с помощью этого этапа Azure ML автоматически передает необходимые параметры через этот метод, чтобы данный этап можно было добавить в граф конвейера, представляющий рабочий процесс.
create_node(graph, default_datastore, context)
Параметры
Имя | Описание |
---|---|
graph
Обязательно
|
Объект графа, в который добавляется узел. |
default_datastore
Обязательно
|
Хранилище данных по умолчанию. |
context
Обязательно
|
<xref:_GraphContext>
Контекст графа. |
Возвращаемое значение
Тип | Описание |
---|---|
Созданный узел. |