Çalışma Alanı Modeli Kayıt Defteri'ni (eski) kullanarak model yaşam döngüsünü yönetme

Önemli

Bu belgeler Çalışma Alanı Modeli Kayıt Defteri'ni kapsar. Çalışma alanınız Unity Kataloğu için etkinleştirildiyse, bu sayfadaki yordamları kullanmayın. Bunun yerine bkz . Unity Kataloğu'ndaki Modeller.

Çalışma Alanı Modeli Kayıt Defteri'nden Unity Kataloğu'na yükseltme yönergeleri için bkz . İş akışlarını ve modelleri Unity Kataloğu'na geçirme.

Çalışma alanınızın varsayılan kataloğu Unity Kataloğu'ndaysa (yerine hive_metastore) ve Databricks Runtime 13.3 LTS veya üzerini kullanarak bir küme çalıştırıyorsanız, modeller otomatik olarak çalışma alanı varsayılan kataloğunda oluşturulur ve bu katalogdan yüklenir ve yapılandırma gerekmez. Bu durumda Çalışma Alanı Modeli Kayıt Defteri'ni kullanmak için, iş yükünüzün başında çalıştırarak import mlflow; mlflow.set_registry_uri("databricks") bunu açıkça hedeflemeniz gerekir. Hem varsayılan kataloğun Ocak 2024'ten önce Unity Kataloğu'nda bir katalog olarak yapılandırıldığı hem de Ocak 2024'ten önce çalışma alanı modeli kayıt defterinin kullanıldığı az sayıda çalışma alanı bu davranıştan muaf tutulur ve Çalışma Alanı Modeli Kayıt Defteri'ni varsayılan olarak kullanmaya devam eder.

Bu makalede, ML modellerinin tüm yaşam döngüsünü yönetmek için makine öğrenmesi iş akışınızın bir parçası olarak Çalışma Alanı Modeli Kayıt Defteri'nin nasıl kullanılacağı açıklanmaktadır. Çalışma Alanı Modeli Kayıt Defteri, MLflow Model Kayıt Defteri'nin Databricks tarafından sağlanan, barındırılan bir sürümüdür.

Çalışma Alanı Modeli Kayıt Defteri aşağıdakileri sağlar:

  • Kronolojik model kökeni (MLflow denemesi ve çalıştırması modeli belirli bir zamanda üretmektedir).
  • Model Sunma.
  • Model sürümü oluşturma.
  • Aşama geçişleri (örneğin, hazırlamadan üretime veya arşivlenmişe).
  • Web kancaları, kayıt defteri olaylarını temel alan eylemleri otomatik olarak tetikleyebilmenizi sağlar.
  • Model olaylarının e-posta bildirimleri.

Ayrıca model açıklamaları oluşturup görüntüleyebilir ve açıklama bırakabilirsiniz.

Bu makale hem Çalışma Alanı Modeli Kayıt Defteri Kullanıcı Arabirimi hem de Çalışma Alanı Modeli Kayıt Defteri API'sine yönelik yönergeler içerir.

Çalışma Alanı Modeli Kayıt Defteri kavramlarına genel bakış için bkz . MLflow kullanarak ML yaşam döngüsü yönetimi.

Model oluşturma veya kaydetme

Kullanıcı arabirimini kullanarak model oluşturabilir veya kaydedebilir ya da API'yi kullanarak bir model kaydedebilirsiniz.

Kullanıcı arabirimini kullanarak model oluşturma veya kaydetme

Çalışma Alanı Modeli Kayıt Defteri'ne model kaydetmenin iki yolu vardır. MLflow’da günlüğe kaydedilmiş mevcut bir modeli kaydedebilir veya yeni, boş bir model oluşturup kaydedebilir ve daha sonra bu modele önceden günlüğe kaydedilmiş bir model atayabilirsiniz.

Not defterinden var olan bir günlüğe kaydedilmiş modeli kaydetme

  1. Çalışma alanında, kaydetmek istediğiniz modeli içeren MLflow çalıştırmasını belirleyin.

    1. Not defterinin sağ kenar çubuğundaKi Deneme simgesine Deneme simgesi tıklayın.

      Not defteri araç çubuğu

    2. Deneme Çalıştırmaları kenar çubuğunda, çalıştırma tarihinin yanındaki simgeye tıklayın Dış Bağlantı . MLflow Çalıştırma sayfası görüntülenir. Bu sayfa parametreler, ölçümler, etiketler ve yapıt listesi dahil olmak üzere tüm çalıştırma ayrıntılarını görüntüler.

  2. Yapıtlar bölümünde, xxx-model adlı dizine tıklayın.

    Modeli kaydetme

  3. En sağdaki Modeli Kaydet düğmesine tıklayın.

  4. İletişim kutusunda Model kutusuna tıklayın ve aşağıdakilerden birini yapın:

    • Açılan menüden Yeni Model Oluştur'u seçin. Model Adı alanı görüntülenir. Örneğin scikit-learn-power-forecasting, bir model adı girin.
    • Açılan menüden mevcut bir modeli seçin.

    Yeni model oluşturun

  5. Kaydet’e tıklayın.

    • Yeni Model Oluştur'u seçtiyseniz, bu, adlı scikit-learn-power-forecastingbir modeli kaydeder, modeli Çalışma Alanı Modeli Kayıt Defteri tarafından yönetilen güvenli bir konuma kopyalar ve modelin yeni bir sürümünü oluşturur.
    • Mevcut bir modeli seçtiyseniz, bu seçilen modelin yeni bir sürümünü kaydeder.

    Birkaç dakika sonra Modeli Kaydet düğmesi yeni kayıtlı model sürümünün bağlantısına dönüşür.

    Yeni oluşturulan modeli seçin

  6. Çalışma Alanı Modeli Kayıt Defteri kullanıcı arabiriminde yeni model sürümünü açmak için bağlantıya tıklayın. Ayrıca, kenar çubuğundaki Modeller'e tıklayarakModeller Simgesine modeli Çalışma Alanı Modeli Kayıt Defteri'nde de bulabilirsiniz.

