Uç noktalara hizmet veren model için hızlı dağıtımlar

Bu makalede, model sunma uç noktalarınızda ekspres dağıtımların nasıl kullanılacağı açıklanmaktadır. Hızlı dağıtımlar dağıtım sürelerini önemli ölçüde düşürür ve model sunum ortamını model eğitim ortamıyla aynı tutar.

Note

Hızlı dağıtımlar daha önce sunucusuz iyileştirilmiş dağıtımlar olarak adlandırılıyordu.

Hızlı dağıtımlar nedir?

Hızlı dağıtımlar, model kaydı sırasında sunucusuz not defteri ortamlarındaki paketleme ve hazırlama modeli yapıtlarından yararlanır ve bu da eğitim ile sunum arasında hızlandırılmış uç nokta dağıtımı ve tutarlı ortamlar sağlar.

Bu, model artefaktlarının ve ortamların dağıtım sırasında kapsayıcılara paketlendiği express olmayan dağıtımlardan farklıdır. Bu gibi durumlarda, sunum ortamı model eğitimi sırasında kullanılan ortamla eşleşmeyebilir.

Requirements

Hızlı dağıtım uç noktaları, model sunma uç noktasıyla aynı gereksinimlere sahiptir (bkz . Gereksinimler). Ayrıca:

  • Model özel bir model olmalıdır ( FMAPI değil)
  • Model, sunucusuz not defterine kayıtlı ve sürüm 3 veya 4 kullanılarak kaydedilmelidir.
  • Model, mlflow>=3.1 ve databricks-sdk>=0.102.0 ile günlüğe kaydedilmeli ve kayıt altına alınmalıdır.
  • Modelin Unity Kataloğu'na kaydedilmesi gerekir. Sunum için kullanılan hesaplama kaynağı, modelin kaydedildiği hesaplama kaynağıyla eşleşmelidir. CPU'da hizmet vermek için normal bir sunucusuz not defterinden veya GPU'da hizmet vermek için sunucusuz GPU işlemlerinden kaydolabilirsiniz.
  • Modelin maksimum ortam boyutu 200 GB'tır

Note

GPU işlem gücü üzerinde ekspres dağıtımları kullanarak özel bir LLM sunmak için bkz. Özel Model Sunumu ile özel LLM'leri sunma.

Hızlı dağıtımları kullanma

Bir modeli günlüğe kaydederken ve kaydederken, Sunucusuz Not Defteri ile 3 veya 4 numaralı istemciyi kullanın.

Sunucusuz ortamın istemci sürümünü ayarlamak için bkz. Sunucusuz ortamı yapılandırma.

Ardından, modeli kaydederken parametresini env_pack istenen değerlerle ayarlayın.

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")
)

parametresine env_pack eklemek, işlev paketinin dağıtım sırasında kullanıma hazırlanması için model kaydı sırasında model yapıtlarını ve sunucusuz not defteri ortamını hazırlar. Bu, env_pack olmadan modeli kaydetmeye kıyasla ek zaman alabilir.

EnvPackConfig , ortamın geçerli olduğunu onaylamak için modelin bağımlılıklarının geçerli ortama yüklenip yüklenmediğini belirleyen bir parametresine install_dependencies (True varsayılan olarak) sahiptir. Bu adımı atlamak isterseniz değerini olarak Falseayarlayın.

Note

İnternet erişimi olmayan çalışma alanlarındaki uç noktalar veya özel kitaplıklara bağımlılıkları olan uç noktalar install_dependenciesTrue olarak ayarlanırsa başarısız olabilir. Bu gibi durumlarda install_dependencies'yı False olarak ayarlayın.

EnvPackConfig(...) yerine "databricks_model_serving"'i kısaltma olarak da kullanabilirsiniz. Bu, EnvPackConfig(name="databricks_model_serving", install_dependencies = True)eşdeğerdir.

Modeli kaydettikten sonra modeli model sunma işlemine dağıtabilirsiniz. Dağıtım süresinin azaldığını ve olay günlüklerinin artık kapsayıcı derlemesini göstermediğini fark edin.