Bagikan melalui


MLflow untuk agen AI generatif, dan siklus hidup model ML

Artikel ini menjelaskan bagaimana MLflow pada Databricks digunakan untuk mengembangkan agen AI generatif berkualitas tinggi dan model pembelajaran mesin.

Nota

Jika Anda baru saja mulai menggunakan Azure Databricks, pertimbangkan untuk mencoba MLflow di Databricks Community Edition.

Apa itu MLflow?

MLflow adalah platform sumber terbuka untuk mengembangkan model dan aplikasi AI generatif. Ini memiliki komponen utama berikut:

  • Pelacakan: Memungkinkan Anda melacak eksperimen untuk merekam dan membandingkan parameter dan hasil.
  • Model: Memungkinkan Anda mengelola dan menyebarkan model dari berbagai pustaka ML ke berbagai platform penyajian model dan inferensi.
  • Registri Model: Memungkinkan Anda mengelola proses penyebaran model dari penahapan ke produksi, dengan penerapan versi model dan kemampuan anotasi.
  • Evaluasi dan pelacakan agen AI: Memungkinkan Anda mengembangkan agen AI berkualitas tinggi dengan membantu Anda membandingkan, mengevaluasi, dan memecahkan masalah agen.

MLflow mendukung Java, Python, R, dan REST API.

MLflow yang dikelola Databricks

Databricks menyediakan versi MLflow yang dikelola sepenuhnya dan dihosting, membangun pengalaman sumber terbuka untuk membuatnya lebih kuat dan dapat diskalakan untuk penggunaan perusahaan.

Diagram berikut menunjukkan bagaimana Databricks terintegrasi dengan MLflow untuk melatih dan menyebarkan model pembelajaran mesin.

MLflow terintegrasi dengan Databricks untuk mengelola siklus hidup ML.

MLflow yang dikelola Databricks dibangun di Unity Catalog dan Cloud Data Lake untuk menyatukan semua data dan aset AI Anda dalam siklus hidup ML:

  1. Feature store: Pencarian fitur otomatis dari Databricks menyederhanakan integrasi dan mengurangi kesalahan.
  2. Melatih model: Menggunakan Mosaic AI untuk melatih model atau menyempurnakan model fondasi.
  3. Pelacakan : MLflow melacak pelatihan dengan mencatat parameter, metrik, dan artefak untuk mengevaluasi dan membandingkan performa model.
  4. Model Registry: MLflow Model Registry, terintegrasi dengan Unity Catalog mempusatkan model dan artefak AI.
  5. Penyajian Model: Mosaic AI Model Serving menerapkan model ke endpoint API REST.
  6. Monitoring: Mosaic AI Model Serving secara otomatis menangkap permintaan dan respons untuk memantau serta mendebug model. MLflow menambah data ini dengan data pelacakan untuk setiap permintaan.

Pelatihan model

Model MLflow berada di inti pengembangan AI dan ML pada Databricks. Model MLflow adalah format standar untuk mengemas model pembelajaran mesin dan agen AI generatif. Format standar memastikan bahwa model dan agen dapat digunakan oleh alat hilir dan alur kerja pada Databricks.

  • Dokumentasi MLflow - Model.

Databricks menyediakan fitur untuk membantu Anda melatih berbagai jenis model ML.

Pelacakan eksperimen

Databricks menggunakan eksperimen MLflow sebagai unit organisasi untuk melacak pekerjaan Anda saat mengembangkan model.

Pelacakan eksperimen memungkinkan Anda mencatat dan mengelola parameter, metrik, artefak, dan versi kode selama pelatihan pembelajaran mesin dan pengembangan agen. Mengatur log menjadi eksperimen dan eksekusi memungkinkan Anda membandingkan model, menganalisis performa, dan melakukan iterasi dengan lebih mudah.

Registri Model dengan Katalog Unity

MLflow Model Registry adalah repositori model terpusat, UI, dan set API untuk mengelola proses penyebaran model.

Databricks mengintegrasikan Model Registry dengan Unity Catalog untuk memberikan tata kelola terpusat untuk model. Integrasi Unity Catalog memungkinkan Anda mengakses model di seluruh ruang kerja, melacak silsilah model, dan menemukan model untuk digunakan kembali.

Pelayanan Model

Databricks Model Serving terintegrasi erat dengan MLflow Model Registry dan menyediakan antarmuka terpadu dan dapat diskalakan untuk menyebarkan, mengatur, dan mengkueri model AI. Setiap model yang Anda layani tersedia sebagai REST API yang dapat Anda integrasikan ke dalam aplikasi web atau klien.