Yeni bir kayıtlı model oluşturma ve buna, günlüğe kaydedilmiş bir model atama

Kayıtlı modeller sayfasındaki Model Oluştur düğmesini kullanarak yeni, boş bir model oluşturabilir ve ardından buna, günlüğe kaydedilmiş bir model atayabilirsiniz. Şu adımları izleyin:

  1. Kayıtlı modeller sayfasında Model Oluştur’a tıklayın. Modeliniz için bir ad girin ve Oluştur’a tıklayın.

  2. Not defterinden mevcut bir günlüğe kaydedilmiş modeli kaydetme bölümündeki 1’den 3’e kadar olan Adımları izleyin.

  3. Modeli Kaydet iletişim kutusunda, 1. Adımda oluşturduğunuz modelin adını seçin ve Kaydet’e tıklayın. Bu, oluşturduğunuz ada sahip bir modeli kaydeder, modeli Çalışma Alanı Modeli Kayıt Defteri tarafından yönetilen güvenli bir konuma kopyalar ve bir model sürümü oluşturur: Version 1.

    Birkaç dakika sonra MLflow Çalıştırması Kullanıcı Arabirimi, Modeli Kaydet düğmesini yeni kaydedilen model sürümüne bir bağlantıyla değiştirir. Şimdi, Deneme Çalıştırmaları sayfasındaki Modeli Kaydet iletişim kutusunda bulunan Model açılan listesinden modeli seçebilirsiniz. Ayrıca, Create ModelVersion gibi API komutlarında adını belirterek modelin yeni sürümlerini de kaydedebilirsiniz.

API kullanarak model kaydetme

Çalışma Alanı Modeli Kayıt Defteri'ne model kaydetmenin üç programlı yolu vardır. Tüm yöntemler modeli Çalışma Alanı Modeli Kayıt Defteri tarafından yönetilen güvenli bir konuma kopyalar.

  • Modeli günlüğe kaydetmek ve MLflow denemesi sırasında belirtilen adla kaydetmek için mlflow.<model-flavor>.log_model(...) yöntemini kullanın. Bu ada sahip kayıtlı bir model yoksa yöntem yeni bir model kaydeder, Sürüm 1’i oluşturur ve bir ModelVersion MLflow nesnesi döndürür. Bu ada sahip kayıtlı bir model zaten varsa yöntem yeni bir model sürümü oluşturur ve sürüm nesnesini döndürür.

    with mlflow.start_run(run_name=<run-name>) as run:
      ...
      mlflow.<model-flavor>.log_model(<model-flavor>=<model>,
        artifact_path="<model-path>",
        registered_model_name="<model-name>"
      )
    
  • Tüm deneme çalıştırmalarınızı tamamladıktan ve kayıt defterine eklemek için en uygun modele karar verdikten sonra modeli belirtilen adla kaydetmek üzere mlflow.register_model() yöntemini kullanın. Bu yöntemde, mlruns:URI bağımsız değişkeni için çalıştırma kimliği gerekir. Bu ada sahip kayıtlı bir model yoksa yöntem yeni bir model kaydeder, Sürüm 1’i oluşturur ve bir ModelVersion MLflow nesnesi döndürür. Bu ada sahip kayıtlı bir model zaten varsa yöntem yeni bir model sürümü oluşturur ve sürüm nesnesini döndürür.

    result=mlflow.register_model("runs:<model-path>", "<model-name>")
    
  • Belirtilen ada sahip yeni bir kayıtlı model oluşturmak için MLflow İstemci API’si create_registered_model() yöntemini kullanın. Model adı varsa bu yöntem bir MLflowException oluşturur.

    client = MlflowClient()
    result = client.create_registered_model("<model-name>")
    

Ayrıca Databricks Terraform sağlayıcısına bir model kaydedebilir ve databricks_mlflow_model.

Kota sınırları

Tüm Databricks çalışma alanları için Mayıs 2024'den itibaren Çalışma Alanı Modeli Kayıt Defteri, çalışma alanı başına kayıtlı modellerin ve model sürümlerinin toplam sayısına kota sınırları getirir. Bkz. Kaynak sınırları. Kayıt defteri kotalarını aşarsanız Databricks, artık ihtiyacınız olmayan kayıtlı modelleri ve model sürümlerini silmenizi önerir. Databricks ayrıca model kaydınızı ve bekletme stratejinizi sınırın altında kalacak şekilde ayarlamanızı önerir. Çalışma alanı sınırlarınızda bir artışa ihtiyacınız varsa Databricks hesap ekibinize ulaşın.

Aşağıdaki not defteri, model kayıt defteri varlıklarınızın envanterini nasıl silip sileceğinizi gösterir.

Envanter çalışma alanı modeli kayıt defteri varlıkları not defteri

Not defterini alma

Kullanıcı arabirimindeki modelleri görüntüleme

Kayıtlı modeller sayfası

