Bagikan melalui


Operasi beban kerja AI di Azure

Saat Anda membangun dan mentransisikan beban kerja AI Anda ke produksi, penting bahwa tim operasi Anda sepenuhnya dilengkapi untuk mendukung beban kerja ini seperti beban kerja produksi lainnya. Karena tim operasi Anda mungkin memiliki pengalaman terbatas dengan teknologi AI, penting untuk melatih mereka pada teknologi ini dan mengintegrasikan beban kerja AI ke dalam alur kerja mereka di awal proses. Satukan tim operasi dan data di awal pengembangan beban kerja AI untuk menumbuhkan pemahaman bersama tentang proses setiap tim. Kolaborasi awal ini sangat penting karena kedua tim perlu bekerja sama untuk mendukung beban kerja AI secara efektif. Tim data bergantung pada tim operasi untuk memberikan sinyal kesehatan yang andal dan pemberitahuan yang dapat ditindaklaksakan. Tim operasi bergantung pada tim data untuk membantu mendiagnosis potensi masalah dan menyelesaikan masalah aktual sesuai dengan standar operasional. Kemitraan ini membantu memastikan performa sistem yang lancar dan efisien.

Panduan ini memberikan rekomendasi tentang cara mengembangkan mekanisme dan praktik operasional untuk meningkatkan dukungan untuk beban kerja AI. Ini menekankan kolaborasi yang efisien antara operasi dan tim data.

Rekomendasi

Berikut adalah ringkasan rekomendasi yang disediakan dalam artikel ini.

Rekomendasi Deskripsi
Pantau semua aspek beban kerja Anda. Meskipun banyak masalah pemantauan dan pengamatan umum juga berlaku untuk beban kerja AI, ada pertimbangan khusus yang perlu Anda kerjakan untuk memastikan bahwa seluruh beban kerja Anda dipantau dengan tepat setiap saat. Untuk membangun strategi pemantauan dan pengamatan, Anda mungkin perlu bekerja di berbagai tim untuk mendapatkan keahlian yang tepat dan mencakup semua mode dan metrik yang relevan.

Memperluas platform pengamatan
Terapkan praktik penyebaran yang aman ke beban kerja AI Anda. Ambil langkah-langkah untuk memastikan tingkat keamanan tertinggi di sekitar data produksi sensitif dan menyelaraskan pendekatan penyebaran dengan persyaratan waktu henti nol. Gunakan alat yang sesuai jika perlu, dan tekankan pada tidak menemukan kembali alat dan proses yang sudah ada. Seringkali Anda akan dapat menggunakan layanan yang mapan untuk mencapai tingkat efisiensi yang tinggi sekaligus memungkinkan penyebaran yang aman.

Sertakan komponen beban kerja AI dalam praktik penyebaran aman Anda
Rangkul praktik DevOps tentang pengujian dan otomatisasi. Terapkan praktik DevOps saat membangun, menyebarkan, dan mengoperasikan beban kerja AI Anda dalam produksi. Beban kerja Anda harus memungkinkan pengamatan dan pengujian dengan input pengguna nyata dalam produksi. Ini hanya dapat disediakan dengan cara yang aman jika proses DevOps yang kuat dan otomatisasi yang disederhanakan memungkinkan penyebaran cepat, koreksi kesalahan, dan pengujian A/B.

Mendukung pengujian dalam produksi
Mengotomatiskan praktik operasional jika memungkinkan
Merangkul praktik DevOps
Dokumentasikan kemajuan Anda. Bangun kebiasaan dokumentasi yang baik sejak awal untuk memungkinkan pengambilan keputusan strategis, riwayat perubahan, dan informasi utama tentang data yang digunakan beban kerja Anda.

Mengadopsi praktik dokumentasi yang baik

Memperluas platform pengamatan

Untuk mencapai keunggulan operasional, pengamatan yang kuat sangat penting. Saat organisasi Anda mengadopsi teknologi AI, sangat penting bagi Anda untuk meningkatkan platform observabilitas Anda untuk membantu memastikan pemantauan kesehatan beban kerja yang komprehensif. Organisasi yang baru menggunakan AI mungkin tidak memiliki keahlian big data, ilmu data, dan DataOps dalam tim operasi mereka. Oleh karena itu, pelatihan tentang praktik terbaik operasional adalah langkah pertama yang penting untuk meningkatkan platform pengamatan Anda. Untuk alasan ini, operasi dan tim data harus berkolaborasi untuk menentukan mode pemantauan dan metrik yang benar untuk ditangkap dan dianalisis.

