Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
CI/CD (integrasi berkelanjutan dan pengiriman berkelanjutan) mengacu pada proses otomatis untuk mengembangkan, menyebarkan, memantau, dan memelihara aplikasi Anda. Dengan mengotomatiskan pembuatan, pengujian, dan penyebaran kode, tim pengembangan dapat memberikan rilis yang lebih sering dan andal daripada proses manual yang masih lazim di banyak tim rekayasa data dan ilmu data. CI/CD untuk pembelajaran mesin menyatukan teknik MLOps, DataOps, ModelOps, dan DevOps.
Artikel ini menjelaskan bagaimana Databricks mendukung CI/CD untuk solusi pembelajaran mesin. Dalam aplikasi pembelajaran mesin, CI/CD penting tidak hanya untuk aset kode, tetapi juga diterapkan pada alur data, termasuk data input dan hasil yang dihasilkan oleh model.
Elemen pembelajaran mesin yang membutuhkan CI/CD
Salah satu tantangan pengembangan ML adalah bahwa tim yang berbeda memiliki berbagai bagian proses. Teams mungkin mengandalkan alat yang berbeda dan memiliki jadwal rilis yang berbeda. Azure Databricks menyediakan satu data terpadu dan platform ML dengan alat terintegrasi untuk meningkatkan efisiensi tim dan memastikan konsistensi dan pengulangan data dan alur ML.
Secara umum untuk tugas pembelajaran mesin, berikut ini harus dilacak dalam alur kerja CI/CD otomatis:
- Data pelatihan, termasuk kualitas data, perubahan skema, dan perubahan distribusi.
- Alur masukan data.
- Kode untuk pelatihan, validasi, dan penyajian model.
- Prediksi dan performa model.
Mengintegrasikan Databricks ke dalam proses CI/CD Anda
MLOps, DataOps, ModelOps, dan DevOps mengacu pada integrasi proses pengembangan dengan "operasi" - membuat proses dan infrastruktur dapat diprediksi dan dapat diandalkan. Kumpulan artikel ini menjelaskan cara mengintegrasikan prinsip operasi ("ops") ke dalam alur kerja ML Anda pada platform Databricks.
Databricks menggabungkan semua komponen yang diperlukan untuk siklus hidup ML termasuk alat untuk membangun "konfigurasi sebagai kode" untuk memastikan reproduksi dan "infrastruktur sebagai kode" untuk mengotomatiskan provisi layanan cloud. Ini juga termasuk layanan pengelogan dan pemberitahuan untuk membantu Anda mendeteksi dan memecahkan masalah saat terjadi.
DataOps: Data yang andal dan aman
Model ML yang baik tergantung pada alur dan infrastruktur data yang andal. Dengan Databricks Data Intelligence Platform, seluruh alur data dari menyerap data ke output dari model yang dilayani ada di satu platform dan menggunakan set alat yang sama, yang memfasilitasi produktivitas, reproduktifitas, berbagi, dan pemecahan masalah.
Tugas dan alat DataOps di Databricks
Tabel mencantumkan tugas dan alat DataOps umum di Databricks:
| Tugas DataOps | Alat pada Databricks |
|---|---|
| Menyerap dan mengubah data | Auto Loader dan Apache Spark |
| Melacak perubahan pada data termasuk penerapan versi dan silsilah data | tabel Delta |
| Membangun, mengelola, dan memantau alur pemrosesan data | Alur Deklaratif Lakeflow Spark |
| Memastikan keamanan dan tata kelola data | Katalog Unity |
| Analisis data eksploratif dan dasbor | Databricks SQL, Dashboard, dan Buku Catatan Databricks |
| Pengkodan umum | Databricks SQL dan buku catatan Databricks |
| Menjadwalkan alur kerja data | Pekerjaan Lakeflow |
| Mengotomatiskan alur kerja umum | Pekerjaan Lakeflow |
| Membuat, menyimpan, mengelola, dan menemukan fitur untuk pelatihan model | Penyimpanan Fitur Databricks |
| Pemantauan data | Pemantauan kualitas data |
ModelOps: Pengembangan model dan siklus hidup
Mengembangkan model memerlukan serangkaian eksperimen dan cara untuk melacak dan membandingkan kondisi dan hasil eksperimen tersebut. Platform Databricks Data Intelligence mencakup MLflow untuk pelacakan pengembangan model dan MLflow Model Registry untuk mengelola siklus hidup model termasuk penahapan, penyajian, dan penyimpanan artefak model.
Setelah model dirilis ke produksi, banyak hal dapat berubah yang mungkin memengaruhi performanya. Selain memantau performa prediksi model, Anda juga harus memantau data input untuk perubahan karakteristik kualitas atau statistik yang mungkin memerlukan pelatihan ulang model.
Tugas dan alat ModelOps di Databricks
Tabel mencantumkan tugas dan alat ModelOps umum yang disediakan oleh Databricks:
| Tugas ModelOps | Alat pada Databricks |
|---|---|
| Lacak pengembangan model | Pelacakan model MLflow |
| Mengelola siklus hidup model | Model-Model pada Katalog Unity |
| Kontrol dan berbagi versi kode model | Folder Databricks Git |
| Pengembangan model tanpa kode | AutoML |
| Pemantauan model | Pembuatan profil data |
DevOps: Produksi dan otomatisasi
Platform Databricks mendukung model ML dalam produksi dengan yang berikut:
- Silsilah data dan model secara menyeluruh: Mulai dari model yang ada di produksi hingga kembali ke sumber data mentah, pada platform yang sama.
- Penyajian Model tingkat produksi: Secara otomatis meningkatkan atau menurunkan skala berdasarkan kebutuhan bisnis Anda.
- Pekerjaan: Mengotomatiskan pekerjaan dan membuat alur kerja pembelajaran mesin terjadwal.
- Folder Git: Penerapan versi dan berbagi kode dari ruang kerja, juga membantu tim mengikuti praktik terbaik rekayasa perangkat lunak.
- Bundel Otomatisasi Deklaratif: Mengotomatiskan pembuatan dan penyebaran sumber daya Databricks, seperti pekerjaan, model terdaftar, dan melayani titik akhir.
- Databricks Terraform provider: Mengotomatiskan infrastruktur penyebaran di seluruh cloud untuk pekerjaan inferensi ML, penyajian endpoint, dan pekerjaan fiturisasi.
Penyajian model
Untuk memasukkan model ke tahap produksi, MLflow secara signifikan menyederhanakan proses, menyediakan penyebaran sekali klik dalam bentuk pekerjaan batch untuk sejumlah besar data atau sebagai titik akhir REST pada kluster yang dapat diskalakan secara otomatis. Integrasi Databricks Feature Store dengan MLflow juga memastikan konsistensi fitur untuk pelatihan dan penyajian model; selain itu, model MLflow dapat secara otomatis mencari fitur dari Feature Store, bahkan untuk penyajian online dengan latensi rendah.
Platform Databricks mendukung banyak opsi penyebaran model:
- Kode dan kontainer.
- Pelayanan batch.
- Layanan online berlatensi rendah.
- Penyajian di perangkat atau tepi.
- Multi-cloud, misalnya, melatih model di satu cloud dan menyebarkannya dengan cloud lainnya.
Untuk informasi selengkapnya, lihat Mosaic AI Model Serving.
Pekerjaan
Pekerjaan Lakeflow memungkinkan Anda mengotomatiskan dan menjadwalkan semua jenis beban kerja, dari ETL ke ML. Databricks juga mendukung integrasi dengan orkestrator pihak ketiga populer seperti Airflow.
Folder Git
Platform Databricks mencakup dukungan Git di ruang kerja untuk membantu tim mengikuti praktik terbaik rekayasa perangkat lunak dengan melakukan operasi Git melalui UI. Administrator dan teknisi DevOps dapat menggunakan API untuk menyiapkan otomatisasi dengan alat CI/CD favorit mereka. Databricks mendukung semua jenis penyebaran Git termasuk jaringan privat.
Untuk informasi selengkapnya tentang praktik terbaik untuk pengembangan kode menggunakan folder Databricks Git, lihat alur kerja CI/CD dengan integrasi Git dan folder Databricks Git dan Gunakan CI/CD. Teknik-teknik ini, bersama dengan Databricks REST API, memungkinkan Anda membangun proses penyebaran otomatis dengan GitHub Actions, alur Azure DevOps, atau pekerjaan Jenkins.
Katalog Unity untuk tata kelola dan keamanan
Platform Databricks mencakup Unity Catalog, yang memungkinkan admin menyiapkan kontrol akses, kebijakan keamanan, dan tata kelola yang halus untuk semua data dan aset AI di seluruh Databricks.