Kenar çubuğunda Modeller'e tıkladığınızda Modeller Simgesinekayıtlı modeller sayfası görüntülenir. Bu sayfada kayıt defterindeki tüm modeller gösterilir.

Bu sayfadan yeni bir model oluşturabilirsiniz.

Ayrıca bu sayfadan, çalışma alanı yöneticileri Çalışma Alanı Modeli Kayıt Defteri'ndeki tüm modeller için izinleri ayarlayabilir.

Kayıtlı modeller

Kayıtlı model sayfası

Bir modelin kayıtlı model sayfasını görüntülemek için, kayıtlı modeller sayfasında bir model adına tıklayın. Kayıtlı model sayfası, seçilen model hakkındaki bilgileri ve modelin her sürümüyle ilgili bilgileri içeren bir tabloyu gösterir. Bu sayfadan şunları da yapabilirsiniz:

Kayıtlı model

Model sürümü sayfası

Model sürümü sayfasını görüntülemek için aşağıdakilerden birini yapın:

  • Kayıtlı modeller sayfasındaki En Son Sürüm sütununda bir sürüm adına tıklayın.
  • Kayıtlı model sayfasındaki Sürüm sütununda bir sürüm adına tıklayın.

Bu sayfa, kayıtlı modelin belirli bir sürümüyle ilgili bilgileri görüntüler ve ayrıca kaynak çalıştırmaya (modeli oluşturmak için çalıştırılan not defterinin sürümü) bir bağlantı sağlar. Bu sayfadan şunları da yapabilirsiniz:

Model sürümü

Modellere erişimi denetleme

Bir modelde izinleri yapılandırmak için en azından CAN MANAGE izniniz olmalıdır. Model izin düzeyleri hakkında bilgi için bkz . MLFlow modeli ACL'leri. Model sürümü izinleri üst modelden devralır. Model sürümleri için izinleri ayarlayamazsınız.

  1. Kenar çubuğunda Modeller'e tıklayınModeller Simgesine.

  2. Bir model adı seçin.

  3. İzinler'e tıklayın. İzin Ayarlar iletişim kutusu açılır

    Model izinleri düğmesi

  4. İletişim kutusunda Kullanıcı, Grup veya Hizmet Sorumlusu Seç... açılan listesini seçin ve bir kullanıcı, grup veya hizmet sorumlusu seçin.

    MLflow modeli izinlerini değiştirme

  5. İzin açılan listesinden bir izin seçin.

  6. Ekle'ye ve Kaydet'e tıklayın.

Çalışma alanı yöneticileri ve kayıt defteri genelinde YÖNETİn iznine sahip kullanıcılar, Modeller sayfasındaki İzinler'e tıklayarak çalışma alanı içindeki tüm modellerde izin düzeylerini ayarlayabilir.

Model aşamasına geçiş

Model sürümü şu aşamalardan birine sahiptir: Yok, Hazırlama, Üretim veya Arşivlenmiş. Hazırlama aşaması, model testi ve doğrulama için tasarlanmıştır. Üretim aşaması, test veya gözden geçirme süreçlerini tamamlayan ve canlı puanlama için uygulamalara dağıtılan model sürümleri içindir. Arşivlenmiş bir model sürümünün etkin olmadığı varsayılır, bu noktada bunu silmeyi düşünebilirsiniz. Modelin farklı sürümleri farklı aşamalarda olabilir.

Uygun izinlere sahip bir kullanıcı, bir model sürümünü aşamalar arasında geçirebilir. Model sürümünü belirli bir aşamaya geçirme izniniz varsa geçişi doğrudan yapabilirsiniz. İzniniz yoksa bir aşama geçişi isteğinde bulunabilirsiniz. Model sürümlerini geçirme izni olan bir kullanıcı isteği onaylayabilir, reddedebilir veya iptal edebilir.

Kullanıcı arabirimini veya API'yi kullanarak bir model aşamasına geçiş yapabilirsiniz.

Kullanıcı arabirimini kullanarak model aşamasını geçirme

Bir modelin aşamasını geçirmek için bu yönergeleri izleyin.

  1. Kullanılabilir model aşamalarının listesini ve kullanılabilir seçeneklerinizi görüntülemek için, model sürümü sayfasında Aşama: öğesinin yanındaki açılan menüye tıklayın ve başka bir aşamaya geçiş isteyin veya seçin.

    Aşama geçiş seçenekleri

  2. İsteğe bağlı bir yorum girin ve Tamam’a tıklayın.

Model sürümünü Üretim aşamasına geçirme

Test ve doğrulama işleminden sonra, Üretim aşamasına geçiş yapabilir veya bir geçiş isteğinde bulunabilirsiniz.

Çalışma Alanı Modeli Kayıt Defteri, her aşamada kayıtlı modelin birden fazla sürümüne izin verir. Üretimde yalnızca bir sürüme sahip olmak istiyorsanız, Mevcut Üretim modellerini Arşivlenmiş aşamasına geçir seçeneğini işaretleyerek modelin şu anda Üretim aşamasında olan tüm sürümlerini Arşivlenmiş aşamasına geçirebilirsiniz.

Model sürümü aşaması geçiş isteğini onaylama, reddetme veya iptal etme

Aşama geçişi izni olmayan bir kullanıcı, aşama geçişi isteğinde bulunabilir. İstek, model sürümü sayfasındaki Bekleyen İstekler bölümünde görüntülenir:

Üretime geçiş

Aşama geçişi isteğini onaylamak, reddetmek veya iptal etmek için Onayla, Reddet veya İptal et bağlantısına tıklayın.

