Aracılığıyla paylaş


modelleri izlemek ve hata ayıklamak için çıkarım tabloları

Önemli

Bu özellik Genel Önizlemededir.

Bu makalede, sunulan modelleri izlemeye yönelik çıkarım tabloları açıklanmaktadır. Aşağıdaki diyagramda çıkarım tablolarına sahip tipik bir iş akışı gösterilmektedir. Çıkarım tablosu, uç noktaya hizmet veren bir model için gelen istekleri ve giden yanıtları otomatik olarak yakalar ve bunları Unity Kataloğu Delta tablosu olarak günlüğe kaydeder. ML modellerini izlemek, hatalarını ayıklamak ve iyileştirmek için bu tablodaki verileri kullanabilirsiniz.

Çıkarım tabloları iş akışı

Çıkarım tabloları nedir?

Üretim iş akışlarında modellerin performansını izlemek, yapay zeka ve ML modeli yaşam döngüsünün önemli bir yönüdür. Çıkarım Tabloları, Databricks Model Sunum uç noktalarındaki istek girişlerini ve yanıtlarını (tahminleri) sürekli günlüğe kaydederek ve bunları Unity Kataloğu'ndaki Delta tablosuna kaydederek modellerin izlenmesini ve tanılamasını basitleştirir. Daha sonra modellerinizi izlemek, hatalarını ayıklamak ve iyileştirmek için DBSQL sorguları, not defterleri ve Lakehouse İzleme gibi Databricks platformunun tüm özelliklerini kullanabilirsiniz.

Var olan veya yeni oluşturulan herhangi bir modelde uç noktaya hizmet veren çıkarım tablolarını etkinleştirebilirsiniz ve bu uç noktaya yönelik istekler UC'deki bir tabloya otomatik olarak kaydedilir.

Çıkarım tabloları için bazı yaygın uygulamalar şunlardır:

  • Veri ve model kalitesini izleme. Lakehouse İzleme'yi kullanarak model performansınızı ve veri kaymalarınızı sürekli izleyebilirsiniz. Lakehouse İzleme, paydaşlarla paylaşabileceğiniz veri ve model kalitesi panolarını otomatik olarak oluşturur. Buna ek olarak, gelen verilerdeki vardiyalara veya model performansındaki düşüşlere göre modelinizi yeniden eğitmeniz gerektiğinde uyarıların bilinmesini sağlayabilirsiniz.
  • Üretim sorunlarının hatalarını ayıkla. Çıkarım Tabloları HTTP durum kodları, model yürütme süreleri ve istek ve yanıt JSON kodu gibi verileri günlüğe kaydeder. Bu performans verilerini hata ayıklama amacıyla kullanabilirsiniz. Geçmiş isteklerdeki model performansını karşılaştırmak için Çıkarım Tablolarındaki geçmiş verileri de kullanabilirsiniz.
  • Eğitim corpus'u oluşturun. Çıkarım Tablolarını temel gerçeklik etiketleriyle birleştirerek modelinizi yeniden eğitmek veya ince ayar yapmak ve geliştirmek için kullanabileceğiniz bir eğitim corpus'u oluşturabilirsiniz. Databricks İş Akışlarını kullanarak sürekli bir geri bildirim döngüsü ayarlayabilir ve yeniden eğitimi otomatikleştirebilirsiniz.

Gereksinim -leri

  • Çalışma alanınızda Unity Kataloğu etkinleştirilmiş olmalıdır.
  • Hem uç nokta oluşturucusunun hem de değiştiricinin uç nokta üzerinde Yönetebilir izni olmalıdır. Bkz. Erişim denetim listeleri.
  • Hem uç noktanın oluşturucusunun hem de değiştiricinin Unity Kataloğu'nda aşağıdaki izinlere sahip olması gerekir:
    • USE CATALOG belirtilen katalog üzerindeki izinler.
    • USE SCHEMA belirtilen şema üzerindeki izinler.
    • CREATE TABLE şemadaki izinler.

