Aracılığıyla paylaş


Öğretici: Özel model dağıtma ve sorgulama

Bu makalede, Unity Kataloğu'na yüklenen veya Azure Databricks model sunumunu kullanarak çalışma alanı modeli kayıt defterine kaydedilen geleneksel bir ML modeli olan özel modeli dağıtma ve sorgulamaya yönelik temel adımlar sağlanır.

Aşağıda, oluşturucu yapay zeka ve LLM için bir temel model sunma ve dağıtmayı açıklayan kılavuzlar yer alır:

1. Adım: Modeli model kayıt defterinde günlüğe kaydetme

Model sunma için modelinizi günlüğe kaydetmenin farklı yolları vardır:

Günlüğe kaydetme tekniği Açıklama
Otomatik kaydetme Bu, makine öğrenmesi için Databricks Runtime kullandığınızda otomatik olarak açılır. Bu en kolay yoldur, ancak size daha az denetim sağlar.
MLflow'un yerleşik tatlarını kullanarak günlüğe kaydetme MLflow'un yerleşik model tatlarıyla modeli el ile günlüğe kaydedebilirsiniz.
Ile özel günlük kaydı pyfunc Özel bir modeliniz varsa veya çıkarımdan önce veya sonra ek adımlara ihtiyacınız varsa bunu kullanın.

Aşağıdaki örnek, MLflow modelinizi flavor kullanarak günlüğe kaydetmeyi ve modeliniz için ihtiyacınız olan parametreleri belirtmeyi transformer gösterir.

with mlflow.start_run():
    model_info = mlflow.transformers.log_model(
        transformers_model=text_generation_pipeline,
        artifact_path="my_sentence_generator",
        inference_config=inference_config,
        registered_model_name='gpt2',
        input_example=input_example,
        signature=signature
    )

Modeliniz günlüğe kaydedildikten sonra modelinizin MLflow Unity Kataloğu'na veya Model Kayıt Defteri'ne kaydedildiğini kontrol edin.

2. Adım: Sunum Kullanıcı Arabirimini kullanarak uç nokta oluşturma

Kayıtlı modeliniz günlüğe kaydedildikten ve kullanıma hazır olduktan sonra, Sunma kullanıcı arabirimini kullanarak uç noktaya hizmet veren bir model oluşturabilirsiniz.

  1. Hizmet Verme kullanıcı arabirimini görüntülemek için kenar çubuğunda Sunma'ya tıklayın.

  2. Sunum uç noktası oluştur'a tıklayın.

    Databricks kullanıcı arabiriminde model sunma bölmesi

  3. Ad alanında uç noktanız için bir ad belirtin.

  4. Sunulan varlıklar bölümünde

    1. Sunulan varlığı seçin formunu açmak için Varlık alanına tıklayın.
    2. Hizmet vermek istediğiniz model türünü seçin. Form, seçiminize göre dinamik olarak güncelleştirilir.
    3. Hangi modele ve model sürümüne hizmet vermek istediğinizi seçin.
    4. Hizmet sunulan modelinize yönlendirecek trafik yüzdesini seçin.
    5. Kullanılacak boyut hesaplamasını seçin. İş yükleriniz için CPU veya GPU işlemleri kullanabilirsiniz. GPU'da sunulan model desteği Genel Önizleme aşamasındadır. Kullanılabilir GPU işlemleri hakkında daha fazla bilgi için bkz . GPU iş yükü türleri .
    6. İşlem Ölçeği Genişletme'nin altında, bu sunulan modelin aynı anda işleyebileceği istek sayısına karşılık gelen işlem ölçeği genişletme boyutunu seçin. Bu sayı yaklaşık olarak QPS x model yürütme süresine eşit olmalıdır.
      1. Kullanılabilir boyutlar 0-4 istekler için Küçük , Orta 8-16 istekleri ve 16-64 istekler için Büyük'tür .
    7. Uç noktanın kullanımda değilken sıfıra ölçeklendirilmesi gerekip gerekmediğini belirtin.
  5. Oluştur’a tıklayın. Sunum uç noktaları sayfası, Sunum uç noktası durumu Hazır Değil olarak gösterilir.

    Uç nokta sunan bir model oluşturma

Databricks Sunum API'siyle program aracılığıyla bir uç nokta oluşturmayı tercih ediyorsanız bkz . Uç noktaları sunan özel model oluşturma.

3. Adım: Uç noktayı sorgulama

Sunulan modelinize puanlama isteklerini test etmenin ve göndermenin en kolay ve en hızlı yolu, Sunma kullanıcı arabirimini kullanmaktır.

  1. Sunum uç noktası sayfasında Sorgu uç noktası'nı seçin.

  2. Model giriş verilerini JSON biçiminde ekleyin ve İstek Gönder'e tıklayın. Model giriş örneğiyle günlüğe kaydedildiyse, giriş örneğini yüklemek için Örneği Göster'e tıklayın.

       {
       "inputs" : ["Hello, I'm a language model,"],
       "params" : {"max_new_tokens": 10, "temperature": 1}
       }
    

Puanlama istekleri göndermek için desteklenen anahtarlardan biriyle bir JSON ve giriş biçimine karşılık gelen bir JSON nesnesi oluşturun. Desteklenen biçimler ve API kullanarak puanlama istekleri gönderme yönergeleri için bkz . Özel modeller için sorgu sunma uç noktaları.

Azure Databricks Sunma kullanıcı arabirimi dışında hizmet veren uç noktanıza erişmeyi planlıyorsanız, bir DATABRICKS_API_TOKENgerekir.

Önemli

Databricks, üretim senaryoları için en iyi güvenlik uygulaması olarak üretim sırasında kimlik doğrulaması için makineden makineye OAuth belirteçleri kullanmanızı önerir.

Databricks, test ve geliştirme için çalışma alanı kullanıcıları yerine hizmet sorumlularına ait bir kişisel erişim belirteci kullanılmasını önerir. Hizmet sorumlularına yönelik belirteçler oluşturmak için bkz . Hizmet sorumlusu için belirteçleri yönetme.

Örnek not defterleri

Model Sunma ile MLflow transformers modeli sunma için aşağıdaki not defterine bakın.

Sarılan Yüz Tanıma transformers modeli not defteri dağıtma

Not defterini alma

Model Sunma ile MLflow pyfunc modeli sunma için aşağıdaki not defterine bakın. Model dağıtımlarınızı özelleştirme hakkında ek ayrıntılar için bkz . Model Sunma ile Python kodu dağıtma.

MLflow pyfunc modeli not defteri dağıtma

Not defterini alma