Geçiş isteğinin oluşturucusu da isteği iptal edebilir.

Model sürümü etkinliklerini görüntüleme

Model sürümüne yönelik istenen, onaylanan, bekleyen ve uygulanan tüm geçişleri görüntülemek için Etkinlikler bölümüne gidin. Bu etkinlik kaydı, denetim veya inceleme için modelin yaşam döngüsü kökenini sağlar.

API kullanarak model aşamasına geçiş

Uygun izinlere sahip kullanıcılar, model sürümünü yeni bir aşamaya geçirebilir.

Model sürümü aşamasını yeni bir aşamaya güncelleştirmek için MLflow İstemci API’si transition_model_version_stage() yöntemini kullanın:

  client = MlflowClient()
  client.transition_model_version_stage(
    name="<model-name>",
    version=<model-version>,
    stage="<stage>",
    description="<description>"
  )

<stage> için kabul edilen değerler şunlardır: "Staging"|"staging", "Archived"|"archived", "Production"|"production", "None"|"none".

Çıkarım için modeli kullanma

Önemli

Bu özellik Genel Önizlemededir.

Bir model Çalışma Alanı Modeli Kayıt Defteri'ne kaydedildikten sonra, toplu işlem veya akış çıkarımı için modeli kullanmak üzere otomatik olarak bir not defteri oluşturabilirsiniz. Alternatif olarak, Model Sunma ile gerçek zamanlı sunum için modeli kullanmak üzere bir uç nokta oluşturabilirsiniz.

Kayıtlı model sayfasının veya model sürümü sayfasının sağ üst köşesinde öğesine tıklayınmodel kullan düğmesi. Toplu iş, akış veya gerçek zamanlı çıkarım yapılandırmanıza olanak tanıyan Model çıkarımı yapılandır iletişim kutusu görüntülenir.

Önemli

Anaconda Inc. anaconda.org kanalları için hizmet koşullarını güncelleştirdi. Yeni hizmet koşullarına bağlı olarak, Anaconda'nın paketleme ve dağıtımına güveniyorsanız ticari lisansa ihtiyacınız olabilir. Daha fazla bilgi için bkz . Anaconda Commercial Edition SSS . Herhangi bir Anaconda kanalını kullanımınız, hizmet koşullarına tabidir.

