Pengantar Vertex AI Pipelines

Vertex AI Pipelines memungkinkan Anda mengotomatiskan, memantau, dan mengatur sistem machine learning (ML) secara serverless menggunakan pipeline ML untuk mengorkestrasi alur kerja ML Anda. Anda dapat menjalankan batch pipeline ML yang ditentukan menggunakan Kubeflow Pipelines (Kubeflow Pipelines) atau framework TensorFlow Extended (TFX). Untuk mempelajari cara memilih framework guna menentukan pipeline ML Anda, baca Antarmuka untuk menentukan pipeline.

Halaman ini memberikan ringkasan tentang hal berikut:

Apa itu pipeline ML?

Pipeline ML adalah deskripsi yang portabel dan dapat diperluas dari alur kerja MLOps sebagai serangkaian langkah yang disebut tugas pipeline. Setiap tugas menjalankan langkah tertentu dalam alur kerja untuk melatih dan/atau men-deploy model ML.

Dengan pipeline ML, Anda dapat menerapkan strategi MLOps untuk mengotomatiskan dan memantau proses yang dapat diulang dalam praktik ML Anda. Misalnya, Anda dapat menggunakan kembali definisi pipeline untuk terus melatih ulang model pada data produksi terbaru. Untuk mengetahui informasi selengkapnya tentang MLOps di Vertex AI, lihat MLOps di Vertex AI.

Struktur pipeline ML

Pipeline ML adalah directed acyclic graph (DAG) dari tugas pipeline dalam container yang saling terhubung menggunakan dependensi input-output. Anda dapat memberi otorisasi pada setiap tugas di Python atau sebagai image container bawaan.

Anda dapat menentukan pipeline sebagai DAG menggunakan Kubeflow Pipelines SDK atau TFX SDK, mengompilasinya ke YAML-nya untuk representasi menengah, lalu menjalankan pipeline. Secara default, tugas pipeline berjalan secara paralel. Anda dapat menautkan tugas untuk dijalankan secara berurutan. Untuk informasi selengkapnya tentang tugas pipeline, lihat Tugas pipeline. Untuk mengetahui informasi lebih lanjut tentang alur kerja untuk menentukan, mengompilasi, dan menjalankan pipeline, lihat Siklus proses pipeline ML.

Tugas dan komponen pipeline

Tugas pipeline adalah pembuatan instance komponen pipeline dengan input tertentu. Saat menentukan pipeline ML, Anda dapat menghubungkan beberapa tugas untuk membentuk DAG, dengan mengarahkan output dari satu tugas pipeline ke input untuk tugas pipeline berikutnya dalam alur kerja ML. Anda juga dapat menggunakan input untuk pipeline ML sebagai input untuk tugas pipeline.

Komponen pipeline

Komponen pipeline adalah rangkaian kode mandiri yang menjalankan langkah tertentu dalam alur kerja ML, seperti pra-pemrosesan data, pelatihan model, atau deployment model. Komponen biasanya terdiri dari hal berikut:

  • Input: Komponen mungkin memiliki satu atau beberapa artefak input dan artefak.

  • Output: Setiap komponen memiliki satu atau beberapa artefak atau parameter output.

  • Logika: Ini adalah kode komponen yang dapat dieksekusi. Untuk komponen dalam container, logika juga berisi definisi lingkungan, atau image container, tempat komponen dijalankan.

Komponen adalah dasar untuk menentukan tugas dalam pipeline ML. Untuk menentukan tugas pipeline, Anda dapat menggunakan Komponen Pipeline Google Cloud yang telah ditetapkan atau membuat komponen kustom.

Komponen yang telah ditetapkan

Gunakan Komponen Pipeline Google Cloud yang telah ditentukan sebelumnya jika Anda ingin menggunakan fitur Vertex AI, seperti AutoML, di pipeline Anda. Untuk mempelajari cara menggunakan Komponen Pipeline Google Cloud guna menentukan pipeline, lihat artikel Membangun Pipeline.

Komponen kustom

Anda dapat menulis komponen kustom untuk digunakan dalam pipeline ML Anda. Untuk informasi selengkapnya tentang penulisan komponen kustom, lihat Membuat komponen pipeline Anda sendiri.