Untuk mengevaluasi kesehatan model, gambaran umum komprehensif tentang metrik kualitas spesifiknya diperlukan. Pengukuran kualitas biasanya mencakup metrik seperti kesegaran model, kebenaran output, dan latensi respons. Namun, Anda harus berkolaborasi dengan ilmuwan dan insinyur data untuk menetapkan metrik tertentu yang menentukan kualitas beban kerja Anda. Sifat nondeterministik beban kerja AI membuat pemantauan kualitas yang waspada sangat penting karena pengukuran tersebut dapat berubah secara tidak terduga kapan saja setelah penyebaran. Rekomendasi untuk pengamatan meliputi:

  • Bekerja sama dengan ilmuwan dan insinyur data untuk menentukan metrik berkualitas.

  • Buat atau perluas dasbor untuk menilai kesehatan keseluruhan beban kerja. Pendekatan ini harus mencakup metrik ketersediaan komponen dan metrik kualitas.

  • Terapkan ketersediaan yang dirancang dengan baik dan pemberitahuan kualitas yang dapat dipahami dan diambil oleh tim operasi.

  • Mengkodifikasi prosedur operasi standar yang menentukan bagaimana tim operasi merespons pemberitahuan kualitas, seperti bekerja dengan tim data untuk menyelidiki dan memulihkan potensi kerusakan.

  • Perhatikan metrik pemanfaatan dengan cerah karena dapat membutuhkan biaya intensif untuk menjalankan beban kerja AI. Biaya dapat bertambah dengan cepat jika tim beban kerja tidak mematikan, menurunkan skala, atau membatalkan alokasi sumber daya saat tidak digunakan. Operasi dapat membantu memastikan bahwa biaya tetap berada dalam parameter yang diharapkan dengan memantau pemanfaatan.

Sertakan komponen beban kerja AI dalam praktik penyebaran aman Anda

Beban kerja AI bergantung pada data produksi, yang sering menyertakan informasi sensitif. Oleh karena itu, penting untuk menjaga tingkat keamanan tertinggi di sekitar beban kerja ini. Untuk membantu melindungi data Anda, perluas praktik penyebaran yang aman untuk menyertakan semua kode yang terkait dengan komponen AI beban kerja Anda. Jika Anda memiliki persyaratan waktu henti nol untuk beban kerja Anda, rancang pendekatan penyebaran Anda untuk komponen AI yang sesuai.

  • Untuk titik akhir inferensi, gunakan penyebaran biru-hijau atau kenari dengan atau tanpa pencerminan lalu lintas, tergantung pada model penyebaran Anda.

  • Untuk penyajian indeks, gunakan model penyebaran berdampingan dengan pembaruan alias untuk memotong lalu lintas.

  • Untuk kode orkestrasi, gunakan bendera fitur atau penyebaran biru-hijau.

Bergantung pada aplikasi, platform data, dan topologi jaringan tertentu, Anda mungkin perlu menggunakan solusi gateway, seperti Azure Application Gateway atau Azure Front Door.

Alat

Azure Pembelajaran Mesin mendukung penyebaran biru-hijau secara asli dengan pemisahan lalu lintas bawaan.

Jangan menemukan kembali roda

Karena titik akhir inferensi online pada dasarnya adalah layanan mikro, titik akhir tersebut beroperasi sebagai komponen beban kerja mandiri sepenuhnya dengan data dan kode mereka sendiri yang melayani fungsi tertentu dalam alur kerja. Untuk alasan ini, perlakukan titik akhir inferensi online seperti layanan mikro penting lainnya yang memiliki siklus hidup mereka sendiri. Anda dapat memperbarui titik akhir inferensi online satu per satu. Namun, seperti layanan mikro lainnya dalam beban kerja yang lebih besar, mereka harus bekerja sama dengan mulus. Oleh karena itu, Anda harus memprioritaskan pengujian integrasi saat menyebarkan pembaruan. Pastikan bahwa penyebaran Anda tidak berdampak negatif pada layanan lain, seperti penyajian model dan orkestrator. Atau, titik akhir inferensi batch sering digabungkan erat dengan komputasi pemrosesan pekerjaan, dan disertakan dalam alur data. Dalam kasus ini, perlakukan mereka sebagai bagian dari solusi yang lebih besar alih-alih sebagai layanan mikro.

