Bagikan melalui


Penyebaran yang dioptimalkan tanpa server untuk model yang melayani titik akhir

Artikel ini menjelaskan cara menggunakan penyebaran yang dioptimalkan tanpa server pada titik akhir penyajian model Anda. Penyebaran yang dioptimalkan untuk tanpa server secara dramatis menurunkan waktu penyebaran dan menjaga konsistensi lingkungan antara penyajian dan pelatihan model.

Apa itu penyebaran yang dioptimalkan tanpa server?

Penyebaran yang dioptimalkan tanpa server memanfaatkan artefak model pengemasan dan penahapan di lingkungan notebook tanpa server selama pendaftaran model, menghasilkan penyebaran titik akhir yang dipercepat dan lingkungan yang konsisten antara pelatihan dan penyajian.

Ini berbeda dari penyebaran yang dioptimalkan tanpa server, di mana artefak dan lingkungan model dimas ke dalam kontainer pada waktu penyebaran. Dalam kasus seperti itu, lingkungan penyajian mungkin tidak cocok dengan yang digunakan selama pelatihan model.

Persyaratan

Titik akhir yang dioptimalkan tanpa server memiliki persyaratan yang sama dengan model yang melayani titik akhir (lihat Persyaratan). Sebagai tambahan:

  • Model harus berupa model kustom (bukan FMAPI)
  • Model harus dicatat dan didaftarkan di Notebook Tanpa Server menggunakan versi 3 atau 4
  • Model harus dicatat dan didaftarkan dengan mlflow>=3.1
  • Model harus terdaftar di UC dan dilayani dengan CPU
  • Ukuran lingkungan maksimum model adalah 1GB

Menggunakan penyebaran yang dioptimalkan tanpa server

Saat mencatat dan mendaftarkan model, gunakan Notebook Tanpa Server dengan klien 3 atau 4 dan mlflow>=3.1.

Untuk menyesuaikan versi klien lingkungan tanpa server, lihat Mengonfigurasi lingkungan tanpa server.

Kemudian, saat mendaftarkan model, atur env_pack parameter dengan nilai yang diinginkan.

import mlflow
from mlflow.utils.env_pack import EnvPackConfig

mlflow.register_model(
    model_info.model_uri,
    model_name,
    env_pack=EnvPackConfig(name="databricks_model_serving")
)

Menambahkan dalam env_pack parameter akan membuat paket fungsi dan tahap artefak model dan lingkungan notebook tanpa server selama pendaftaran model untuk mempersiapkannya untuk penggunaan selama penyebaran. Ini mungkin membutuhkan waktu tambahan dibandingkan dengan mendaftarkan model tanpa env_pack.

EnvPackConfig memiliki parameter install_dependencies (True secara default) yang menentukan apakah dependensi model diinstal di lingkungan saat ini untuk mengonfirmasi lingkungan valid. Jika Anda ingin melewati langkah tersebut, atur nilai ke False.

Nota

Titik akhir di ruang kerja tanpa akses internet atau titik akhir dengan dependensi pada pustaka kustom mungkin gagal jika install_dependencies diatur ke True. Dalam kasus ini, atur install_dependencies ke False.

Anda juga dapat mengganti EnvPackConfig(...) dengan "databricks_model_serving" sebagai singkatan. Tindakan ini setara dengan EnvPackConfig(name="databricks_model_serving", install_dependencies = True).

Setelah pendaftaran model selesai, Anda dapat menerapkan model dalam penyajian model. Perhatikan bahwa waktu penyebaran berkurang dan log peristiwa tidak lagi menunjukkan build kontainer.