CommandStep Sınıf
Komut çalıştıran bir Azure ML İşlem Hattı adımı oluşturun.
Komut çalıştıran bir Azure ML İşlem Hattı adımı oluşturun.
Oluşturucu
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)
Parametreler
| Name | Description |
|---|---|
|
command
|
çalıştırılacak komut veya ile ilgili Default value: None
|
|
name
|
Adımın adı. Belirtilmezse içindeki ilk sözcük Default value: None
|
|
compute_target
|
Kullanılacak işlem hedefi. Belirtilmezse, hedeften Default value: None
|
|
runconfig
|
Denemede eğitim çalıştırması göndermek için gerekli bilgileri kapsülleyen isteğe bağlı yapılandırma nesnesi. Default value: None
|
|
runconfig_pipeline_params
|
<xref:<xref:{str: PipelineParameter}>>
Her biri runconfig özelliğinin adı ve bu özellik için PipelineParameter olan anahtar-değer çiftlerini kullanarak çalışma zamanında runconfig özelliklerinin geçersiz kılmaları. Desteklenen değerler: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount' Default value: None
|
|
inputs
|
list[InputPortBinding veya
DataReference veya
PortDataReference veya
PipelineData veya
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> veya
DatasetConsumptionConfig]
Giriş bağlantı noktası bağlamalarının listesi. Default value: None
|
|
outputs
|
list[PipelineData veya
OutputDatasetConfig veya
PipelineOutputAbstractDataset veya
OutputPortBinding]
Çıkış bağlantı noktası bağlamalarının listesi. Default value: None
|
|
params
|
"AML_PARAMETER_" ile ortam değişkenleri olarak kaydedilen ad-değer çiftlerinin sözlüğü. Default value: None
|
|
source_directory
|
Betikler, conda env ve adımda kullanılan diğer kaynakları içeren bir klasör. Default value: None
|
|
allow_reuse
|
Aynı ayarlarla yeniden çalıştırıldığında adımın önceki sonuçları yeniden kullanıp kullanmayacağını gösterir. Yeniden kullanım varsayılan olarak etkindir. Adım içeriği (betikler/bağımlılıklar) ve girişler ve parametreler değişmeden kalırsa, bu adımın önceki çalıştırmasından elde edilen çıkış yeniden kullanılır. Adımı yeniden kullanırken, işi hesaplamaya göndermek yerine, önceki çalıştırmanın sonuçları sonraki tüm adımlarda hemen kullanılabilir duruma gelir. Giriş olarak Azure Machine Learning veri kümelerini kullanıyorsanız, yeniden kullanım, temel alınan verilerin değişip değişmediğine göre değil, veri kümesinin tanımının değişip değişmediğine göre belirlenir. Default value: True
|
|
version
|
Adım için işlev değişikliğini belirtmek için isteğe bağlı bir sürüm etiketi. Default value: None
|
|
command
Gerekli
|
çalıştırılacak komut veya ile ilgili |
|
name
Gerekli
|
Adımın adı. Belirtilmezse içindeki ilk sözcük |
|
compute_target
Gerekli
|
Kullanılacak işlem hedefi. Belirtilmezse, hedeften |
|
runconfig
Gerekli
|
Denemede eğitim çalıştırması göndermek için gerekli bilgileri kapsülleyen isteğe bağlı yapılandırma nesnesi. |
|
runconfig_pipeline_params
Gerekli
|
<xref:<xref:{str: PipelineParameter}>>
Her biri runconfig özelliğinin adı ve bu özellik için PipelineParameter olan anahtar-değer çiftlerini kullanarak çalışma zamanında runconfig özelliklerinin geçersiz kılmaları. Desteklenen değerler: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount' |
|
inputs
Gerekli
|
list[InputPortBinding veya
DataReference veya
PortDataReference veya
PipelineData veya
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> veya
DatasetConsumptionConfig]
Giriş bağlantı noktası bağlamalarının listesi. |
|
outputs
Gerekli
|
list[PipelineData veya
OutputDatasetConfig veya
PipelineOutputAbstractDataset veya
OutputPortBinding]
Çıkış bağlantı noktası bağlamalarının listesi. |
|
params
Gerekli
|
"AML_PARAMETER_" ile ortam değişkenleri olarak kaydedilen ad-değer çiftlerinin sözlüğü. |
|
source_directory
Gerekli
|
Betikler, conda env ve adımda kullanılan diğer kaynakları içeren bir klasör. |
|
allow_reuse
Gerekli
|
Aynı ayarlarla yeniden çalıştırıldığında adımın önceki sonuçları yeniden kullanıp kullanmayacağını gösterir. Yeniden kullanım varsayılan olarak etkindir. Adım içeriği (betikler/bağımlılıklar) ve girişler ve parametreler değişmeden kalırsa, bu adımın önceki çalıştırmasından elde edilen çıkış yeniden kullanılır. Adımı yeniden kullanırken, işi hesaplamaya göndermek yerine, önceki çalıştırmanın sonuçları sonraki tüm adımlarda hemen kullanılabilir duruma gelir. Giriş olarak Azure Machine Learning veri kümelerini kullanıyorsanız, yeniden kullanım, temel alınan verilerin değişip değişmediğine göre değil, veri kümesinin tanımının değişip değişmediğine göre belirlenir. |
|
version
Gerekli
|
Adım için işlev değişikliğini belirtmek için isteğe bağlı bir sürüm etiketi. |
Açıklamalar
CommandStep, verilen işlem hedefi üzerinde komut çalıştırmaya yönelik temel, yerleşik bir adımdır. Bir komutu parametre olarak veya runconfig gibi diğer parametrelerden alır. Ayrıca işlem hedefi, girişler ve çıkışlar gibi diğer isteğe bağlı parametreleri de alır. Özel docker görüntüsü gibi CommandStep gereksinimlerini belirtmek için veya ScriptRunConfigRunConfiguration kullanmalısınız.
CommandStep ile çalışmak için en iyi yöntem, adımla ilişkili bağımlı dosyaları çalıştırmak için yürütülebilir dosya veya betik için ayrı bir klasör kullanmak ve bu klasörü parametresiyle source_directory belirtmektir. Bu en iyi uygulamanın iki avantajı vardır. İlk olarak, yalnızca adım için gerekenler anlık görüntülendiğinden, adım için oluşturulan anlık görüntünün boyutunu azaltmaya yardımcı olur.
İkinci olarak, anlık görüntünün yeniden yüklenmesini tetikleyecek bir değişiklik source_directory yapılmazsa önceki çalıştırmadan alınan adım çıktısı yeniden kullanılabilir.
Sistem tarafından bilinen komutlar source_directory gerekli değildir, ancak yine de adımla ilişkili bağımlı dosyaları sağlayabilirsiniz.
Aşağıdaki kod örneğinde, bir makine öğrenmesi eğitim senaryosunda CommandStep'in nasıl kullanılacağı gösterilmektedir. Linux'ta dosyaları listelemek için:
from azureml.pipeline.steps import CommandStep
trainStep = CommandStep(name='list step',
command='ls -lrt',
compute_target=compute_target)
Python betiğini çalıştırmak için:
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)
ScriptRunConfig aracılığıyla python betiği çalıştırmak için:
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)
Genel olarak işlem hattı oluşturma hakkında daha fazla bilgi için bkz https://aka.ms/pl-first-pipeline .
Yöntemler
| create_node |
CommandStep için bir düğüm oluşturun ve bunu belirtilen grafiğe ekleyin. Bu yöntemin doğrudan kullanılması amaçlanmamıştır. Bu adımla bir işlem hattı örneği oluşturulduğunda, Azure ML gerekli parametreleri otomatik olarak bu yöntem aracılığıyla geçirir, böylece adım iş akışını temsil eden bir işlem hattı grafiğine eklenebilir. |
create_node
CommandStep için bir düğüm oluşturun ve bunu belirtilen grafiğe ekleyin.
Bu yöntemin doğrudan kullanılması amaçlanmamıştır. Bu adımla bir işlem hattı örneği oluşturulduğunda, Azure ML gerekli parametreleri otomatik olarak bu yöntem aracılığıyla geçirir, böylece adım iş akışını temsil eden bir işlem hattı grafiğine eklenebilir.
create_node(graph, default_datastore, context)
Parametreler
| Name | Description |
|---|---|
|
graph
Gerekli
|
Düğümün ekleneceği grafik nesnesi. |
|
default_datastore
Gerekli
|
Varsayılan veri deposu. |
|
context
Gerekli
|
<xref:_GraphContext>
Grafik bağlamı. |
Döndürülenler
| Tür | Description |
|---|---|
|
Oluşturulan düğüm. |