Bagikan melalui


Pipeline Kelas

Mewakili kumpulan langkah-langkah yang bisa dijalankan sebagai alur kerja Azure Machine Learning yang bisa digunakan kembali.

Gunakan Alur untuk membuat dan mengelola alur kerja yang merangkai berbagai fase pembelajaran mesin. Setiap fase pembelajaran mesin, seperti penyiapan data dan pelatihan model, dapat terdiri dari satu atau lebih langkah dalam Alur.

Untuk gambaran umum tentang mengapa dan kapan harus menggunakan Alur, lihat https://aka.ms/pl-concept.

Untuk gambaran umum tentang membangun Alur, lihat https://aka.ms/pl-first-pipeline.

Menginisialisasi Alur.

Warisan
builtins.object
Pipeline

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 yang harus dijalankan sebagai bagian dari Alur.

description
Diperlukan
str

Deskripsi Alur.

default_datastore
Diperlukan

Penyimpanan data default untuk digunakan pada koneksi data.

default_source_directory
Diperlukan
str

Direktori skrip default untuk langkah-langkah yang menjalankan skrip.

resolve_closure
Diperlukan

Apakah akan menyelesaikan penutupan atau tidak (secara otomatis membawa langkah-langkah yang tergantung).

workspace
Diperlukan

Ruang kerja untuk mengirimkan Alur.

steps
Diperlukan

Daftar langkah-langkah yang harus dijalankan sebagai bagian dari Alur.

description
Diperlukan
str

Deskripsi Alur.

default_datastore
Diperlukan

Penyimpanan data default untuk digunakan pada koneksi data.

default_source_directory
Diperlukan
str

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
str

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 serta ruang kerja. Ada sejumlah jenis langkah yang bisa digunakan dalam alur. Anda akan memilih jenis langkah berdasarkan skenario pembelajaran mesin Anda.

  • Azure Machine Learning Pipelines menyediakan langkah bawaan untuk skenario umum. Langkah-langkah pra-dibangun yang berasal dari PipelineStep adalah langkah-langkah yang dipakai dalam satu alur. Misalnya, lihat paket steps dan kelas AutoMLStep.

  • Jika alur kerja pembelajaran mesin Anda memerlukan pembuatan langkah-langkah untuk yang dapat dibuat versinya dan digunakan di berbagai alur, gunakan fungsionalitas di modul Module.

Kirim alur menggunakan submit. Saat pengiriman dipanggil, PipelineRun dibuat yang pada gilirannya membuat objek StepRun untuk setiap langkah dalam alur kerja. Gunakan objek ini untuk memantau pelaksanaan eksekusi.

Contoh 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 bisa ditentukan pada pengiriman di submit.

  • continue_on_step_failure: Apakah akan melanjutkan eksekusi alur apabila langkah gagal; defaultnya adalah False. Jika True, hanya langkah-langkah yang tidak memiliki dependensi pada output dari langkah yang gagal saja yang akan melanjutkan eksekusi.

  • Menunjukkan apakah akan memaksa regenerasi semua output langkah serta melarang penggunaan kembali data untuk eksekusi ini, defaultnya False.

  • pipeline_parameters: Parameter untuk eksekusi alur, kamus {name: value}. Lihat PipelineParameter untuk detail selengkapnya.

  • parent_run_id: Anda bisa menyediakan ID eksekusi untuk mengatur eksekusi induk dari eksekusi alur ini, yang tercermin dalam RunHistory. Eksekusi induk harus termasuk dalam eksperimen yang sama dengan alur pengiriman ini.

Contoh 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 bisa digunakan untuk menggambarkan Alur yang terdiri dari ModuleSteps.

publish

Terbitkan alur dan buat menjadi tersedia untuk dijalankan kembali.

Setelah Alur diterbitkan, alur tersebut dapat dikirimkan tanpa kode Python yang membangun Alur. Mengembalikan PublishedPipeline yang dibuat.

service_endpoint

Dapatkan titik akhir layanan yang berkaitan dengan alur.

submit

Mengirim eksekusi alur. Tindakan ini sama seperti menggunakan submit.

