MLOps dan GenAIOps untuk beban kerja AI di Azure
Operasi beban kerja AI berpusat pada kurasi data dan konsumsi data tersebut. Operasi memastikan efisiensi dalam mencapai dan menjaga kualitas, keandalan, keamanan, etika, dan standar lain yang Anda prioritaskan untuk beban kerja.
Tugas beban kerja dapat dikategorikan ke dalam tiga area utama: pengembangan aplikasi, penanganan data, dan manajemen model AI. Setiap kategori harus mengadopsi metodologi operasional yang terbukti di industri, seperti DevOps, DataOps, MLOps, dan GenAIOps.
Aktivitas DevOps mencakup seluruh manajemen siklus hidup pengembangan aplikasi melalui alur dan pemantauan integrasi berkelanjutan dan penyebaran berkelanjutan (CI/CD) otomatis. Namun, untuk beban kerja AI, alur data adalah salah satu komponen inti. DataOps, spesialisasi DevOps, berfokus pada pengelolaan siklus hidup data dengan menyederhanakan proses seperti ekstraksi data, transformasi, dan pemuatan (ETL/ELT). Praktisi DataOps biasanya mengukur performa aliran data dan kemanjuran pembersihan data dan memantau alur untuk anomali.
Beban kerja AI secara inheren tidak mendeterministik. Banyak model AI rentan menghasilkan jawaban yang berbeda untuk pertanyaan yang sama selama inferensi. Beban kerja ini membutuhkan proses yang dapat mengelola dan beradaptasi dengan tidak dapat diprediksi output AI. DataOps meluas ke MLOps, yang mengoperalisasi alur kerja pembelajaran mesin untuk pelatihan dan pengujian model. GenAIOps, subset khusus MLOps, menargetkan solusi AI generatif. Ini melibatkan tugas seperti penemuan model dan menyempurnakan model yang telah dilatih sebelumnya dengan data yang diperkaya.
Aktivitas operasional sering tumpang tindih, dan metodologi yang berbeda berlaku untuk berbagai derajat. Misalnya, dalam AI diskriminatif, DataOps memainkan peran utama, sementara aktivitas DevOps kurang menonjol. Sebaliknya, dalam AI generatif, keunggulan operasional lebih bergantung pada DevOps daripada DataOps.
Terlepas dari itu, tujuan keseluruhan adalah pengiriman kemampuan dengan operasi yang efisien sepanjang siklus hidup pengembangan. Hasil yang diharapkan adalah:
- Proses yang dapat diulang dengan hasil yang konsisten.
- Akurasi berkelanjutan dari model dari waktu ke waktu.
- Tata kelola efektif yang meminimalkan risiko.
- Ubah proses manajemen untuk beradaptasi dengan penyimpangan model.
Otomatisasi dan pemantauan adalah strategi operasional utama Anda untuk mencapai tujuan tersebut.
Anda juga perlu membuat proses standar untuk komponen AI, untuk operasi rutin, tidak terencar, dan darurat, dan memiliki mekanisme pelacakan yang tepat. Tanpa proses tersebut, Anda menjalankan risiko:
- Kesalahan berulang dan nonreproduktifitas dalam pemrosesan data, hosting model, manajemen data grounding, dan tugas lainnya.
- Data berkualitas rendah atau basi yang digunakan untuk pelatihan dan penyempurnaan model.
- Memengaruhi keyakinan pengguna akhir pada sistem, dalam kasus terburuk yang mengarah ke masalah hukum, kepatuhan, atau keamanan.
Anda harus menerapkan proses yang dibuat dengan sekumpulan alat yang tepat. Alat khusus tersedia untuk mengelola alur kerja AI /pembelajaran mesin di seluruh lingkungan.
Artikel ini berfokus pada strategi desain untuk operasi dan memberikan rekomendasi alat.
Rekomendasi
Berikut adalah ringkasan rekomendasi yang disediakan dalam artikel ini.
Rekomendasi | Deskripsi |
---|---|
Merancang siklus hidup operasi beban kerja yang efisien. | Berdasarkan komponen beban kerja AI Anda, berbagai tahap operasional akan berlaku untuk siklus hidupnya. Penting agar Anda memahami praktik terbaik yang relevan dengan skenario Anda dan alat yang tersedia untuk Anda untuk mengimplementasikannya. Luangkan waktu untuk mempelajari dan menerapkan rekomendasi utama untuk semua komponen beban kerja Anda. ▪ DataOps ▪ MLOps ▪ GenAIOps ▪ Pemantauan |
Mengotomatiskan semuanya. | Automation memastikan pengulangan dan efisiensi dalam siklus hidup beban kerja. Meskipun proses DevOps adalah kontributor utama untuk ini, ada langkah tambahan yang perlu Anda ambil untuk membangun, menguji, memvalidasi, dan menyebarkan model Anda secara efisien. ▪ Otomatisasi |
Gunakan alur penyebaran jika memungkinkan. | Alur penyebaran dapat membantu Anda memberikan penyebaran infrastruktur yang dapat diulang, atau mengintegrasikan kode secara terus menerus. Mereka juga merupakan alat yang bagus untuk membuat dan/atau memvalidasi model sebelum mempromosikannya ke produksi. Menerapkan alur penyebaran membantu Anda meningkatkan keandalan serta pengalaman pengguna keseluruhan beban kerja Anda. ▪ Alur Penyebaran |
Mencegah penyimpangan dan pembbusuan dalam model Anda. | Anda harus menjaga dari pembusukan model dan penyimpangan sambil juga memiliki proses terstruktur yang membantu Anda menerima perubahan model baru dengan cara yang terkontrol. Mengikuti rekomendasi seputar pemeliharaan model membantu Anda tetap patuh, menghindari pengalaman pengguna yang tidak terduga, dan memberikan layanan yang lebih terbaru. ▪ Pemeliharaan Model |
Siklus hidup operasi beban kerja
Gambar ini menggambarkan tahap operasional untuk model AI, termasuk pengumpulan data, membersihkan data untuk menghilangkan inkonsistensi atau kesalahan, dan mengubah data menjadi format yang dapat dianotasi. Tahapan ini relevan untuk melatih model diskriminatif dan data grounding dalam model generatif. Namun, kasus penggunaan spesifik model generatif pelatihan tidak digambarkan dalam gambar ini. Kasus penggunaan tersebut berada di luar cakupan artikel ini.
Tahapan MLOps dan GenAIOps serupa. Perbedaan utamanya adalah bahwa, dalam kasus GenAIOps, fokus bergeser dari pelatihan ke memilih model yang tepat, rekayasa prompt, dan menggabungkan pengetahuan khusus domain melalui penyempurnaan atau penerapan Retrieval Augmented Generation (RAG).
Bahkan tahapan untuk penyebaran dan pemantauan cukup mirip.
Bagian berikut menjelaskan praktik operasional umum. Mereka mencakup setiap tahap siklus hidup, dari praproduksi hingga produksi.
DataOps
Data dikumpulkan dari berbagai sumber data produksi dan kemudian diproses sebelumnya untuk menghapus kesalahan dan inkonsistensi dan untuk menangani nilai yang hilang. Akhirnya, ini diubah dan dinormalisasi menjadi format yang cocok untuk pelatihan atau pengayaan. Aspek desain dijelaskan dalam artikel Data pelatihan dan data Grounding.
Proses operasi data selama tahap ini harus efisien karena menangani data dalam volume besar dari berbagai sumber dan alur data yang kompleks dapat menjadi tantangan. Pendekatan yang Anda ambil perlu memastikan bahwa fase ini menghasilkan data berkualitas tinggi. Pantau tahap ini untuk melacak kemajuan menuju bilah kualitas yang dapat diterima.
Anda juga perlu memastikan bahwa data aman, mengingat bahwa data berasal dari produksi. Pastikan bahwa lingkungan yang lebih rendah, seperti Dev/Test, seaman produksi untuk membantu mencegah masalah keamanan apa pun.
Catatan
Atasi data berkualitas buruk dengan berinvestasi dalam pembersihan data yang luas selama fase awal. Manfaatkan pola analitik terkenal, seperti medali, jala data, dan penyimpanan fitur, untuk melakukan tugas pemrosesan hulu. Jika fase hulu tidak efektif, Anda perlu meningkatkan kualitas selama fase hilir, yang menyebabkan peningkatan biaya beban kerja karena persiapan data terjadi selama setiap tahap.
Untuk informasi tentang tugas pemrosesan data, lihat artikel berikut ini:
Alat
Kami menyarankan agar Anda menstandarkan alat orkestrasi data beban kerja Anda. Alat harus dapat menyediakan alur data yang dapat mengelompokkan aktivitas dan yang memiliki otomatisasi bawaan.
Alur Azure Data Factory dapat menjadi pilihan awal. Ini dapat menyambungkan dan memproses banyak sumber data secara efisien. Anda juga dapat mempertimbangkan Azure Synapse Analytics, yang menggabungkan pergudangan big data dan data serta mendukung data lake, Apache Spark, dan Azure Synapse SQL. Ini juga terintegrasi dengan Data Factory untuk ETL.
Untuk menyiapkan data pelatihan, alur Azure Pembelajaran Mesin menyediakan fitur khusus yang dapat mengotomatiskan tugas seperti pengumpulan dan pemrosesan data.
Teknologi sumber terbuka seperti Panda (untuk persiapan data) dan Scrapy adalah pilihan populer.
MLOps
Pelatihan model adalah proses memilih algoritma yang sesuai dan memberi mereka data historis dan pengamatan yang telah diproses sebelumnya untuk memungkinkan model mempelajari pola dan membuat prediksi.
Melatih model (rekayasa fitur) dan penyetelan hiperparameter adalah proses berulang, dan mahal. Selama setiap perulangan, ilmuwan data melacak hasil dengan kombinasi data, kode, dan parameter. Gunakan alur yang dapat diulang untuk melacak eksperimen dengan upaya manual minimum hingga tingkat akurasi yang tepat tercapai.
Tantangan operasional lainnya adalah penyediaan dan penskalaan sumber daya komputasi khusus tempat eksperimen dilakukan. Selain itu, Anda harus mengemas dan menerbitkan model secara efisien.
Teams dapat memulai dengan pengembangan berbasis UI untuk mengurangi tantangan, dan, karena mereka menjadi lebih percaya diri, beralih ke pendekatan berbasis kode.
Alat
Kami menyarankan agar Anda menggunakan alat yang dapat melacak eksperimen pembelajaran mesin dengan menangkap detail seperti versi kode, lingkungan, parameter, eksekusi, dan hasil. MLflow adalah salah satu kerangka kerja sumber terbuka tersebut. Pertimbangkan untuk menggunakan ruang kerja Azure Pembelajaran Mesin, yang kompatibel dengan MLflow dan menyediakan alur kerja yang disederhanakan yang memungkinkan ilmuwan data mengelola produktivitas dan reproduksi dalam proyek mereka. Untuk mengelola pengembangan kode dengan pelacakan kontrol sumber, integrasikan alur pembelajaran mesin dengan kontrol sumber seperti GitHub, atau gunakan berbagi file.
Komputasi hosting juga dapat memengaruhi pilihan orkestrator alur kerja Anda. Jika aplikasi Anda dihosting di Azure Kubernetes Service (AKS), pertimbangkan untuk menggunakan Kubeflow.
Jika Anda mempertimbangkan Azure Pembelajaran Mesin, kami sarankan Anda memulai dengan perspektif Azure Well-Architected Framework tentang Pembelajaran Mesin untuk memastikan Anda memahami bagaimana produk dapat membantu Anda dengan masalah kualitas Kerangka Kerja yang Dirancang Dengan Baik dari beban kerja.
Bagian dari manfaat proses ini adalah mengoptimalkan waktu pribadi. Ilmuwan data biasanya membutuhkan alat dan SDK tertentu untuk secara efektif melakukan analisis data eksploratif (EDA) dan eksperimen dari stasiun kerja mereka. Mengevaluasi apakah opsi bawaan di Azure Pembelajaran Mesin cocok. Jika tidak, simpan konfigurasi stasiun kerja atau pertahankan gambar VM yang disetujui untuk pekerjaan ini. Salah satu contoh gambar yang dapat Anda gunakan sebagai titik awal adalah Ilmu Data Virtual Machine (DSVM).
Dalam kasus tertentu, penggunaan VM mungkin tidak diizinkan oleh kebijakan. Cari alternatif, seperti menambahkan Microsoft Dev Box dan Azure Virtual Desktop. Anda juga dapat mempertimbangkan untuk menggunakan Docker untuk mem-bootstrap komputer yang berisi gambar bawaan.
Namun, saat tahap ini matang dan Anda memerlukan eksperimen yang diperluas, pindah ke instans komputasi terkelola dan lebih suka opsi yang terintegrasi sebagai bagian dari alur kerja. Evaluasi apakah Anda dapat menggunakan instans komputasi Azure Pembelajaran Mesin untuk pelatihan dan inferensi untuk tujuan pengembangan dan pengujian. Kluster komputasi dapat menangani himpunan data besar dan model kompleks.
Azure Pembelajaran Mesin menyediakan solusi berbasis kode melalui opsi SDK dan kode rendah seperti pembelajaran mesin otomatis dan perancang visual. Python SDK menawarkan beberapa cara untuk melatih model, masing-masing dengan fitur yang berbeda. Pembelajaran Mesin juga mendukung pengoptimalan tingkat lanjut dan teknologi komputasi terdistribusi seperti ORTModule, DeepSpeed, dan LoRA PELATIHAN ONNX Runtime untuk mempercepat proses pelatihan.
GenAIOps
Aktivitas utama selama tahap ini dimulai dengan menemukan dan mengevaluasi model yang ada untuk mengidentifikasi model yang telah dilatih sebelumnya untuk kasus penggunaan tertentu. Pengujian adalah proses berulang. Setelah Anda menemukan model yang sesuai, model tersebut mungkin mendapat manfaat dari disempurnakan untuk landasan khusus domain, yang juga melibatkan langkah-langkah berulang dan memerlukan tingkat orkestrasi tertentu.
Mengintegrasikan dan menyebarkan model memerlukan alat dan praktik khusus yang melampaui kemampuan MLOps tradisional, termasuk mengatur model, indeks vektor, perintah, dan blok kode.
Alat
Untuk mengatasi tugas penemuan, manfaatkan katalog model yang menyertakan model dari berbagai penyedia. Katalog model di portal Azure AI Foundry memungkinkan Anda mengevaluasi dari antara koleksi yang dikumpulkan dan menyebarkan model secara efisien.
Alur permintaan Azure Pembelajaran Mesin dapat membantu pengembangan kode orkestrasi, mengaktifkan prototipe, bereksperimen, mengulangi, dan meminta rekayasa. Alur ini dapat disebarkan ke titik akhir terkelola Azure Pembelajaran Mesin. Evaluasi apakah Anda dapat menjalankan dan menyebarkan alur dengan teknologi alur CI/CD yang ada.
Penyebaran
Selama tahap ini, model disebarkan ke platform hosting dan inferensi atau lapisan sajian beban kerja AI. API perlu dimas sebagai kontainer yang dapat diskalakan. Platform kontainer dapat menjadi platform komputasi terkelola atau hosting kustom. Praktik operasional harus memastikan penyebaran yang aman dan mengaktifkan pemutaran kembali.
Mulailah dengan platform as a service (PaaS) dan solusi tanpa server seperti Azure OpenAI Service untuk menyederhanakan adopsi dan manajemen. Pertimbangkan untuk menggunakan Api Tanpa Server Azure Pembelajaran Mesin untuk mengagregasi akses titik akhir. Kluster komputasi terkelola adalah opsi yang layak untuk kebutuhan tingkat lanjut. Hosting mandiri di AKS adalah opsi lain. Pastikan Anda membuat ukuran komputasi yang tepat dan mempertahankan isolasi yang tepat dari beban kerja lain. Anda juga dapat mempertimbangkan opsi seperti sepenuhnya menghosting model Anda sebagai infrastruktur sebagai layanan (IaaS). IaaS memberikan fleksibilitas tetapi dapat menambah beban operasional. Opsi ini dijelaskan dalam platform Aplikasi.
Tahap ini menyajikan kesempatan terakhir untuk menangkap masalah sebelum Anda memindahkan model ke produksi. Proses pengujian harus mencakup langkah-langkah validasi untuk memastikan model dikonfigurasi untuk memberikan prediksi seperti yang diharapkan.
Anda harus mengintegrasikan model ke lingkungan produksi yang ada dengan mengikuti proses paparan progresif dan menggunakan penyebaran berdampingan. Model kenari adalah cara umum untuk meluncurkan model baru. Dengan metode ini, basis pengguna ditingkatkan secara bertahap. Penyebaran biru-hijau adalah metode lain.
Alat
Anda dapat menggunakan alur Azure Pembelajaran Mesin atau Azure Pipelines untuk menyebarkan model Anda untuk inferensi. Pembelajaran Mesin menyediakan beberapa fitur untuk operasi yang disederhanakan, termasuk provisi simpul, pembaruan OS, penskalaan otomatis, pemantauan, dan jaringan virtual terisolasi.
Pembelajaran Mesin juga mendukung penyebaran biru-hijau, yang memungkinkan satu titik akhir berisi beberapa penyebaran.
Jika Anda menggunakan platform hosting lain, seperti Azure Container Apps atau Azure App Service, Anda bertanggung jawab atas operasi tersebut, termasuk provisi dan penskalaan. Gunakan Azure DevOps, alur GitHub, atau teknologi CI/CD pilihan Anda dalam kasus tersebut.
Pemantauan
Pemantauan adalah strategi utama dan diterapkan di semua tahap. Ini adalah proses yang sedang berlangsung dan berfungsi sebagai input ke gerbang berkualitas yang memastikan beban kerja AI diuji secara ketat untuk menjaga konsistensi dan keandalan sepanjang siklus hidup pengembangan. Model harus dipantau dari perspektif operasional dan ilmu data.
Kami sangat menyarankan Anda memiliki proses pemantauan perulangan dalam DataOps yang mengukur kedekatan dengan bilah kualitas penerimaan dan memeriksa anomali.
Untuk model yang telah dilatih sebelumnya, penting juga untuk memantau penyimpangan dan performa data, dengan fokus utama pada relevansi. Evaluasi input (perintah) dan output (penyelesaian) untuk memastikan input relevan dan akurat. Selain itu, waspadai risiko keamanan, seperti upaya untuk memanipulasi perilaku model melalui perintah berbahaya. Pastikan ada con mode tenda ration menyeluruh yang memeriksa data di kedua arah dan memfilter konten yang tidak pantas. Pertimbangan ini dijelaskan di area desain ResponsibleAI.
Setelah penyebaran, operasi pemantauan diperlukan untuk mengatasi masalah seperti pembusukan model. Model dapat menjadi kedaluwarsa karena perubahan data atau perubahan eksternal yang dapat menyebabkan model menghasilkan hasil yang tidak relevan. Sebagai ukuran proaktif, gunakan proses otomatis untuk pemantauan berkelanjutan, dan evaluasi dan latih ulang untuk mempertahankan akurasi dan relevansi. Selain itu, Anda perlu memantau metrik infrastruktur dan beban kerja, seperti yang Anda lakukan dengan beban kerja lainnya, untuk membantu memastikan performa dan keandalan yang optimal. Untuk informasi selengkapnya, lihat Pengujian untuk pembuangan model.
Alat
Berinvestasi dalam alat yang memudahkan pengumpulan metrik dari titik akhir inferensi, seperti pengumpul Azure Pembelajaran Mesin Data.
Anda juga memerlukan pengamatan performa model, penyimpangan data, serta keamanan dan kualitas untuk AI generatif.
Untuk informasi selengkapnya, lihat artikel berikut ini:
Automation
Beban kerja AI rumit karena siklus hidup keseluruhan melibatkan banyak peran, perubahan yang sering, dan langkah-langkah yang saling terkait. Proses manual dapat rentan terhadap kesalahan dan inkonsistensi. Otomatisasi dalam hosting model pemrosesan data membantu memastikan pengulangan dan efisiensi. Otomatisasi tidak selalu diperlukan, tetapi ini adalah cara yang efektif untuk mengelola kompleksitas ini. Berikut adalah beberapa kasus penggunaan di mana otomatisasi dapat mengurangi risiko:
Tidak seperti penyebaran kode tradisional, model dan solusi nondeterministik dalam AI / pembelajaran mesin memerlukan eksperimen dan pelatihan berulang. Ketika beberapa tim berkolaborasi, otomatisasi, sebagai cara untuk menerapkan proses standar, dapat membantu menjaga konsistensi, reproduksi, dan kolaborasi yang efektif di antara ilmuwan data, insinyur, dan tim operasi.
Siklus hidup model melibatkan dua jenis pelatihan utama:
Pelatihan online menggabungkan data terbaru ke dalam model secara sering, kadang-kadang setiap hari, untuk memastikan bahwa keputusan didasarkan pada informasi terbaru. Pelatihan ini diintegrasikan ke dalam beban kerja sehingga model terus diperbarui sebagai bagian dari proses reguler.
Pelatihan offline melatih model lebih jarang, memungkinkan kesenjangan yang lebih lama antara pembaruan. Proses pelatihan terpisah dari beban kerja utama dan dilakukan secara asinkron. Setelah model baru siap, model tersebut kemudian diintegrasikan ke dalam sistem.
Keandalan dapat disusupi jika pembaruan jarang. Jika pembaruan terlewatkan, pembaruan dapat ditunda tanpa masalah besar. Konsep ini juga berlaku untuk data grounding. Misalnya, jika Anda menggunakan RAG, Anda harus memutuskan apakah Anda perlu menggunakan data terbaru atau apakah data yang sedikit lebih lama cukup. Kedua skenario melibatkan penyeimbangan kebutuhan akan informasi terbaru dengan kepraktekkan frekuensi pembaruan. Anda harus melakukan pelatihan online melalui otomatisasi karena frekuensi dan keandalan yang diperlukan. Untuk pelatihan offline, karena frekuensi yang diperlukan, Anda perlu membenarkan otomatisasi dengan melakukan analisis manfaat biaya. Selain itu, Anda dapat melakukan pelatihan offline dengan menggunakan sumber daya yang lebih murah, seperti perangkat keras offline.
Proses DevOps tradisional biasanya dipengaruhi oleh perubahan struktural. Namun, dalam AI dan pembelajaran mesin, model dilatih pada data produksi. Pembusukan model menimbulkan risiko yang signifikan dan dapat menyebabkan penurunan performa dari waktu ke waktu jika tidak dipantau. Pengumpulan dan analisis otomatis metrik performa, pemberitahuan, dan pelatihan ulang model diperlukan untuk mempertahankan kemanjuran model. Gunakan otomatisasi dengan cara yang dapat membantu Anda mendeteksi perubahan dalam dependensi data dan model untuk mendapatkan pemahaman yang jelas tentang status saat ini pada waktu tertentu.
Model dapat dilatih dengan dua pendekatan yang berbeda.
- Model dilatih di lingkungan pengembangan dengan data produksi penuh dan hanya artefak yang dipromosikan melalui lingkungan. Pendekatan ini dapat menurunkan biaya komputasi tetapi membutuhkan keamanan yang lebih ketat untuk menangani data produksi di lingkungan yang lebih rendah dan mungkin tidak dimungkinkan di semua organisasi.
- Model ini dilatih di setiap lingkungan. Promosi kode dapat membantu stabilitas karena kode pelatihan ditinjau dan diuji di lingkungan yang lebih rendah, tetapi meningkatkan biaya komputasi.
Ada pro dan kontra untuk kedua pendekatan. Memilih pendekatan yang tepat tergantung pada prioritas organisasi Anda dan praktik Siklus Hidup Pengembangan Perangkat Lunak (SDLC) beban kerja Anda. Terlepas dari metode ini, pengujian dan evaluasi menyeluruh model sebelum penyebaran produksi sangat penting
Kode otomatisasi Anda harus menggabungkan silsilah data untuk mendukung auditabilitas dengan memberikan catatan tahap pemrosesan data yang jelas. Catatan ini membantu Anda mengelola harapan dan memungkinkan Anda untuk menunjukkan bagaimana keputusan dibuat sehingga Anda dapat mengatasi kekhawatiran tentang hasil.
Alur penyebaran
Dalam beban kerja AI / pembelajaran mesin, pengembangan model melibatkan pembuatan, validasi, dan mempromosikan model ke platform hosting model. Penting untuk memiliki alur penyebaran yang menyederhanakan alur kerja kompleks yang terkait dengan pemrosesan data, rekayasa fitur, pelatihan model atau augmentasi, dan penyebaran ke produksi. Mengingat sifat AI yang tidak deterministik, yang membuat proses buram, Anda perlu menggabungkan pengujian kualitatif dalam alur rilis dan sistem pemantauan.
Meskipun MLOps dan GenAIOps mungkin memerlukan aktivitas AI dan teknologi inti yang berbeda mungkin berbeda, konsep yang mendasarinya tetap mirip dengan DevOps. Kami menyarankan agar Anda menerapkan praktik terbaik dari proses DevOps yang ada. Integrasikan aktivitas AI ke dalam alur beban kerja Anda yang sudah ada.
Biasanya, beban kerja AI melibatkan penyebaran kode tradisional. Anda dapat memilih untuk menangani penyebaran model bersama kode atau secara terpisah dalam siklus hidupnya sendiri. Pendekatan sebelumnya lebih disukai. Bersiaplah untuk mengemas model dan titik akhir inferensi dengan penyebaran beban kerja untuk menjaga operasi AI terutama berfokus pada persiapan data, pelatihan/penyempurnaan, manajemen data grounding, dan pemantauan.
Mengevaluasi kembali bagaimana aset berikut dapat disesuaikan untuk mencakup seluruh siklus hidup MLOps dan GenAIOps, dari praproduksi hingga produksi:
- Alat infrastructure-as-code (IaC)
- Alur CI/CD
- Tumpukan pengamatan untuk melacak dan mengidentifikasi masalah
Alat
Anda dapat memperluas alur kerja Azure Pipelines dan GitHub Actions, yang umumnya digunakan untuk CI/CD, ke model pembelajaran mesin. Mereka membantu menyebarkan infrastruktur pembelajaran mesin, komponen beban kerja kustom, kode orkestrasi, dan model. Gabungkan alur Azure Pembelajaran Mesin dengan alur Azure DevOps atau GitHub. Untuk informasi selengkapnya, lihat Menggunakan Azure Pipelines dengan Azure Pembelajaran Mesin.
Dua faktor utama memengaruhi pilihan kombinasi alat yang tepat: kasus penggunaan dan kemampuan. Misalnya, alur Azure Pembelajaran Mesin sangat bagus untuk orkestrasi yang dilakukan oleh ilmuwan data. Ini memiliki set fitur kaya yang mendukung penggunaan kembali, penembolokan, dan banyak lagi. Untuk pilihan alat, lihat Teknologi alur Azure mana yang harus saya gunakan?.
Pemeliharaan model
Lanskap AI/ML kompetitif dengan inovasi yang sedang berlangsung. Model baru sering muncul, kasus penggunaan baru ditemukan, dan sumber data baru tersedia. Akibatnya, pembbusuan model adalah tantangan umum.
Untuk mencegah penurunan performa model atau penyimpangan dari waktu ke waktu, Anda perlu menerapkan proses otomatis untuk pemantauan, evaluasi, dan pelatihan ulang berkelanjutan. Contohnya:
Pertahankan katalog model. Mengotomatiskan proses penemuan model baru dan memperbarui katalog.
Beradaptasi dengan kasus penggunaan baru. Saat kasus penggunaan baru ditambahkan ke persyaratan beban kerja, antisipasi kueri dan sesuaikan logika pemrosesan data Anda.
Menggabungkan sumber data baru. Jika sumber data baru berpotensi meningkatkan daya prediktif atau relevansi model Anda, perbarui alur penyerapan data Anda untuk menyambungkan dan menarik data dari sumber tersebut.
Menilai kepatuhan terhadap persyaratan peraturan. Saat Anda beradaptasi dengan kemampuan baru, pastikan perubahan tetap valid dalam batasan standar kepatuhan organisasi atau eksternal.
Terapkan proses formal untuk melacak peningkatan berkelanjutan, dan menggabungkan peningkatan diri sebagai subproses dalam siklus tersebut.
Evolusi berkelanjutan
Meninjau dan meningkatkan operasi secara teratur dan mendorong inovasi.
Model kematangan MLOps berkembang dari proses manual ke otomatisasi penuh. Mulailah dengan build dan pemantauan manual, dan masukkan build aplikasi otomatis, lingkungan pelatihan, dan penyebaran secara bertahap seperti yang dibenarkan oleh metrik komprehensif. Untuk informasi selengkapnya, lihat Model kematangan MLOps.
Tingkat kematangan GenAIOps berpindah dari model dasar ke penyebaran terstruktur, secara progresif menggunakan teknik pengoptimalan otomatis. Untuk informasi selengkapnya, lihat Memajukan tingkat kematangan Anda untuk GenAIOps.