Meskipun merupakan komponen yang berbeda, Model Serving sangat bergantung pada MLflow Model Registry untuk menangani penerapan versi model, manajemen dependensi, validasi, dan tata kelola.

Pengembangan dan evaluasi agen AI

Untuk pengembangan agen AI, Databricks terintegrasi dengan MLflow yang mirip dengan pengembangan model ML. Namun, ada beberapa perbedaan utama:

  • Untuk membuat agen AI di Databricks, gunakan Mosaic AI Agent Framework, yang bergantung pada MLflow untuk melacak kode agen, metrik performa, dan jejak agen.
  • Untuk mengevaluasi agen pada Databricks, gunakan Mosaic AI Agent Evaluation, yang bergantung pada MLflow untuk melacak hasil evaluasi.
  • Pelacakan MLflow untuk agen juga mencakup MLflow Tracing. Pelacakan MLflow memungkinkan Anda melihat informasi terperinci tentang eksekusi layanan agen Anda. Pelacakan merekam input, output, dan metadata yang terkait dengan setiap langkah perantara permintaan, memungkinkan Anda menemukan sumber perilaku tak terduga dalam agen dengan cepat.

Diagram berikut menunjukkan bagaimana Databricks terintegrasi dengan MLflow untuk membuat dan menyebarkan agen AI.

MLflow terintegrasi dengan Databricks untuk mengelola siklus hidup aplikasi AI gen.

MLflow yang dikelola Databricks dibangun di Unity Catalog dan Cloud Data Lake untuk menyatukan semua data dan aset AI Anda dalam siklus hidup aplikasi AI gen:

  1. Penyimpanan vektor & fitur: Pencarian otomatis vektor dan fitur oleh Databricks menyederhanakan integrasi dan mengurangi kesalahan.
  2. Membuat dan mengevaluasi agen AI: Mosaic AI Agent Framework and Agent Evaluation membantu Anda membuat agen dan mengevaluasi outputnya.
  3. Penelusuran & penelusuran: penelusuran MLflow menangkap informasi eksekusi agen yang terperinci agar observabilitas AI generatif meningkat.
  4. Model Registry: MLflow Model Registry, terintegrasi dengan Unity Catalog mempusatkan model dan artefak AI.
  5. Penyajian Model: Mosaic AI Model Serving menerapkan model ke endpoint API REST.
  6. Pemantauan: MLflow secara otomatis menangkap permintaan dan respons untuk memantau dan debug model.

Sumber terbuka vs. Fitur MLflow yang dikelola Databricks

Untuk konsep MLflow umum, API, dan fitur yang dibagikan antara sumber terbuka dan versi yang dikelola Databricks, lihat dokumentasi MLflow . Untuk fitur eksklusif untuk MLflow yang dikelola Databricks, lihat Dokumentasi Databricks.

Tabel berikut menyoroti perbedaan utama antara MLflow sumber terbuka dan MLflow yang dikelola Databricks dan menyediakan tautan dokumentasi untuk membantu Anda mempelajari lebih lanjut:

Fitur Ketersediaan MLflow di sumber terbuka Ketersediaan pada MLflow yang dikelola Databricks
Keamanan Pengguna harus menyediakan lapisan tata kelola keamanan mereka sendiri Keamanan tingkat perusahaan Databricks
Pemulihan bencana Tidak tersedia Pemulihan bencana Databricks
Pelacakan eksperimen API Pelacakan MLflow API Pelacakan MLflow terintegrasi dengan pelacakan eksperimen tingkat lanjut Databricks
Pendaftaran Model Registri MLflow Model MLflow Model Registry terintegrasi dengan Databricks Unity Catalog
Integrasi Katalog Unity Integrasi sumber terbuka dengan Unity Catalog Databricks Unity Catalog
Penyebaran model Integrasi yang dikonfigurasi pengguna dengan solusi penyajian eksternal (SageMaker, Kubernetes, layanan kontainer, dan sebagainya) Databricks Model Penyajian dan solusi penyajian eksternal
Agen AI pengembangan MLflow LLM Pengembangan LLM MLflow terintegrasi dengan Kerangka Kerja Agen AI Mosaic dan Evaluasi Agen
Enkripsi Tidak tersedia Enkripsi menggunakan kunci yang dikelola pelanggan