v1.18(Databricks Runtime 8.3 ML veya öncesi) öncesinde günlüğe kaydedilen MLflow modelleri varsayılan olarak conda defaults kanalıyla (https://repo.anaconda.com/pkgs/) bağımlılık olarak günlüğe kaydedilir. Bu lisans değişikliği nedeniyle Databricks, MLflow v1.18 ve üzeri kullanılarak günlüğe kaydedilen modeller için kanalın defaults kullanımını durdurdu. Günlüğe kaydedilen varsayılan kanal, conda-forgetopluluk tarafından yönetilen https://conda-forge.org/öğesine işaret eden şeklindedir.

MLflow v1.18'den önce kanalı modelin conda ortamından dışlamadan defaults bir modeli günlüğe kaydetmişseniz, bu modelin defaults kanala yönelik olarak amaçlamadığınız bir bağımlılığı olabilir. Modelin bu bağımlılıkta olup olmadığını el ile onaylamak için, günlüğe kaydedilen modelle paketlenmiş dosyadaki conda.yaml değeri inceleyebilirsinizchannel. Örneğin, kanal bağımlılığı olan bir defaults model conda.yaml aşağıdaki gibi görünebilir:

channels:
- defaults
dependencies:
- python=3.8.8
- pip
- pip:
    - mlflow
    - scikit-learn==0.23.2
    - cloudpickle==1.6.0
      name: mlflow-env

Databricks, Anaconda ile olan ilişkiniz kapsamında Anaconda deposunu kullanarak modellerinizle etkileşim kurmanıza izin verilip verilmeyeceğini belirleyemediğinden, Databricks müşterilerini herhangi bir değişiklik yapmaya zorlamaz. Databricks'in kullanımı aracılığıyla Anaconda.com depoyu kullanımınıza Anaconda'nın koşulları altında izin verilirse herhangi bir işlem yapmanız gerekmez.

Modelin ortamında kullanılan kanalı değiştirmek isterseniz, yeni bir conda.yamlile modeli Çalışma Alanı model kayıt defterine yeniden kaydedebilirsiniz. Kanalı parametresinde conda_envlog_model()belirterek bunu yapabilirsiniz.

API hakkında log_model() daha fazla bilgi için, üzerinde çalıştığınız model çeşidine ilişkin MLflow belgelerine (örneğin, scikit-learn için log_model) bakın.

Dosyalar hakkında conda.yaml daha fazla bilgi için MLflow belgelerine bakın.

Model çıkarımı yapılandırma iletişim kutusu

Toplu çıkarım yapılandırma

Toplu çıkarım not defteri oluşturmak için bu adımları uyguladığınızda, not defteri kullanıcı klasörünüzde modelin Batch-Inference adını içeren bir klasördeki klasörün altına kaydedilir. Not defterini gerektiği gibi düzenleyebilirsiniz.

  1. Batch çıkarımı sekmesine tıklayın.

  2. Model sürümü açılan listesinden kullanılacak model sürümünü seçin. Açılan listede ilk iki öğe modelin geçerli Üretim ve Hazırlama sürümüdür (varsa). Bu seçeneklerden birini belirlediğinizde, not defteri çalıştırıldığında otomatik olarak Üretim veya Hazırlama sürümünü kullanır. Modeli geliştirmeye devam ettikçe not defterini güncelleştirmeniz gerekmez.

  3. Giriş tablosunun yanındaki Gözat düğmesine tıklayın. Giriş verilerini seç iletişim kutusu görüntülenir. Gerekirse, İşlem açılan listesinde kümeyi değiştirebilirsiniz.

    Not

    Unity Kataloğu'nu etkinleştiren çalışma alanları için Giriş verilerini seç iletişim kutusu üç düzey arasından seçim yapmanızı sağlar: <catalog-name>.<database-name>.<table-name>.

  4. Modelin giriş verilerini içeren tabloyu seçin ve Seç'e tıklayın. Oluşturulan not defteri bu verileri otomatik olarak içeri aktarır ve modele gönderir. Veriler modele giriş yapmadan önce herhangi bir dönüştürme gerektiriyorsa, oluşturulan not defterini düzenleyebilirsiniz.

  5. Tahminler dizinindeki dbfs:/FileStore/batch-inferencebir klasöre kaydedilir. Varsayılan olarak, tahminler modelle aynı ada sahip bir klasöre kaydedilir. Oluşturulan not defterinin her çalıştırması, bu dizine adın sonuna zaman damgası eklenmiş yeni bir dosya yazar. Ayrıca zaman damgasını eklememeyi ve not defterinin sonraki çalıştırmalarıyla dosyanın üzerine yazmayı da seçebilirsiniz; yönergeleri oluşturulan not defterinde sağlanır.

    Çıktı tablosu konumu alanına yeni bir klasör adı yazarak veya klasör simgesine tıklayarak dizine göz atıp farklı bir klasör seçerek tahminlerin kaydedildiği klasörü değiştirebilirsiniz.

    Unity Kataloğu'ndaki bir konuma tahminleri kaydetmek için not defterini düzenlemeniz gerekir. Unity Kataloğu'ndaki verileri kullanan bir makine öğrenmesi modelini eğitmeyi ve sonuçları Unity Kataloğu'na geri yazmayı gösteren örnek bir not defteri için bkz . Unity Kataloğu ile makine öğrenmesi modellerini eğitip kaydetme.

Delta Live Tablolarını kullanarak akış çıkarımı yapılandırma

Akış çıkarımı not defteri oluşturmak için bu adımları uyguladığınızda, not defteri kullanıcı klasörünüzde modelin DLT-Inference adıyla bir klasöre kaydedilir. Not defterini gerektiği gibi düzenleyebilirsiniz.

  1. Akış (Delta Live Tablolar) sekmesine tıklayın.

  2. Model sürümü açılan listesinden kullanılacak model sürümünü seçin. Açılan listede ilk iki öğe modelin geçerli Üretim ve Hazırlama sürümüdür (varsa). Bu seçeneklerden birini belirlediğinizde, not defteri çalıştırıldığında otomatik olarak Üretim veya Hazırlama sürümünü kullanır. Modeli geliştirmeye devam ettikçe not defterini güncelleştirmeniz gerekmez.

  3. Giriş tablosunun yanındaki Gözat düğmesine tıklayın. Giriş verilerini seç iletişim kutusu görüntülenir. Gerekirse, İşlem açılan listesinde kümeyi değiştirebilirsiniz.

    Not

    Unity Kataloğu'nu etkinleştiren çalışma alanları için Giriş verilerini seç iletişim kutusu üç düzey arasından seçim yapmanızı sağlar: <catalog-name>.<database-name>.<table-name>.

  4. Modelin giriş verilerini içeren tabloyu seçin ve Seç'e tıklayın. Oluşturulan not defteri, giriş tablosunu kaynak olarak kullanan bir veri dönüşümü oluşturur ve model tahminleri gerçekleştirmek için MLflow PySpark çıkarım UDF'sini tümleştirir. Veriler, model uygulanmadan önce veya uygulandıktan sonra herhangi bir ek dönüştürme gerektiriyorsa, oluşturulan not defterini düzenleyebilirsiniz.

  5. Çıkış Delta Live Tablo adını belirtin. Not defteri, verilen ada sahip bir canlı tablo oluşturur ve model tahminlerini depolamak için bu tabloyu kullanır. Oluşturulan not defterini, hedef veri kümesini gerektiği gibi özelleştirmek için değiştirebilirsiniz; örneğin: akış canlı tablosunu çıkış olarak tanımlayın, şema bilgileri veya veri kalitesi kısıtlamaları ekleyin.

  6. Daha sonra bu not defteriyle yeni bir Delta Live Tables işlem hattı oluşturabilir veya bunu mevcut bir işlem hattına ek bir not defteri kitaplığı olarak ekleyebilirsiniz.

Gerçek zamanlı çıkarım yapılandırma

Model Sunma , MLflow makine öğrenmesi modellerinizi ölçeklenebilir REST API uç noktaları olarak kullanıma sunar. Model Sunma uç noktası oluşturmak için bkz . Uç noktaları sunan özel model oluşturma.

Geri bildirimde bulunun

Bu özellik önizleme aşamasındadır ve geri bildiriminizi almak isteriz. Geri bildirim sağlamak için Model çıkarımı yapılandır iletişim kutusuna tıklayın Provide Feedback .

Model sürümlerini karşılaştırma

Çalışma Alanı Modeli Kayıt Defteri'nde model sürümlerini karşılaştırabilirsiniz.

  1. Kayıtlı model sayfasında, model sürümünün sol tarafındaki onay kutusuna tıklayarak iki veya daha fazla model sürümü seçin.
  2. Karşılaştır'a tıklayın.
  3. Seçilen model sürümlerinin parametrelerini, şemasını ve ölçümlerini karşılaştıran bir tablo gösteren Sürümleri Karşılaştırma <N> ekranı görüntülenir. Ekranın alt kısmında çizim türünü (dağılım, dağılım veya paralel koordinatlar) ve çizecek parametreleri veya ölçümleri seçebilirsiniz.

Bildirim tercihlerini denetleme

Çalışma Alanı Modeli Kayıt Defteri'ni, belirttiğiniz kayıtlı modellerde ve model sürümlerindeki etkinlik hakkında sizi e-postayla bilgilendirecek şekilde yapılandırabilirsiniz.

Kayıtlı model sayfasında, Beni bilgilendir menüsünde üç seçenek gösterilir:

E-posta bildirimleri menüsü

  • Tüm yeni etkinlikler: Bu modelin tüm model sürümlerindeki tüm etkinlikler hakkında e-posta bildirimleri gönderin. Kayıtlı modeli oluşturduysanız, bu ayar varsayılan ayardır.
  • Takip ettiğiniz sürümlerde etkinlik: Yalnızca takip ettiğiniz model sürümleri hakkında e-posta bildirimleri gönderin. Bu seçimle, takip ettiğiniz tüm model sürümleri için bildirimler alırsınız; belirli bir model sürümü için bildirimleri kapatamazsınız.
  • Bildirimlerin sesini kapat: Bu kayıtlı modeldeki etkinlikle ilgili e-posta bildirimleri göndermeyin.

Aşağıdaki olaylar bir e-posta bildirimi tetikler:

  • Yeni model sürümü oluşturma
  • Aşama geçişi isteği
  • Aşama geçişi
  • Yeni açıklamalar

Aşağıdakilerden herhangi birini yaptığınızda model bildirimlerine otomatik olarak abone olabilirsiniz:

  • Bu model sürümüyle ilgili açıklama
  • Model sürümünün aşamasını geçiş
  • Modelin aşaması için geçiş isteğinde bulunma

Model sürümünü takip ettiğinizi görmek için, model sürümü sayfasındaki Durumu takip et alanına veya kayıtlı model sayfasındaki model sürümleri tablosuna bakın.

Tüm e-posta bildirimlerini kapatma

Kullanıcı Ayarlar menüsünün Çalışma Alanı Modeli Kayıt Defteri Ayarlar sekmesinde e-posta bildirimlerini kapatabilirsiniz:

  1. Azure Databricks çalışma alanının sağ üst köşesinde kullanıcı adınıza tıklayın ve açılan menüden Ayarlar seçin.
  2. Ayarlar kenar çubuğunda Bildirimler'i seçin.
  3. Model Kayıt Defteri e-posta bildirimlerini kapatın.

Hesap yöneticisi, yönetici ayarları sayfasında kuruluşun tamamı için e-posta bildirimlerini kapatabilir.

Gönderilen e-posta sayısı üst sınırı

Çalışma Alanı Modeli Kayıt Defteri, etkinlik başına her kullanıcıya günlük olarak gönderilen e-posta sayısını sınırlar. Örneğin, kayıtlı bir model için oluşturulan yeni model sürümleri hakkında bir günde 20 e-posta alırsanız Çalışma Alanı Modeli Kayıt Defteri günlük sınıra ulaşıldığını belirten bir e-posta gönderir ve ertesi güne kadar bu olayla ilgili ek e-posta gönderilmez.

İzin verilen e-posta sayısı sınırını artırmak için Azure Databricks hesap ekibinize başvurun.

Web kancaları

Önemli

Bu özellik Genel Önizlemededir.

Web kancaları , tümleştirmelerinizin eylemleri otomatik olarak tetikleyebilmesi için Çalışma Alanı Modeli Kayıt Defteri olaylarını dinlemenizi sağlar. Makine öğrenmesi işlem hattınızı mevcut CI/CD araçları ve iş akışlarıyla otomatikleştirmek ve tümleştirmek için web kancalarını kullanabilirsiniz. Örneğin, yeni bir model sürümü oluşturulduğunda CI derlemelerini tetikleyebilir veya üretime her model geçişi istendiğinde Slack aracılığıyla ekip üyelerinizi bilgilendirebilirsiniz.

Modele veya model sürümüne not ekleme

Model veya model sürümü hakkında bilgi sağlamak için not ekleyebilirsiniz. Örneğin, soruna ilişkin bir genel bakış veya kullanılan metodoloji ve algoritmayla ilgili bilgi eklemek isteyebilirsiniz.

Kullanıcı arabirimini kullanarak modele veya model sürümüne not ekleme

Azure Databricks kullanıcı arabirimi, modellere ve model sürümlerine açıklama eklemenin çeşitli yollarını sağlar. Açıklama veya açıklama kullanarak metin bilgileri ekleyebilir ve aranabilir anahtar-değer etiketleri ekleyebilirsiniz. Modeller ve model sürümleri için açıklamalar ve etiketler mevcuttur; açıklamalar yalnızca model sürümleri için kullanılabilir.

  • Açıklamalar, model hakkında bilgi sağlamaya yöneliktir.
  • Açıklamalar, model sürümündeki etkinlikler hakkında devam eden bir tartışmanın sürdürülmesi için bir yol sağlar.
  • Etiketler, belirli modelleri bulmayı kolaylaştırmak için model meta verilerini özelleştirmenize olanak tanır.

Model veya model sürümü için açıklama ekleme veya güncelleştirme

  1. Kayıtlı model veya model sürümü sayfasında Açıklama'nın yanındaki Düzenle'ye tıklayın. Düzenleme penceresi görüntülenir.

  2. Düzenleme penceresinde açıklamayı girin veya düzenleyin.

  3. Değişikliklerinizi kaydetmek için Kaydet'e veya pencereyi kapatmak için İptal'e tıklayın.

    Model sürümünün açıklamasını girdiyseniz açıklama, kayıtlı model sayfasındaki tablodaki Açıklama sütununda görüntülenir. Sütunda en fazla 32 karakter veya bir metin satırı görüntülenir (hangisi daha kısaysa).

Model sürümü için açıklama ekleme

  1. Model sürümü sayfasını aşağı kaydırın ve Etkinlikler'in yanındaki aşağı oka tıklayın.
  2. Düzenleme penceresine açıklamanızı yazın ve Açıklama Ekle'ye tıklayın.

Model veya model sürümü için etiket ekleme

  1. Kayıtlı model veya model sürümü sayfasında, henüz açık değilse tıklayınEtiket simgesi. Etiketler tablosu görüntülenir.

    etiket tablosu

  2. Ad ve Değer alanlarına tıklayın ve etiketinizin anahtarını ve değerini yazın.

  3. Ekle'yi tıklatın.

    etiket ekle

Model veya model sürümü için etiketleri düzenleme veya silme

Mevcut bir etiketi düzenlemek veya silmek için Eylemler sütunundaki simgeleri kullanın.

etiket eylemleri

API’yi kullanarak model sürümüne not ekleme

Model sürümü açıklamasını güncelleştirmek için MLflow İstemci API’si update_model_version() yöntemini kullanın:

client = MlflowClient()
client.update_model_version(
  name="<model-name>",
  version=<model-version>,
  description="<description>"
)

Kayıtlı bir model veya model sürümü için etiket ayarlamak veya güncelleştirmek için MLflow İstemci API'sini set_registered_model_tag()) veya set_model_version_tag() yöntemini kullanın:

client = MlflowClient()
client.set_registered_model_tag()(
  name="<model-name>",
  key="<key-value>",
  tag="<tag-value>"
)
client = MlflowClient()
client.set_model_version_tag()(
  name="<model-name>",
  version=<model-version>,
  key="<key-value>",
  tag="<tag-value>"
)

Modeli yeniden adlandırma (yalnızca API)

Kayıtlı bir modeli yeniden adlandırmak için, MLflow İstemci API’si rename_registered_model() yöntemini kullanın:

client=MlflowClient()
client.rename_registered_model("<model-name>", "<new-model-name>")

Not

Kayıtlı bir modeli yalnızca sürümü yoksa veya tüm sürümler Yok veya Arşivlenmiş aşamasındaysa yeniden adlandırabilirsiniz.

Model arama

Kullanıcı arabirimini veya API'yi kullanarak Çalışma Alanı Modeli Kayıt Defteri'nde modelleri arayabilirsiniz.

Not

Bir modeli aradığınızda, yalnızca en az CAN READ izinlerine sahip olduğunuz modeller döndürülür.

Kullanıcı arabirimini kullanarak model arama

Kayıtlı modelleri görüntülemek için kenar çubuğundaKi Modeller'e tıklayınModeller Simgesine.

Belirli bir modeli aramak için arama kutusuna metin girin. Modelin adını veya adın herhangi bir bölümünü girebilirsiniz:

Kayıtlı modelleri arama

Etiketlerde de arama yapabilirsiniz. Etiketleri şu biçimde girin: tags.<key>=<value>. Birden çok etiket aramak için işlecini AND kullanın.

Etiket tabanlı arama

MLflow arama söz dizimini kullanarak hem model adını hem de etiketleri arayabilirsiniz. Örneğin:

Ad ve etiket tabanlı arama

API’yi kullanarak model arama

MLflow İstemci API yöntemi search_registered_models() ile Çalışma Alanı Modeli Kayıt Defteri'nde kayıtlı modelleri arayabilirsiniz

Modellerinizde etiketler ayarladıysanız, ile search_registered_models()bu etiketlere göre de arama yapabilirsiniz.

print(f"Find registered models with a specific tag value")
for m in client.search_registered_models(f"tags.`<key-value>`='<tag-value>'"):
  pprint(dict(m), indent=4)

Ayrıca, MLflow İstemci API’si search_model_versions() yöntemini kullanarak belirli bir model adını arayabilir ve sürüm ayrıntılarını listeleyebilirsiniz:

from pprint import pprint

client=MlflowClient()
[pprint(mv) for mv in client.search_model_versions("name='<model-name>'")]

Bu, şu çıkışı üretir:

{   'creation_timestamp': 1582671933246,
    'current_stage': 'Production',
    'description': 'A random forest model containing 100 decision trees '
                   'trained in scikit-learn',
    'last_updated_timestamp': 1582671960712,
    'name': 'sk-learn-random-forest-reg-model',
    'run_id': 'ae2cc01346de45f79a44a320aab1797b',
    'source': './mlruns/0/ae2cc01346de45f79a44a320aab1797b/artifacts/sklearn-model',
    'status': 'READY',
    'status_message': None,
    'user_id': None,
    'version': 1 }

{   'creation_timestamp': 1582671960628,
    'current_stage': 'None',
    'description': None,
    'last_updated_timestamp': 1582671960628,
    'name': 'sk-learn-random-forest-reg-model',
    'run_id': 'd994f18d09c64c148e62a785052e6723',
    'source': './mlruns/0/d994f18d09c64c148e62a785052e6723/artifacts/sklearn-model',
    'status': 'READY',
    'status_message': None,
    'user_id': None,
    'version': 2 }

Modeli veya model sürümünü silme

Kullanıcı arabirimini veya API’yi kullanarak bir modeli silebilirsiniz.

Kullanıcı arabirimini kullanarak model sürümünü veya modeli silme

Uyarı

Bu eylemi geri alamazsınız. Model sürümünü kayıt defterinden silmek yerine Arşivlenmiş aşamasına geçirebilirsiniz. Bir modeli sildiğinizde, Çalışma Alanı Modeli Kayıt Defteri tarafından depolanan tüm model yapıtları ve kayıtlı modelle ilişkili tüm meta veriler silinir.

Not

Yalnızca Yok veya Arşivlenmiş aşamasındaki modelleri ve model sürümlerini silebilirsiniz. Kayıtlı bir modelin Hazırlama veya Üretim aşamasında sürümleri varsa, modeli silmeden önce bunları Yok veya Arşivlenmiş aşamasına geçirin.

Model sürümünü silmek için:

  1. Kenar çubuğunda Modeller'e tıklayınModeller Simgesine.
  2. Model adına tıklayın.
  3. Model sürümüne tıklayın.
  4. Ekranın sağ üst köşesine tıklayın Model sürümünü silme ve açılan menüden Sil'i seçin.

Modeli silmek için:

  1. Kenar çubuğunda Modeller'e tıklayınModeller Simgesine.
  2. Model adına tıklayın.
  3. Ekranın sağ üst köşesine tıklayın Modeli silme ve açılan menüden Sil'i seçin.

API’yi kullanarak model sürümünü veya modeli silme

Uyarı

Bu eylemi geri alamazsınız. Model sürümünü kayıt defterinden silmek yerine Arşivlenmiş aşamasına geçirebilirsiniz. Bir modeli sildiğinizde, Çalışma Alanı Modeli Kayıt Defteri tarafından depolanan tüm model yapıtları ve kayıtlı modelle ilişkili tüm meta veriler silinir.

Not

Yalnızca Yok veya Arşivlenmiş aşamasındaki modelleri ve model sürümlerini silebilirsiniz. Kayıtlı bir modelin Hazırlama veya Üretim aşamasında sürümleri varsa, modeli silmeden önce bunları Yok veya Arşivlenmiş aşamasına geçirin.

Model sürümünü silme

Model sürümünü silmek için MLflow İstemci API’si delete_model_version() yöntemini kullanın:

# Delete versions 1,2, and 3 of the model
client = MlflowClient()
versions=[1, 2, 3]
for version in versions:
  client.delete_model_version(name="<model-name>", version=version)

Model silme

Modeli silmek için MLflow İstemci API’si delete_registered_model() yöntemini kullanın:

client = MlflowClient()
client.delete_registered_model(name="<model-name>")

Çalışma alanları arasında modelleri paylaşma

Databricks, çalışma alanları arasında modelleri paylaşmak için Unity Kataloğu'ndaki Modellerin kullanılmasını önerir. Unity Kataloğu çalışma alanları arası model erişimi, idare ve denetim günlüğü için kullanıma hazır destek sağlar.

Ancak, çalışma alanı modeli kayıt defterini kullanıyorsanız, bazı kurulumlarla modelleri birden çok çalışma alanında da paylaşabilirsiniz. Örneğin, bir modeli kendi çalışma alanınızda geliştirip günlüğe kaydedebilir ve ardından uzak çalışma alanı modeli kayıt defterini kullanarak başka bir çalışma alanından erişebilirsiniz. Bu, birden çok ekip modellere erişimi paylaşıyorsa yararlıdır. Birden çok çalışma alanı oluşturabilir ve bu ortamlardaki modelleri kullanabilir ve yönetebilirsiniz.

Çalışma alanları arasında MLflow nesnelerini kopyalama

MLflow nesnelerini Azure Databricks çalışma alanınıza veya çalışma alanınızdan içeri veya dışarı aktarmak için, çalışma alanları arasında MLflow denemelerini, modellerini ve çalıştırmalarını geçirmek için topluluk temelli açık kaynak MLflow Dışarı Aktarma-İçeri Aktarma projesini kullanabilirsiniz.

Bu araçlarla şunları yapabilirsiniz:

  • Aynı veya başka bir izleme sunucusundaki diğer veri bilimciler ile paylaşın ve işbirliği yapın. Örneğin, bir denemeyi başka bir kullanıcıdan çalışma alanınıza kopyalayabilirsiniz.
  • Bir modeli bir çalışma alanından diğerine,örneğin geliştirmeden üretim çalışma alanına kopyalayın.
  • MLflow denemelerini ve çalıştırmalarını yerel izleme sunucunuzdan Databricks çalışma alanınıza kopyalayın.
  • Görev açısından kritik denemeleri ve modelleri başka bir Databricks çalışma alanına yedekleyin.

Örnek

Bu örnekte, makine öğrenmesi uygulaması oluşturmak için Çalışma Alanı Modeli Kayıt Defteri'nin nasıl kullanılacağı gösterilmektedir.

Çalışma Alanı Modeli Kayıt Defteri örneği