PipelineStep Kelas
Mewakili langkah eksekusi dalam alur Azure Machine Learning.
Alur dibangun dari beberapa langkah alur, yang merupakan unit komputasi berbeda di dalam alur. Setiap langkah dapat berjalan secara independen dan menggunakan sumber daya komputasi yang terisolasi. Setiap langkah biasanya memiliki input, output, dan parameternya dengan namanya sendiri.
Kelas PipelineStep adalah kelas dasar yang diwarisi kelas langkah bawaan lainnya yang dirancang untuk skenario umum, seperti PythonScriptStep, DataTransferStep, dan HyperDriveStep.
Untuk gambaran umum tentang hubungan Alur dan PipelineSteps, lihat Apa itu Alur Azure Machine Learning.
Menginisialisasi PipelineStep.
- Warisan
-
builtins.objectPipelineStep
Konstruktor
PipelineStep(name, inputs, outputs, arguments=None, fix_port_name_collisions=False, resource_inputs=None)
Parameter
Nama | Deskripsi |
---|---|
name
Diperlukan
|
Nama langkah alur. |
inputs
Diperlukan
|
Daftar input langkah. |
outputs
Diperlukan
|
Daftar output langkah. |
arguments
|
Daftar argumen opsional untuk diteruskan ke skrip yang digunakan dalam langkah tersebut. Nilai default: None
|
fix_port_name_collisions
|
Menentukan apakah akan memperbaiki tabrakan nama. Jika Benar input dan output memiliki nama yang sama, maka input diawali dengan "INPUT". Defaultnya adalah False. Nilai default: False
|
resource_inputs
|
Daftar input opsional untuk digunakan sebagai sumber daya. Sumber daya diunduh ke folder skrip dan menyediakan cara untuk mengubah perilaku skrip pada run-time. Nilai default: None
|
name
Diperlukan
|
Nama langkah alur. |
inputs
Diperlukan
|
Daftar input langkah. |
outputs
Diperlukan
|
Daftar output langkah. |
arguments
Diperlukan
|
Daftar argumen opsional untuk diteruskan ke skrip yang digunakan dalam langkah tersebut. |
fix_port_name_collisions
Diperlukan
|
Menentukan apakah akan memperbaiki tabrakan nama. Jika Benar input dan output memiliki nama yang sama, maka input diawali dengan "INPUT". Defaultnya adalah False. |
resource_inputs
Diperlukan
|
Daftar input opsional untuk digunakan sebagai sumber daya. Sumber daya diunduh ke folder skrip dan menyediakan cara untuk mengubah perilaku skrip pada run-time. |
Keterangan
PipelineStep adalah unit eksekusi yang biasanya membutuhkan target eksekusi (target komputasi), skrip untuk dijalankan dengan argumen dan input skrip opsional, dan dapat menghasilkan output. Langkah ini juga dapat mengambil sejumlah parameter lain yang spesifik untuk langkah tersebut.
Langkah alur dapat dikonfigurasi bersama untuk membuat Pipeline, yang mewakili alur kerja Azure Machine Learning yang dapat dibagikan dan digunakan kembali. Setiap langkah pada alur dapat dikonfigurasi untuk memungkinkan penggunaan kembali hasil eksekusi sebelumnya jika konten langkah (skrip/dependensi) serta input dan parameter tetap tidak berubah. Saat menggunakan kembali langkah tersebut, alih-alih mengirimkan pekerjaan untuk komputasi, hasil dari eksekusi sebelumnya segera tersedia untuk langkah selanjutnya.
Azure Machine Learning Pipelines menyediakan langkah bawaan untuk skenario umum. Misalnya, lihat paket steps dan kelas AutoMLStep. Untuk gambaran umum tentang membangun Alur berdasarkan langkah-langkah yang telah dibuat sebelumnya, lihat https://aka.ms/pl-first-pipeline.
Langkah-langkah yang telah dibuat sebelumnya, yang berasal dari PipelineStep, adalah langkah-langkah yang digunakan dalam satu alur. Jika alur kerja pembelajaran mesin Anda memerlukan pembuatan langkah-langkah untuk yang dapat diversikan dan digunakan di berbagai alur, gunakan kelas Module.
Ingatlah hal berikut saat bekerja dengan langkah-langkah alur, data I/O, dan penggunaan langkah kembali.
Disarankan agar Anda menggunakan lokasi source_directory terpisah untuk langkah-langkah terpisah. Jika semua skrip dalam langkah alur Anda berada dalam satu direktori, hash direktori tersebut berubah setiap kali Anda membuat perubahan pada satu skrip yang memaksa semua langkah untuk dijalankan ulang. Untuk contoh menggunakan direktori terpisah untuk langkah yang berbeda, lihat https://aka.ms/pl-get-started.
Mempertahankan folder terpisah untuk skrip dan file dependen untuk setiap langkah membantu mengurangi ukuran snapshot yang dibuat untuk setiap langkah karena hanya folder tertentu yang di-snapshot. Karena perubahan dalam file apa pun di source_directory langkah memicu unggahan ulang snapshot, mempertahankan folder terpisah setiap langkah, membantu penggunaan ulang langkah-langkah dalam alur, karena jika tidak ada perubahan di source_directory langkah, maka langkah sebelumnya digunakan kembali.
Jika data yang digunakan dalam satu langkah ada di penyimpanan data dan allow_reuse adalah True, perubahan pada perubahan data tidak akan terdeteksi. Jika data diunggah sebagai bagian dari snapshot (di bawah source_directory langkah), meskipun ini tidak disarankan, hash akan berubah dan akan memicu eksekusi ulang.
Metode
create_input_output_bindings |
Buat pengikatan input dan output dari input dan output langkah. |
create_module_def |
Buat objek definisi modul yang menjelaskan langkah tersebut. |
create_node |
Buat node untuk grafik alur berdasarkan langkah ini. |
get_source_directory |
Dapatkan direktori sumber untuk langkah tersebut dan periksa apakah skrip itu ada. |
resolve_input_arguments |
Cocokkan input dan output dengan argumen untuk menghasilkan string argumen. |
run_after |
Jalankan langkah ini setelah langkah yang ditentukan. |
validate_arguments |
Validasi bahwa input dan output langkah yang disediakan dalam argumen ada dalam daftar input dan output. |
create_input_output_bindings
Buat pengikatan input dan output dari input dan output langkah.
create_input_output_bindings(inputs, outputs, default_datastore, resource_inputs=None)
Parameter
Nama | Deskripsi |
---|---|
inputs
Diperlukan
|
Daftar input langkah. |
outputs
Diperlukan
|
Daftar output langkah. |
default_datastore
Diperlukan
|
Datastore default. |
resource_inputs
|
Daftar input yang akan digunakan sebagai sumber daya. Sumber daya diunduh ke folder skrip dan menyediakan cara untuk mengubah perilaku skrip pada run-time. Nilai default: None
|
Mengembalikan
Jenis | Deskripsi |
---|---|
Tuple dari pengikatan input dan pengikatan output. |
create_module_def
Buat objek definisi modul yang menjelaskan langkah tersebut.
create_module_def(execution_type, input_bindings, output_bindings, param_defs=None, create_sequencing_ports=True, allow_reuse=True, version=None, module_type=None, arguments=None, runconfig=None, cloud_settings=None)
Parameter
Nama | Deskripsi |
---|---|
execution_type
Diperlukan
|
Jenis eksekusi modul. |
input_bindings
Diperlukan
|
Pengikatan input langkah. |
output_bindings
Diperlukan
|
Pengikatan output langkah. |
param_defs
|
Definisi parameter langkah. Nilai default: None
|
create_sequencing_ports
|
Menentukan apakah port pengurutan akan dibuat untuk modul. Nilai default: True
|
allow_reuse
|
Menentukan apakah modul akan tersedia untuk digunakan kembali dalam alur mendatang. Nilai default: True
|
version
|
Versi modul. Nilai default: None
|
module_type
|
Jenis modul untuk layanan pembuatan modul yang akan dibuat. Saat ini hanya dua jenis yang didukung: 'Tidak Ada' dan 'BatchInferencing'.
Nilai default: None
|
arguments
|
Daftar argumen beranotasi untuk digunakan saat memanggil modul ini Nilai default: None
|
runconfig
|
Runconfig yang akan digunakan untuk python_script_step Nilai default: None
|
cloud_settings
|
<xref:azureml.pipeline.core._restclients.aeva.models.CloudSettings>
Pengaturan yang akan digunakan untuk cloud Nilai default: None
|
Mengembalikan
Jenis | Deskripsi |
---|---|
Objek definisi modul. |
create_node
Buat node untuk grafik alur berdasarkan langkah ini.
abstract create_node(graph, default_datastore, context)
Parameter
Nama | Deskripsi |
---|---|
graph
Diperlukan
|
Grafik untuk menambahkan node. |
default_datastore
Diperlukan
|
Penyimpanan data default untuk digunakan pada langkah ini. |
context
Diperlukan
|
<xref:azureml.pipeline.core._GraphContext>
Objek konteks grafik. |
Mengembalikan
Jenis | Deskripsi |
---|---|
Node yang dibuat. |
get_source_directory
Dapatkan direktori sumber untuk langkah tersebut dan periksa apakah skrip itu ada.
get_source_directory(context, source_directory, script_name)
Parameter
Nama | Deskripsi |
---|---|
context
Diperlukan
|
<xref:azureml.pipeline.core._GraphContext>
Objek konteks grafik. |
source_directory
Diperlukan
|
Direktori sumber untuk langkah tersebut. |
script_name
Diperlukan
|
Nama skrip untuk langkah tersebut. |
hash_paths
Diperlukan
|
Jalur hash yang akan digunakan saat menentukan sidik jari modul. |
Mengembalikan
Jenis | Deskripsi |
---|---|
Direktori sumber dan jalur hash. |
resolve_input_arguments
Cocokkan input dan output dengan argumen untuk menghasilkan string argumen.
static resolve_input_arguments(arguments, inputs, outputs, params)
Parameter
Nama | Deskripsi |
---|---|
arguments
Diperlukan
|
Daftar argumen langkah. |
inputs
Diperlukan
|
Daftar input langkah. |
outputs
Diperlukan
|
Daftar output langkah. |
params
Diperlukan
|
Daftar parameter langkah. |
Mengembalikan
Jenis | Deskripsi |
---|---|
Mengembalikan tuple dua item. Yang pertama adalah daftar item datar untuk argumen yang diselesaikan. Yang kedua adalah daftar argumen terstruktur (_InputArgument, _OutputArgument, _ParameterArgument, dan _StringArgument) |
run_after
Jalankan langkah ini setelah langkah yang ditentukan.
run_after(step)
Parameter
Nama | Deskripsi |
---|---|
step
Diperlukan
|
Langkah alur untuk dijalankan sebelum langkah ini. |
Keterangan
Jika Anda ingin menjalankan langkah, misalnya, langkah3 setelah langkah1 dan langkah2 selesai, Anda dapat menggunakan:
step3.run_after(step1)
step3.run_after(step2)
validate_arguments
Validasi bahwa input dan output langkah yang disediakan dalam argumen ada dalam daftar input dan output.
static validate_arguments(arguments, inputs, outputs)
Parameter
Nama | Deskripsi |
---|---|
arguments
Diperlukan
|
Daftar argumen langkah. |
inputs
Diperlukan
|
Daftar input langkah. |
outputs
Diperlukan
|
Daftar output langkah. |