Çıkarım tablolarını etkinleştirme ve devre dışı bırakma

Bu bölümde Databricks kullanıcı arabirimini kullanarak çıkarım tablolarını etkinleştirme veya devre dışı bırakma adımları gösterilmektedir. API'yi de kullanabilirsiniz; Yönergeler için bkz . API'yi kullanarak uç noktaları sunan modelde çıkarım tablolarını etkinleştirme.

Çıkarım tablolarının sahibi, uç noktayı oluşturan kullanıcıdır. Tablodaki tüm erişim denetim listeleri (ACL' ler) standart Unity Kataloğu izinlerini izler ve tablo sahibi tarafından değiştirilebilir.

Uyarı

Aşağıdakilerden birini yaparsanız çıkarım tablosu bozulabilir:

  • Tablo şemasını değiştirin.
  • Tablo adını değiştirin.
  • Tabloyu silin.
  • Unity Kataloğu kataloğuna veya şemasına yönelik izinleri kaybedersiniz.

Bu durumda uç nokta durumu, auto_capture_config yük tablosu için bir FAILED durum gösterir. Böyle bir durumda çıkarım tablolarını kullanmaya devam etmek için yeni bir uç nokta oluşturmanız gerekir.

Uç nokta oluşturma sırasında çıkarım tablolarını etkinleştirmek için aşağıdaki adımları kullanın:

  1. Databricks Machine Learning kullanıcı arabiriminde Sunma'ya tıklayın.

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

  3. Çıkarım tablolarını etkinleştir'i seçin.

  4. Açılan menülerde, tablonun yer almak istediğiniz kataloğu ve şemayı seçin.

    çıkarım tablosu için katalog ve şema

  5. Varsayılan tablo adıdır <catalog>.<schema>.<endpoint-name>_payload. İsterseniz, özel bir tablo ön eki girebilirsiniz.

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

Çıkarım tablolarını mevcut bir uç noktada da etkinleştirebilirsiniz. Mevcut uç nokta yapılandırmasını düzenlemek için aşağıdakileri yapın:

  1. Uç nokta sayfanıza gidin.
  2. Yapılandırmayı düzenle'ye tıklayın.
  3. 3. adımdan başlayarak önceki yönergeleri izleyin.
  4. İşiniz bittiğinde Hizmet sunma uç noktasını güncelleştir'e tıklayın.

Çıkarım tablolarını devre dışı bırakmak için şu yönergeleri izleyin:

Önemli

Bir uç noktada çıkarım tablolarını devre dışı bırakırsanız, bunları yeniden etkinleştiremezsiniz. Çıkarım tablolarını kullanmaya devam etmek için yeni bir uç nokta oluşturmanız ve çıkarım tablolarını etkinleştirmeniz gerekir.

  1. Uç nokta sayfanıza gidin.
  2. Yapılandırmayı düzenle'ye tıklayın.
  3. Onay işaretini kaldırmak için Çıkarım tablosunu etkinleştir'e tıklayın.
  4. Uç nokta belirtimlerinden memnun olduğunuzda Güncelleştir'e tıklayın.

İş Akışı: Çıkarım tablolarını kullanarak model performansını izleme

Çıkarım tablolarını kullanarak model performansını izlemek için şu adımları izleyin:

  1. Uç nokta oluşturma sırasında veya daha sonra güncelleştirerek uç noktanızda çıkarım tablolarını etkinleştirin.
  2. Çıkarım tablosundaki JSON yüklerini uç nokta şemasına göre paketten çıkararak işlemek için bir iş akışı zamanlayın.
  3. (İsteğe bağlı) Model kalitesi ölçümlerinin hesaplanması için paketlenmemiş istekleri ve yanıtları ground-truth etiketleriyle birleştirin.
  4. Elde edilen Delta tablosu üzerinde bir izleyici oluşturun ve ölçümleri yenileyin.

Başlangıç not defterleri bu iş akışını uygular.

Çıkarım tablosunu izlemek için başlangıç not defteri

Aşağıdaki not defteri, bir Lakehouse monitoring çıkarım tablosundan gelen isteklerin paketini açmak için yukarıda özetlenen adımları uygular. Not defteri isteğe bağlı olarak veya Databricks İş Akışları kullanılarak yinelenen bir zamanlamaya göre çalıştırılabilir.

Çıkarım tablosu Lakehouse İzleme başlangıç not defteri

Not defterini alma

LLM'lere hizmet veren uç noktalardan metin kalitesini izlemek için başlangıç not defteri

Aşağıdaki not defteri bir çıkarım tablosundan istekleri açar, bir dizi metin değerlendirme ölçümünü (okunabilirlik ve toksisite gibi) hesaplar ve bu ölçümler üzerinde izlemeyi etkinleştirir. Not defteri isteğe bağlı olarak veya Databricks İş Akışları kullanılarak yinelenen bir zamanlamaya göre çalıştırılabilir.

LLM çıkarım tablosu Lakehouse İzleme başlangıç not defteri

Not defterini alma

Çıkarım tablosunda sonuçları sorgulama ve analiz etme

Sunulan modelleriniz hazır olduktan sonra modellerinize yapılan tüm istekler yanıtlarla birlikte çıkarım tablosuna otomatik olarak kaydedilir. Tabloyu kullanıcı arabiriminde görüntüleyebilir, DBSQL'den veya not defterinden sorgulayabilir veya REST API'yi kullanarak tabloyu sorgulayabilirsiniz.

Tabloyu kullanıcı arabiriminde görüntülemek için: Uç nokta sayfasında, çıkarım tablosunun adına tıklayarak tabloyu Katalog Gezgini'nde açın.

uç nokta sayfasındaki çıkarım tablosu adına bağlantı

TABLOYU DBSQL'den veya Databricks not defterinden sorgulamak için: Çıkarım tablosunu sorgulamak için aşağıdakine benzer bir kod çalıştırabilirsiniz.

SELECT * FROM <catalog>.<schema>.<payload_table>

Kullanıcı arabirimini kullanarak çıkarım tablolarını etkinleştirdiyseniz, payload_table uç noktayı oluştururken atadığınız tablo adıdır. API'yi kullanarak çıkarım tablolarını etkinleştirdiyseniz, payload_table yanıtın stateauto_capture_config bölümünde bildirilir. Örnek için bkz . API kullanarak uç noktaları sunan modelde çıkarım tablolarını etkinleştirme.

Performans notu

Uç noktayı çağırdıktan sonra, puanlama isteği gönderdikten sonra 10 dakika içinde çıkarım tablonuzda günlüğe kaydedilen çağrıyı görebilirsiniz. Ayrıca Azure Databricks, günlük teslimin en az bir kez gerçekleşmesini garanti eder, bu nedenle yinelenen günlüklerin gönderilmesi olası olmasa da mümkündür.

Unity Kataloğu çıkarım tablosu şeması

Çıkarım tablosuna günlüğe kaydedilen her istek ve yanıt aşağıdaki şemaya sahip bir Delta tablosuna yazılır:

Not

Uç noktayı bir giriş toplu işlemiyle çağırırsanız, toplu işin tamamı tek satır olarak günlüğe kaydedilir.

Sütun adı Açıklama Tür
databricks_request_id Azure Databricks tarafından oluşturulan ve tüm model sunum isteklerine eklenmiş istek tanımlayıcısı. DİZGİ
client_request_id model sunum isteği gövdesinde belirtilebilen isteğe bağlı bir istemci tarafından oluşturulan istek tanımlayıcısı. Daha fazla bilgi için bkz . Belirtme client_request_id . DİZGİ
date Model sunum isteğinin alındığı UTC tarihi. DATE
timestamp_ms Model sunma isteğinin ne zaman alındığına ilişkin dönem milisaniye cinsinden zaman damgası. UZUN
status_code Modelden döndürülen HTTP durum kodu. INT
sampling_fraction İsteğin aşağı örneklenmiş olması durumunda kullanılan örnekleme kesri. Bu değer 0 ile 1 arasındadır ve burada 1 gelen isteklerin %100'ünün dahil olduğunu gösterir. ÇİFT
execution_time_ms Modelin çıkarım gerçekleştirdiği milisaniye cinsinden yürütme süresi. Bu ek yük ağ gecikme sürelerini içermez ve yalnızca modelin tahmin oluşturma süresini temsil eder. UZUN
request Uç noktaya hizmet veren modele gönderilen ham istek JSON gövdesi. DİZGİ
response Uç noktaya hizmet veren model tarafından döndürülen ham yanıt JSON gövdesi. DİZGİ
request_metadata İstekle ilişkili uç nokta sunan modelle ilgili meta verilerin haritası. Bu eşleme uç noktanız için kullanılan uç nokta adını, model adını ve model sürümünü içerir. MAP<STRING, STRING>

Belirtmek client_request_id

Bu client_request_id alan, kullanıcının istek gövdesine hizmet veren modelde sağlayabileceğiniz isteğe bağlı bir değerdir. Bu, kullanıcının altındaki son çıkarım tablosunda görünen bir istek için kendi tanımlayıcısını sağlamasına client_request_id olanak tanır ve isteğinizi temel gerçeklik etiketi birleştirme gibi kullanan client_request_iddiğer tablolarla birleştirmek için kullanılabilir. client_request_idbelirtmek için, istek yükünün en üst düzey anahtarı olarak değerini ekleyin. Belirtilmezse client_request_id , değer isteğe karşılık gelen satırda null olarak görünür.

{
  "client_request_id": "<user-provided-id>",
  "dataframe_records": [
    {
      "sepal length (cm)": 5.1,
      "sepal width (cm)": 3.5,
      "petal length (cm)": 1.4,
      "petal width (cm)": 0.2
    },
    {
      "sepal length (cm)": 4.9,
      "sepal width (cm)": 3,
      "petal length (cm)": 1.4,
      "petal width (cm)": 0.2
    },
    {
      "sepal length (cm)": 4.7,
      "sepal width (cm)": 3.2,
      "petal length (cm)": 1.3,
      "petal width (cm)": 0.2
    }
  ]
}

ile client_request_id ilişkili client_request_idetiketleri olan başka tablolar varsa, daha sonra temel gerçeklik etiketi birleşimleri için kullanılabilir.

Sınırlamalar

  • Müşteri tarafından yönetilen anahtarlar desteklenmez.
  • Temel modelleri barındıran uç noktalar için çıkarım tabloları yalnızca sağlanan aktarım hızı iş yüklerinde desteklenir.
  • Çıkarım tabloları, dış modelleri barındıran uç noktalarda desteklenmez.
  • Azure Güvenlik Duvarı Unity Kataloğu Delta tablosunu oluşturma hatalarına neden olabilir, bu nedenle varsayılan olarak desteklenmez. Etkinleştirmek için Databricks hesap ekibinize ulaşın.
  • Çıkarım tabloları etkinleştirildiğinde, tek bir uç noktada sunulan tüm modellerde toplam maksimum eşzamanlılık sınırı 128'dir. Bu sınıra bir artış istemek için Azure Databricks hesap ekibinize ulaşın.
  • Çıkarım tablosunda 500.000'den fazla dosya varsa, ek veri günlüğe kaydedilmez. Bu sınırı aşmamak için, daha eski verileri silerek OPTIMIZE komutunu çalıştırın veya tablonuzda bekletmeyi ayarlayın. Tablonuzdaki dosya sayısını denetlemek için komutunu çalıştırın DESCRIBE DETAIL <catalog>.<schema>.<payload_table>.

Genel model sunma uç noktası sınırlamaları için bkz . Model Sunma sınırları ve bölgeleri.