Mengembalikan PipelineRun yang diserahkan. Gunakan objek ini untuk memantau dan melihat detail eksekusi.

validate

Validasi alur serta identifikasi potensi kesalahan, seperti input yang tidak terhubung.

load_yaml

Muat Alur dari file YAML yang ditentukan.

File YAML bisa digunakan untuk menggambarkan 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
str

File YAML yang menjelaskan Alur.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

Penyedia alur kerja.

Nilai default: None
_service_endpoint
str

Titik akhir layanan, jika Tidak Ada, ditentukan menggunakan ruang kerja.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Alur yang dibangun.

Keterangan

Lihat di bawah untuk contoh file YAML. YAML berisi nama, default_compute dan daftar parameter, referensi data, dan langkah-langkah untuk Alur. Setiap langkah harus menentukan modul, komputasi dan parameter, input, serta pengikatan 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 buat menjadi tersedia untuk dijalankan kembali.

Setelah Alur diterbitkan, alur tersebut dapat dikirimkan tanpa kode Python yang membangun Alur. Mengembalikan PublishedPipeline yang dibuat.

publish(name=None, description=None, version=None, continue_on_step_failure=None)

Parameter

Nama Deskripsi
name
str

Nama alur yang diterbitkan.

Nilai default: None
description
str

Deskripsi alur yang diterbitkan.

Nilai default: None
version
str

Versi alur yang diterbitkan.

Nilai default: None
continue_on_step_failure

Menunjukkan apakah akan melanjutkan eksekusi langkah lain di PipelineRun jika langkah gagal, defaultnya salah. Jika True, hanya langkah-langkah yang tidak memiliki dependensi pada output dari langkah yang gagal saja yang akan melanjutkan eksekusi.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Membuat alur yang diterbitkan.

service_endpoint

Dapatkan titik akhir layanan yang berkaitan dengan alur.

service_endpoint()

Mengembalikan

Jenis Deskripsi
str

Titik akhir layanan.

submit

Mengirim eksekusi alur. Tindakan ini sama seperti menggunakan submit.

Mengembalikan PipelineRun yang diserahkan. 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
str

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 apabila langkah gagal. Jika True, hanya langkah-langkah yang tidak memiliki dependensi pada output dari langkah yang gagal saja yang akan melanjutkan eksekusi.

Nilai default: False
regenerate_outputs

Menunjukkan apakah akan memaksa regenerasi semua output langkah serta melarang penggunaan kembali data untuk menjalankan ini. Jika False, eksekusi ini dapat menggunakan kembali hasil dari eksekusi sebelumnya dan eksekusi berikutnya dapat menggunakan kembali hasil lari ini.

Nilai default: False
parent_run_id
str

ID eksekusi opsional untuk diatur agar eksekusi induk dari eksekusi alur ini, yang tercermin dalam RunHistory. Eksekusi induk harus termasuk dalam eksperimen yang sama dengan alur ini yang sedang dikirimkan.

Nilai default: None
credential_passthrough

Opsional, jika bendera ini diaktifkan, pekerjaan alur jarak jauh akan menggunakan informasi masuk pengguna yang memulai pekerjaan. Fitur ini hanya tersedia dalam pratinjau pribadi.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Alur yang dikirimkan berjalan.

validate

Validasi alur serta identifikasi potensi kesalahan, seperti input yang tidak terhubung.

validate()

Mengembalikan

Jenis Deskripsi

Daftar kesalahan-kesalahan dalam alur.

Keterangan

Contoh kesalahan validasi termasuk:

  • sumber data alur yang hilang atau tidak terduga atau jenis langkah

  • parameter atau definisi output yang hilang untuk sumber data atau langkah alur

  • input yang tidak terhubung

  • langkah-langkah alur yang membentuk loop atau siklus

Jika validasi lolos (mengembalikan daftar kosong) serta alur Anda tidak berfungsi, lihat Debug dan memecahkan masalah alur pembelajaran mesin.

Atribut

graph

Dapatkan grafik yang berkaitan dengan alur. Langkah serta input data muncul sebagai node dalam grafik.

Mengembalikan

Jenis Deskripsi

Grafiknya.