Mendukung pengujian dalam produksi

Tim operasi kemungkinan tidak akan merancang atau melakukan pengujian beban kerja AI. Namun, mereka harus mendukung pengujian beban kerja AI melalui pemantauan, pemberitahuan, dan penyelidikan karena pengujian diperlukan dalam produksi. Karena sifat AI yang tidak deterministik, pengujian dalam produksi diperlukan untuk membantu memastikan bahwa beban kerja berfungsi seperti yang diharapkan dari waktu ke waktu. Tim operasi harus bermitra erat dengan tim beban kerja untuk menangkap dan mendiagnosis hasil pengujian abnormal secara efisien dan sesuai dengan standar operasional. Untuk memastikan bahwa operasi dapat mendukung pengujian dan bahwa tim beban kerja dapat melakukan pengujian, kedua tim perlu menyelaraskan proses mereka untuk bekerja sama. Pelatihan tentang kegiatan pengujian di lingkungan nonproduksi membantu membiasakan tim dengan urutan operasi.

Mengotomatiskan praktik operasional jika memungkinkan

Mengotomatiskan semua praktik operasional terkait beban kerja, termasuk proses pemantauan, pemberitahuan, dan pengujian. Automation adalah strategi utama untuk menjaga proses tetap dapat diulang, efisien, dan konsisten. Saat Anda merancang strategi otomatisasi, perlu pengawasan manusia untuk aktivitas, seperti mendiagnosis inkonsistensi model dengan benar dan sinyal kualitas lainnya. Ini terutama berlaku untuk rilis awal. Proses yang terkait dengan mempertahankan model adalah hal baru untuk tim operasi, sehingga risiko respons yang tidak tepat terhadap sinyal kualitas lebih tinggi pada tahap ini. Saat beban kerja Anda matang, Anda mungkin dapat menggunakan otomatisasi untuk mengidentifikasi alarm palsu dengan gerbang kualitas yang dirancang dengan baik, tetapi mencapai titik itu bisa menjadi proses yang panjang dan kompleks.

Jika memungkinkan, gunakan kembali alat otomatisasi yang ada untuk melakukan tugas otomatisasi baru untuk beban kerja AI Anda. Misalnya, jika Anda sudah menggunakan Alur Azure atau Alur Kerja GitHub, terus gunakan untuk menyebarkan kode orkestrasi alih-alih menggunakan alat terpisah. Namun, hindari rekayasa berlebihan dalam upaya untuk hanya menggunakan satu alat otomatisasi. Jika tugas atau pekerjaan tertentu tidak cocok untuk alat yang Anda pilih, pilih alat yang lebih tepat alih-alih membangun solusi kustom yang menambahkan kompleksitas yang tidak perlu.

Catatan

Untuk sepenuhnya mendukung beban kerja, banyak peran dan teknologi yang berpotongan diperlukan. Tim data, infrastruktur, keamanan, dan operasi semuanya bergantung pada otomatisasi hingga batas tertentu. Gunakan alat seserang mungkin dan standarkan untuk membantu menjaga strategi otomatisasi tetap dapat dikelola dan lebih mudah dilatih.

Merangkul praktik DevOps