Untuk mempelajari cara menulis komponen Kubeflow Pipelines kustom, lihat "Pipeline dengan komponen ringan berdasarkan fungsi Python" notebook Jupyter di GitHub. Untuk mempelajari cara menulis komponen TFX kustom, lihat tutorial komponen fungsi Python TFX pada tutorial TensorFlow Extended in Production.

Tugas pipeline

Tugas pipeline adalah pembuatan instance komponen pipeline dan melakukan langkah tertentu dalam alur kerja ML Anda. Anda dapat menulis tugas pipeline ML menggunakan Python atau sebagai image container bawaan.

Dalam tugas, Anda dapat membangun kemampuan komputasi on-demand Vertex AI dengan Kubernetes untuk mengeksekusi kode Anda secara skalabel, atau mendelegasikan beban kerja Anda ke mesin eksekusi lain, seperti BigQuery, Dataflow, atau Dataproc Serverless.

Siklus proses pipeline ML

Mulai dari definisi hingga eksekusi dan pemantauan, siklus proses pipeline ML terdiri dari tahapan tingkat tinggi berikut:

  1. Mendefinisikan: Proses penetapan pipeline ML dan tugasnya juga disebut mem-build pipeline. Pada tahap ini, Anda perlu melakukan langkah-langkah berikut:

    1. Memilih framework ML: Vertex AI Pipelines mendukung pipeline ML yang ditentukan menggunakan framework TFX atau Kubeflow Pipelines. Untuk mempelajari cara memilih framework untuk mem-build pipeline, baca bagian Antarmuka untuk menentukan pipeline.

    2. Menentukan tugas pipeline dan mengonfigurasi pipeline: Untuk informasi selengkapnya, lihat Membangun Pipeline.

  2. Compile: Pada tahap ini, Anda perlu melakukan langkah-langkah berikut:

    1. Buat definisi pipeline ML Anda dalam file YAML yang dikompilasi untuk representasi menengah, yang dapat Anda gunakan untuk menjalankan pipeline ML.

    2. Opsional: Anda dapat mengupload file YAML yang dikompilasi sebagai template pipeline ke repositori dan menggunakannya kembali untuk membuat operasi pipeline ML.

  3. Jalankan: Buat instance eksekusi pipeline ML Anda menggunakan file YAML yang telah dikompilasi atau template pipeline. Instance eksekusi definisi pipeline disebut pipeline run.

    Anda dapat membuat satu kali eksekusi pipeline atau menggunakan Penjadwal Vertex AI untuk membuat operasi pipeline berulang dari definisi pipeline ML yang sama. Anda juga dapat meng-clone operasi pipeline yang ada. Untuk mempelajari cara memilih antarmuka untuk menjalankan pipeline ML, baca Antarmuka untuk menjalankan pipeline. Untuk mengetahui informasi selengkapnya tentang cara membuat operasi pipeline, lihat Menjalankan pipeline.

  4. Memantau, memvisualisasikan, dan menganalisis operasi: Setelah membuat operasi pipeline, Anda dapat melakukan hal berikut untuk memantau performa, status, dan biaya operasi pipeline:

  5. Opsional: menghentikan atau menghapus operasi pipeline: Tidak ada pembatasan mengenai berapa lama Anda dapat menjaga pipeline berjalan tetap aktif. Secara opsional, Anda dapat melakukan hal berikut:

    • Menghentikan operasi pipeline.

    • Menjeda atau melanjutkan jadwal operasi pipeline.

    • Menghapus template pipeline, operasi pipeline, atau jadwal operasi pipeline yang ada.

Apa itu operasi pipeline?

Operasi pipeline adalah instance eksekusi dari definisi pipeline ML Anda. Setiap operasi pipeline diidentifikasi dengan nama operasi yang unik. Dengan Vertex AI Pipelines, Anda dapat membuat pipeline ML yang dijalankan dengan cara berikut:

  • Menggunakan definisi YAML yang dikompilasi dari suatu pipeline

  • Menggunakan template pipeline dari Galeri Template

