Pipeline Kelas
Mewakili kumpulan langkah-langkah yang dapat dijalankan sebagai alur kerja Azure Machine Learning yang dapat digunakan kembali.
Gunakan Alur untuk membuat dan mengelola alur kerja yang menggabungkan berbagai fase pembelajaran mesin. Setiap fase pembelajaran mesin, seperti persiapan data dan pelatihan model, dapat terdiri dari satu atau beberapa langkah dalam Alur.
Untuk gambaran umum mengapa dan kapan menggunakan Alur, lihat https://aka.ms/pl-concept.
Untuk gambaran umum tentang membangun Alur, lihat https://aka.ms/pl-first-pipeline.
Inisialisasi Alur.
Konstruktor
Pipeline(workspace, steps, description=None, default_datastore=None, default_source_directory=None, resolve_closure=True, _workflow_provider=None, _service_endpoint=None, **kwargs)
Parameter
| Nama | Deskripsi |
|---|---|
|
workspace
Diperlukan
|
Ruang kerja untuk mengirimkan Alur. |
|
steps
Diperlukan
|
Daftar langkah-langkah untuk dijalankan sebagai bagian dari Alur. |
|
description
Diperlukan
|
Penjabaran dari Alur. |
|
default_datastore
Diperlukan
|
Datastore default yang digunakan untuk koneksi data. |
|
default_source_directory
Diperlukan
|
Direktori skrip default untuk langkah-langkah yang menjalankan skrip. |
|
resolve_closure
Diperlukan
|
Apakah akan menyelesaikan penutupan atau tidak (secara otomatis membawa langkah-langkah dependen). |
|
workspace
Diperlukan
|
Ruang kerja untuk mengirimkan Alur. |
|
steps
Diperlukan
|
Daftar langkah-langkah untuk dijalankan sebagai bagian dari Alur. |
|
description
Diperlukan
|
Penjabaran dari Alur. |
|
default_datastore
Diperlukan
|
Datastore default yang digunakan untuk koneksi data. |
|
default_source_directory
Diperlukan
|
Direktori skrip default untuk langkah-langkah yang menjalankan skrip. |
|
resolve_closure
Diperlukan
|
Apakah menyelesaikan penutupan atau tidak (secara otomatis membawa langkah-langkah dependen). |
|
_workflow_provider
Diperlukan
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
Penyedia alur kerja, jika Tidak ada yang dibuat. |
|
_service_endpoint
Diperlukan
|
Titik akhir layanan, jika Tidak Ada yang ditentukan menggunakan ruang kerja. |
|
kwargs
Diperlukan
|
Argumen kata kunci kustom, dicadangkan untuk pengembangan di masa mendatang |
Keterangan
Alur dibuat dengan daftar langkah dan ruang kerja. Ada sejumlah jenis langkah yang dapat digunakan dalam alur. Anda akan memilih jenis langkah berdasarkan skenario pembelajaran mesin Anda.
Alur Azure Machine Learning menyediakan langkah-langkah bawaan untuk skenario umum. Langkah-langkah bawaan yang berasal dari PipelineStep adalah langkah-langkah yang digunakan dalam satu alur. Misalnya, lihat steps paket dan AutoMLStep kelas .
Jika Anda menggunakan panggilan alur kerja pembelajaran mesin untuk membuat langkah-langkah yang dapat di-versi dan digunakan di berbagai alur, gunakan fungsionalitas dalam Module modul.
Kirim alur menggunakan submit. Saat pengiriman dipanggil, dibuat PipelineRun yang pada gilirannya membuat StepRun objek untuk setiap langkah dalam alur kerja. Gunakan objek ini untuk memantau eksekusi eksekusi.
Contoh untuk mengirimkan Alur adalah sebagai berikut:
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=steps)
pipeline_run = experiment.submit(pipeline)
Ada sejumlah pengaturan opsional untuk Alur yang dapat ditentukan pada pengiriman di submit.
continue_on_step_failure: Apakah akan melanjutkan eksekusi alur jika langkah gagal; defaultnya adalah False. Jika True, hanya langkah-langkah yang tidak memiliki dependensi pada output langkah yang gagal yang akan melanjutkan eksekusi.
regenerate_outputs: Apakah akan memaksa regenerasi semua output langkah dan melarang penggunaan kembali data untuk eksekusi ini, defaultnya adalah False.
pipeline_parameters: Parameter untuk eksekusi alur, kamus {name: value}. Lihat PipelineParameter untuk detail selengkapnya.
parent_run_id: Anda dapat menyediakan id eksekusi untuk mengatur eksekusi induk eksekusi alur ini, yang tercermin dalam RunHistory. Eksekusi induk harus termasuk dalam eksperimen yang sama dengan tempat alur ini dikirimkan.
Contoh untuk mengirimkan Alur menggunakan pengaturan ini adalah sebagai berikut:
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=steps)
pipeline_run = experiment.submit(pipeline,
continue_on_step_failure=True,
regenerate_outputs=True,
pipeline_parameters={"param1": "value1"},
parent_run_id="<run_id>")
Metode
| load_yaml |
Muat Alur dari file YAML yang ditentukan. File YAML dapat digunakan untuk menjelaskan Alur yang terdiri dari ModuleSteps. |
| publish |
Terbitkan alur dan sediakan untuk menjalankan ulang. Setelah Alur diterbitkan, alur dapat dikirimkan tanpa kode Python yang membangun Alur. Mengembalikan yang dibuat PublishedPipeline. |
| service_endpoint |
Dapatkan titik akhir layanan yang terkait dengan alur. |
| submit |
Kirim eksekusi alur. Ini setara dengan menggunakan submit. Mengembalikan yang dikirimkan PipelineRun. Gunakan objek ini untuk memantau dan melihat detail eksekusi. |
| validate |
Validasi alur dan identifikasi potensi kesalahan, seperti input yang tidak terhubung. |
load_yaml
Muat Alur dari file YAML yang ditentukan.
File YAML dapat digunakan untuk menjelaskan Alur yang terdiri dari ModuleSteps.
static load_yaml(workspace, filename, _workflow_provider=None, _service_endpoint=None)
Parameter
| Nama | Deskripsi |
|---|---|
|
workspace
Diperlukan
|
Ruang kerja untuk mengirimkan Alur. |
|
filename
Diperlukan
|
File YAML yang menjelaskan Alur. |
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
Penyedia alur kerja. Nilai default: None
|
|
_service_endpoint
|
Titik akhir layanan, jika Tidak Ada, titik akhir ditentukan menggunakan ruang kerja. Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Alur yang dibangun. |
Keterangan
Lihat di bawah ini untuk contoh file YAML. YAML berisi nama, default_compute dan daftar parameter, referensi data, dan langkah-langkah untuk Alur. Setiap langkah harus menentukan pengikatan modul, komputasi dan parameter, input, dan output. Selain itu, runconfig langkah dan argumen dapat ditentukan jika perlu.
File Yaml sampel:
pipeline:
description: SamplePipelineFromYaml
parameters:
NumIterationsParameter:
type: int
default: 40
DataPathParameter:
type: datapath
default:
datastore: workspaceblobstore
path_on_datastore: sample2.txt
NodeCountParameter:
type: int
default: 4
data_references:
DataReference:
datastore: workspaceblobstore
path_on_datastore: testfolder/sample.txt
Dataset:
dataset_name: 'titanic'
default_compute: aml-compute
steps:
PrepareStep:
type: ModuleStep
name: "TestModule"
compute: aml-compute2
runconfig: 'D:\.azureml\default_runconfig.yml'
arguments:
-'--input1'
-input:in1
-'--input2'
-input:in2
-'--input3'
-input:in3
-'--output'
-output:output_data
-'--param'
-parameter:NUM_ITERATIONS
parameters:
NUM_ITERATIONS:
source: NumIterationsParameter
inputs:
in1:
source: Dataset
bind_mode: mount
in2:
source: DataReference
in3:
source: DataPathParameter
outputs:
output_data:
destination: Output1
datastore: workspaceblobstore
bind_mode: mount
TrainStep:
type: ModuleStep
name: "TestModule2"
version: "2"
runconfig: 'D:\.azureml\default_runconfig.yml'
arguments:
-'--input'
-input:train_input
-'--output'
-output:result
-'--param'
-parameter:NUM_ITERATIONS
parameters:
NUM_ITERATIONS: 10
runconfig_parameters:
NodeCount:
source: NodeCountParameter
inputs:
train_input:
source: Output1
bind_mode: mount
outputs:
result:
destination: Output2
datastore: workspaceblobstore
bind_mode: mount
publish
Terbitkan alur dan sediakan untuk menjalankan ulang.
Setelah Alur diterbitkan, alur dapat dikirimkan tanpa kode Python yang membangun Alur. Mengembalikan yang dibuat PublishedPipeline.
publish(name=None, description=None, version=None, continue_on_step_failure=None)
Parameter
| Nama | Deskripsi |
|---|---|
|
name
|
Nama alur yang diterbitkan. Nilai default: None
|
|
description
|
Deskripsi alur yang diterbitkan. Nilai default: None
|
|
version
|
Versi alur yang diterbitkan. Nilai default: None
|
|
continue_on_step_failure
|
Menunjukkan apakah akan melanjutkan eksekusi langkah lain di PipelineRun jika langkah gagal; defaultnya adalah false. Jika True, hanya langkah-langkah yang tidak memiliki dependensi pada output langkah yang gagal yang akan melanjutkan eksekusi. Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Membuat alur yang diterbitkan. |
service_endpoint
Dapatkan titik akhir layanan yang terkait dengan alur.
service_endpoint()
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Titik akhir layanan. |
submit
Kirim eksekusi alur. Ini setara dengan menggunakan submit.
Mengembalikan yang dikirimkan PipelineRun. Gunakan objek ini untuk memantau dan melihat detail eksekusi.
submit(experiment_name, pipeline_parameters=None, continue_on_step_failure=False, regenerate_outputs=False, parent_run_id=None, credential_passthrough=None, **kwargs)
Parameter
| Nama | Deskripsi |
|---|---|
|
experiment_name
Diperlukan
|
Nama eksperimen untuk mengirimkan alur. |
|
pipeline_parameters
|
Parameter untuk eksekusi alur, kamus {name: value}. Lihat PipelineParameter untuk detail selengkapnya. Nilai default: None
|
|
continue_on_step_failure
|
Menunjukkan apakah akan melanjutkan eksekusi alur jika langkah gagal. Jika True, hanya langkah-langkah yang tidak memiliki dependensi pada output langkah yang gagal yang akan melanjutkan eksekusi. Nilai default: False
|
|
regenerate_outputs
|
Menunjukkan apakah akan memaksa regenerasi semua output langkah dan melarang penggunaan kembali data untuk eksekusi ini. Jika False, eksekusi ini dapat menggunakan kembali hasil dari eksekusi sebelumnya dan eksekusi berikutnya dapat menggunakan kembali hasil eksekusi ini. Nilai default: False
|
|
parent_run_id
|
ID eksekusi opsional untuk diatur untuk eksekusi induk eksekusi alur ini, yang tercermin dalam RunHistory. Eksekusi induk harus milik eksperimen yang sama dengan alur ini sedang dikirimkan. Nilai default: None
|
|
credential_passthrough
|
Opsional, jika bendera ini diaktifkan, pekerjaan alur jarak jauh akan menggunakan kredensial pengguna yang memulai pekerjaan. Fitur ini hanya tersedia dalam pratinjau privat. Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Eksekusi alur yang dikirimkan. |
validate
Validasi alur dan identifikasi potensi kesalahan, seperti input yang tidak terhubung.
validate()
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Daftar kesalahan dalam alur. |
Keterangan
Contoh kesalahan validasi meliputi:
sumber data alur atau jenis langkah yang hilang atau tidak terduga
parameter atau definisi output yang hilang untuk sumber data atau langkah alur
input yang tidak tersambung
langkah-langkah alur yang membentuk perulangan atau siklus
Jika validasi lolos (mengembalikan daftar kosong) dan alur Anda tidak berfungsi, lihat alur Debug dan pemecahan masalah pembelajaran mesin.
Atribut
graph
Dapatkan grafik yang terkait dengan alur. Langkah-langkah dan input data muncul sebagai simpul dalam grafik.
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Grafiknya. |