Di awal pengembangan beban kerja Anda, standarisasi penggunaan praktik DevOps dalam proses pengembangan Anda. Untuk semua lingkungan selain lingkungan kotak pasir, standar yang ditentukan dan diberlakukan secara ketat harus mengatur seluruh siklus hidup pengembangan. Terapkan standar ini dengan melarang secara ketat aktivitas penyebaran manual apa pun. Semua penyebaran, baik pembaruan, patch, atau penyebaran sumber daya baru, harus dilakukan melalui integrasi berkelanjutan dan alur penyebaran berkelanjutan yang mematuhi praktik penyebaran yang aman. Praktik kebersihan DevOps yang baik harus mencakup:

  • Kontrol versi: Gunakan kontrol versi untuk semua aset kode sebanyak mungkin. Kontrol versi adalah tenet cornerstone DevOps dan praktik manajemen perubahan yang baik dan sangat penting untuk kolaborasi yang lancar. Terapkan kontrol versi ke paket pustaka, termasuk SDK dan gambar kontainer. Konsisten dalam menggunakan versi paket pustaka tertentu di seluruh siklus hidup pengembangan perangkat lunak (SDLC). Versi pustaka yang berbeda seperti XGBoost atau scikit-learn di berbagai lingkungan pengembangan dapat menyebabkan variasi dalam perilaku beban kerja Anda. Hal yang sama berlaku untuk penerapan versi model. Pastikan versi model konsisten di seluruh SDLC sehingga Anda tidak menguji satu versi model di lingkungan praproduksi dan merilis versi yang berbeda dalam produksi.

  • Skema penamaan versi sederhana: Gunakan skema penamaan versi sederhana untuk membantu memastikan bahwa Anda selalu menggunakan versi aset tertentu yang paling baru disetujui. Aset khusus AI dapat mencakup:

    • Kode buku catatan.
    • Kode orkestrator.
    • Kode pekerjaan pemrosesan data.
    • Pembelajaran Mesin kode pekerjaan.
    • Model.
  • Alat yang dapat Anda operasionalkan: Beberapa alat sangat bagus untuk eksperimen tetapi tidak dirancang untuk operasionalisasi. Batasan ini dapat menyulitkan atau tidak mungkin untuk mengintegrasikannya ke dalam otomatisasi operasional Anda. Misalnya, notebook adalah alat yang baik untuk eksperimen dan pekerjaan analisis data eksploratif, tetapi mereka bukan alat yang baik untuk pekerjaan pengembangan alur produksi. Saat Anda menyelesaikan eksperimen, tarik logika dari alat-alat tersebut dan masukkan ke dalam paket Python yang dapat Anda gunakan untuk kode pekerjaan Anda.

Mengadopsi praktik dokumentasi yang baik

Kebiasaan dokumentasi yang baik penting untuk semua jenis beban kerja. Kompleksitas beban kerja AI membuat kebiasaan tersebut semakin penting. Pastikan Anda memiliki repositori yang khusus untuk tim beban kerja Anda di mana dokumentasi disimpan dengan aman dan versi dikontrol. Seperti beban kerja lainnya, Anda harus mendokumen informasi standar. Informasi standar ini mencakup semua alat yang digunakan dalam beban kerja, konfigurasi keamanan, desain jaringan, dan panduan penyiapan. Pertimbangkan untuk mendokumen informasi beban kerja khusus AI berikut:

  • Pelatihan model dan informasi manajemen indeks data grounding: Sumber data dokumen, pemilik sumber data, frekuensi refresh, dan proses eliminasi bias untuk menetapkan cara melatih model dan cara menangani data grounding.

  • Riwayat proses pelatihan: Detail bagaimana Anda tiba di konfigurasi yang disetujui saat ini dengan mendokumentasikan mengapa Anda memilih hiperparameter tertentu, suhu, bobot, dan parameter lainnya. Sertakan konfigurasi lain yang Anda uji dan perubahan perilaku yang Anda amati selama proses pelatihan. Informasi ini membantu mencegah pengulangan konfigurasi yang tidak berhasil atau tidak efisien.

  • Informasi penyimpanan fitur: Dokumen fitur mana yang memiliki kekuatan prediktif terbaik dan bagaimana Anda membuat penentuan tersebut.

  • Konfigurasi stasiun kerja ilmuwan data: Konfigurasi stasiun kerja dokumen secara menyeluruh untuk menyederhanakan proses onboarding untuk ilmuwan data. Tentukan pustaka dan dependensi yang diperlukan untuk menggunakan lingkungan conda.

  • Informasi transformasi data: Dokumentasikan seluruh proses dari awal hingga akhir saat transformasi data terjadi. Dokumentasikan bagaimana data muncul saat penyerapan dan bagaimana data disajikan setelah transformasi.

Alat

Manfaatkan konfigurasi dan riwayat otomatis yang diambil melalui MLFlow dan Pembelajaran Mesin.

Langkah berikutnya