Pengantar Vertex AI Pipelines

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

Halaman ini memberikan ringkasan tentang hal berikut:

Apa yang dimaksud dengan pipeline ML?

Pipeline ML adalah deskripsi alur kerja MLOps yang portabel dan dapat diperluas sebagai serangkaian langkah yang disebut tugas pipeline. Setiap tugas melakukan 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 penampung yang saling terhubung menggunakan dependensi input-output. Anda dapat menulis setiap tugas dalam Python atau sebagai image container bawaan.

Anda dapat menentukan pipeline sebagai DAG menggunakan Kubeflow Pipelines SDK atau TFX SDK, mengompilasi ke YAML untuk representasi perantara, lalu menjalankan pipeline. Secara default, tugas pipeline berjalan secara paralel. Anda dapat menautkan tugas untuk menjalankannya secara berurutan. Untuk informasi selengkapnya tentang tugas pipeline, lihat Tugas pipeline. Untuk informasi selengkapnya 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 merutekan 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 kumpulan kode mandiri yang menjalankan langkah tertentu dari 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 parameter dan artefak input.

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

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

Komponen adalah dasar penentuan tugas dalam pipeline ML. Untuk menentukan tugas pipeline, Anda dapat menggunakan Komponen Pipeline Google Cloud bawaan atau membuat komponen kustom Anda sendiri.

Komponen standar

Gunakan Komponen Pipeline Google Cloud yang telah ditentukan jika Anda ingin menggunakan fitur Vertex AI, seperti AutoML, di pipeline Anda. Untuk mempelajari cara menggunakan Komponen Pipeline Google Cloud untuk menentukan pipeline, lihat Mem-build Pipeline.

Komponen kustom

Anda dapat menulis komponen kustom sendiri untuk digunakan di pipeline ML. Untuk informasi selengkapnya tentang cara menulis komponen kustom, lihat Mem-build komponen pipeline Anda sendiri.

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

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 mem-build pada kemampuan komputasi on-demand Vertex AI dengan Kubernetes untuk mengeksekusi kode secara skalabel, atau mendelegasikan beban kerja ke mesin eksekusi lain, seperti BigQuery, Dataflow, atau Dataproc Serverless.

Siklus proses pipeline ML

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

  1. Menentukan: Proses menentukan pipeline ML dan tugasnya juga disebut membuat 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 guna mem-build pipeline, lihat Antarmuka untuk menentukan pipeline.

    2. Menentukan tugas pipeline dan mengonfigurasi pipeline: Untuk informasi selengkapnya, lihat Mem-build Pipeline.

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

    1. Buat definisi pipeline ML dalam file YAML yang dikompilasi untuk representasi perantara, 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. Run: Buat instance eksekusi pipeline ML menggunakan file YAML yang dikompilasi atau template pipeline. Instance eksekusi definisi pipeline disebut operasi pipeline.

    Anda dapat membuat operasi pipeline satu kali atau menggunakan scheduler API untuk membuat operasi pipeline berulang dari definisi pipeline ML yang sama. Anda juga dapat meng-clone proses pipeline yang ada. Untuk mempelajari cara memilih antarmuka guna menjalankan pipeline ML, lihat 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 proses pipeline: Tidak ada batasan berapa lama Anda dapat mempertahankan proses pipeline tetap aktif. Secara opsional, Anda dapat melakukan hal berikut:

    • Menghentikan operasi pipeline.

    • Menjeda atau melanjutkan jadwal proses pipeline.

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

Apa yang dimaksud dengan operasi pipeline?

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

  • Menggunakan definisi YAML yang dikompilasi dari pipeline

  • Menggunakan template pipeline dari Galeri Template

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

Untuk informasi tentang cara mengambil dan menyimpan metadata operasi pipeline menggunakan Vertex ML Metadata, lihat Menggunakan Vertex ML Metadata untuk melacak silsilah artefak ML.

Untuk informasi tentang cara menggunakan operasi pipeline untuk bereksperimen pada alur kerja ML Anda menggunakan Vertex AI Experiments, lihat Menambahkan operasi pipeline ke eksperimen.

Melacak silsilah artefak ML

Proses 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 operasi pipeline ML. Silsilah artefak ML mencakup semua faktor yang berkontribusi pada pembuatannya, beserta metadata dan referensi ke artefak yang berasal darinya.

Grafik silsilah membantu Anda menganalisis akar masalah upstream dan dampak downstream. Setiap operasi pipeline menghasilkan grafik silsilah parameter dan artefak yang dimasukkan ke dalam operasi, terwujud dalam operasi, dan output dari operasi. Metadata yang menyusun grafik silsilah ini disimpan di Vertex ML Metadata. Metadata ini juga dapat disinkronkan ke Dataplex.

  • Menggunakan Vertex ML Metadata untuk melacak silsilah artefak pipeline

    Saat Anda menjalankan pipeline menggunakan Vertex AI Pipelines, semua parameter dan metadata artefak yang digunakan dan dihasilkan oleh pipeline akan disimpan di Vertex ML Metadata. Vertex ML Metadata adalah implementasi terkelola dari library ML Metadata di TensorFlow, dan mendukung pendaftaran serta penulisan skema metadata kustom. Saat Anda membuat operasi pipeline di Vertex AI Pipelines, metadata dari operasi pipeline akan disimpan di penyimpanan metadata default untuk project dan region tempat Anda menjalankan pipeline.

  • Menggunakan Dataplex untuk melacak silsilah artefak pipeline

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

    Pelajari biaya penggunaan Dataplex.

Untuk informasi selengkapnya tentang cara melacak silsilah artefak ML menggunakan Vertex ML Metadata 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 di 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 operasi eksperimen. Dengan demikian, 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 Vertex AI Experiments, lihat Pengantar Vertex AI Experiments.

Langkah selanjutnya