Untuk mengetahui informasi selengkapnya tentang cara membuat operasi pipeline, lihat Menjalankan pipeline. Untuk mengetahui informasi selengkapnya tentang cara membuat pipeline yang dijalankan dari template pipeline, lihat Membuat, mengupload, dan menggunakan template pipeline.

Untuk mengetahui informasi tentang pelacakan dan penyimpanan artefak run pipeline dan metadata menggunakan Vertex ML Metadata, lihat Menggunakan Metadata Vertex ML untuk melacak silsilah artefak ML.

Untuk mengetahui informasi tentang penggunaan operasi pipeline untuk bereksperimen di alur kerja ML menggunakan Eksperimen Vertex AI, lihat Menambahkan pipeline yang berjalan ke eksperimen.

Menggunakan Vertex ML Metadata untuk melacak silsilah artefak ML

Operasi pipeline berisi beberapa artefak dan parameter, termasuk metadata pipeline. Untuk memahami perubahan performa atau akurasi sistem ML, Anda perlu menganalisis metadata dan silsilah artefak ML dari pipeline ML yang dijalankan. Silsilah artefak ML mencakup semua faktor yang berkontribusi pada pembuatannya, beserta artefak dan metadata yang dihasilkannya.

Untuk mengelola dan menganalisis metadata ini secara efisien, Anda dapat menggunakan Metadata Dataplex atau Vertex ML.

  • Menggunakan Dataplex untuk melacak silsilah artefak pipeline (pratinjau)

    Dataplex adalah data fabric global dan lintas project yang terintegrasi dengan beberapa sistem dalam Google Cloud, seperti Vertex AI, BigQuery, dan Cloud Composer. Dengan Dataplex, Anda dapat menemukan resource Google Cloud, termasuk proses dan artefak pipeline. Dalam Dataplex, Anda dapat menelusuri artefak pipeline dan melihat grafik silsilahnya. Untuk mencegah konflik artefak, setiap resource yang terdaftar dalam Dataplex diidentifikasi dengan nama yang sepenuhnya memenuhi syarat (FQN).

    Pelajari biaya penggunaan Dataplex.

  • Menggunakan Vertex ML Metadata untuk melacak silsilah artefak pipeline

    Saat Anda menjalankan pipeline menggunakan Vertex AI Pipelines, semua artefak dan metadata yang dihasilkan oleh pipeline tersebut akan disimpan di Metadata Vertex ML. Saat menggunakan Vertex ML Metadata, Anda dapat membuat penulisan metadata arbitrer. Perhatikan bahwa Metadata Vertex ML hanya terintegrasi dengan Vertex AI Pipelines dan tidak mengintegrasikan produk dan resource Google Cloud lainnya. Alat ini juga memungkinkan Anda menganalisis metadata berdasarkan project dan region yang ditentukan.

Untuk mengetahui informasi selengkapnya tentang pelacakan silsilah artefak ML menggunakan Metadata Vertex ML dan Dataplex, lihat Melacak silsilah artefak pipeline.

Untuk informasi selengkapnya tentang memvisualisasikan, menganalisis, dan membandingkan operasi pipeline, lihat Memvisualisasikan dan menganalisis hasil pipeline. Untuk mengetahui daftar jenis artefak pihak pertama yang ditentukan dalam Komponen Pipeline Google Cloud, lihat Jenis artefak Metadata ML.

Menambahkan operasi pipeline ke eksperimen

Vertex AI Experiments memungkinkan Anda melacak dan menganalisis berbagai arsitektur model, hyperparameter, dan lingkungan pelatihan untuk menemukan model terbaik untuk kasus penggunaan ML Anda. Setelah membuat operasi pipeline ML, Anda dapat mengaitkannya dengan eksperimen atau eksperimen yang dijalankan. Dengan begitu, Anda dapat bereksperimen dengan berbagai kumpulan variabel, seperti hyperparameter, jumlah langkah pelatihan, atau iterasi.

Untuk mengetahui informasi selengkapnya tentang bereksperimen dengan alur kerja ML menggunakan Eksperimen Vertex AI, lihat Pengantar Eksperimen Vertex AI.

Langkah selanjutnya