Bagikan melalui


Tabel inferensi untuk model pemantauan dan penelusuran kesalahan

Penting

Fitur ini ada di Pratinjau Publik.

Artikel ini menjelaskan tabel inferensi untuk memantau model yang dilayani. Diagram berikut menunjukkan alur kerja umum dengan tabel inferensi. Tabel inferensi secara otomatis mengambil permintaan masuk dan respons keluar untuk model yang melayani titik akhir dan mencatatnya sebagai tabel Delta Katalog Unity. Anda dapat menggunakan data dalam tabel ini untuk memantau, men-debug, dan meningkatkan model ML.

Alur kerja tabel inferensi

Apa itu tabel inferensi?

Memantau performa model dalam alur kerja produksi adalah aspek penting dari siklus hidup model AI dan ML. Tabel Inferensi menyederhanakan pemantauan dan diagnostik untuk model dengan terus mencatat input permintaan dan respons (prediksi) dari Titik akhir Penyajian Model Databricks dan menyimpannya ke dalam tabel Delta di Unity Catalog. Anda kemudian dapat menggunakan semua kemampuan platform Databricks, seperti kueri DBSQL, notebook, dan Pemantauan Lakehouse untuk memantau, men-debug, dan mengoptimalkan model Anda.

Anda dapat mengaktifkan tabel inferensi pada model yang sudah ada atau yang baru dibuat yang melayani titik akhir, dan permintaan ke titik akhir tersebut kemudian secara otomatis dicatat ke tabel di UC.

Beberapa aplikasi umum untuk tabel inferensi adalah sebagai berikut:

  • Memantau data dan kualitas model. Anda dapat terus memantau performa model dan penyimpangan data menggunakan Pemantauan Lakehouse. Pemantauan Lakehouse secara otomatis menghasilkan dasbor kualitas data dan model yang dapat Anda bagikan dengan pemangku kepentingan. Selain itu, Anda dapat mengaktifkan pemberitahuan untuk mengetahui kapan Anda perlu melatih kembali model Anda berdasarkan pergeseran dalam data masuk atau pengurangan performa model.
  • Men-debug masalah produksi. Data log Tabel Inferensi seperti kode status HTTP, waktu eksekusi model, dan kode JSON permintaan dan respons. Anda dapat menggunakan data performa ini untuk tujuan penelusuran kesalahan. Anda juga dapat menggunakan data historis dalam Tabel Inferensi untuk membandingkan performa model pada permintaan historis.
  • Buat korpus pelatihan. Dengan menggabungkan Tabel Inferensi dengan label kebenaran dasar, Anda dapat membuat korpus pelatihan yang dapat Anda gunakan untuk melatih kembali atau menyempurnakan dan meningkatkan model Anda. Dengan menggunakan Alur Kerja Databricks, Anda dapat menyiapkan perulangan umpan balik berkelanjutan dan mengotomatiskan pelatihan ulang.

Persyaratan

  • Ruang kerja Anda harus mengaktifkan Katalog Unity.
  • Pembuat titik akhir dan pengubah harus memiliki izin Dapat Mengelola pada titik akhir. Lihat Daftar kontrol akses.
  • Pembuat titik akhir dan pengubah harus memiliki izin berikut di Katalog Unity:
    • USE CATALOG izin pada katalog yang ditentukan.
    • USE SCHEMA izin pada skema yang ditentukan.
    • CREATE TABLE izin dalam skema.

Mengaktifkan dan menonaktifkan tabel inferensi

Bagian ini memperlihatkan kepada Anda cara mengaktifkan atau menonaktifkan tabel inferensi menggunakan UI Databricks. Anda juga dapat menggunakan API; lihat Mengaktifkan tabel inferensi pada model yang melayani titik akhir menggunakan API untuk instruksi.

Pemilik tabel inferensi adalah pengguna yang membuat titik akhir. Semua daftar kontrol akses (ACL) pada tabel mengikuti izin Katalog Unity standar dan dapat dimodifikasi oleh pemilik tabel.

Peringatan

Tabel inferensi bisa menjadi rusak jika Anda melakukan salah satu hal berikut:

  • Ubah skema tabel.
  • Ubah nama tabel.
  • Hapus tabel.
  • Kehilangan izin ke katalog atau skema Katalog Unity.

Dalam hal ini, auto_capture_config status titik akhir menunjukkan status FAILED untuk tabel payload. Jika ini terjadi, Anda harus membuat titik akhir baru untuk terus menggunakan tabel inferensi.

Untuk mengaktifkan tabel inferensi selama pembuatan titik akhir, gunakan langkah-langkah berikut:

  1. Klik Melayani di antarmuka pengguna Databricks Pembelajaran Mesin.

  2. Klik Buat titik akhir penayangan.

  3. Pilih Aktifkan tabel inferensi.

  4. Di menu drop-down, pilih katalog dan skema yang diinginkan tempat Anda ingin tabel berada.

    katalog dan skema untuk tabel inferensi

  5. Nama tabel default adalah <catalog>.<schema>.<endpoint-name>_payload. Jika diinginkan, Anda dapat memasukkan awalan tabel kustom.

  6. Klik Buat titik akhir penayangan.

Anda juga dapat mengaktifkan tabel inferensi pada titik akhir yang ada. Untuk mengedit konfigurasi titik akhir yang sudah ada, lakukan hal berikut:

  1. Navigasi ke halaman titik akhir Anda.
  2. Klik Edit konfigurasi.
  3. Ikuti instruksi sebelumnya, dimulai dengan langkah 3.
  4. Setelah selesai, klik Perbarui titik akhir penayangan.

Ikuti instruksi berikut untuk menonaktifkan tabel inferensi:

Penting

Saat Anda menonaktifkan tabel inferensi pada titik akhir, Anda tidak dapat mengaktifkannya kembali. Untuk terus menggunakan tabel inferensi, Anda harus membuat titik akhir baru dan mengaktifkan tabel inferensi di dalamnya.

  1. Navigasi ke halaman titik akhir Anda.
  2. Klik Edit konfigurasi.
  3. Klik Aktifkan tabel inferensi untuk menghapus tanda centang.
  4. Setelah Anda puas dengan spesifikasi titik akhir, klik Perbarui.

Alur kerja: Memantau performa model menggunakan tabel inferensi

Untuk memantau performa model menggunakan tabel inferensi, ikuti langkah-langkah berikut:

  1. Aktifkan tabel inferensi pada titik akhir Anda, baik selama pembuatan titik akhir atau dengan memperbaruinya setelahnya.
  2. Jadwalkan alur kerja untuk memproses payload JSON dalam tabel inferensi dengan membongkarnya sesuai dengan skema titik akhir.
  3. (Opsional) Gabungkan permintaan dan respons yang tidak dikemas dengan label kebenaran dasar untuk memungkinkan metrik kualitas model dihitung.
  4. Buat monitor di atas tabel Delta yang dihasilkan dan refresh metrik.

Buku catatan pemula mengimplementasikan alur kerja ini.

Buku catatan pemula untuk memantau tabel inferensi

Notebook berikut menerapkan langkah-langkah yang diuraikan di atas untuk membongkar permintaan dari tabel inferensi Lakehouse Monitoring. Notebook dapat dijalankan sesuai permintaan, atau pada jadwal berulang menggunakan Alur Kerja Databricks.

Buku catatan permulaan Pemantauan Lakehouse tabel inferensi

Dapatkan buku catatan

Buku catatan pemula untuk memantau kualitas teks dari titik akhir yang melayani LLM

Buku catatan berikut membongkar permintaan dari tabel inferensi, menghitung serangkaian metrik evaluasi teks (seperti keterbacaan dan toksisitas), dan memungkinkan pemantauan atas metrik ini. Notebook dapat dijalankan sesuai permintaan, atau pada jadwal berulang menggunakan Alur Kerja Databricks.

Notebook starter pemantauan tabel inferensi LLM Lakehouse

Dapatkan buku catatan

Mengkueri dan menganalisis hasil dalam tabel inferensi

Setelah model yang dilayani siap, semua permintaan yang dibuat untuk model Anda dicatat secara otomatis ke tabel inferensi, bersama dengan respons. Anda bisa menampilkan tabel di UI, mengkueri tabel dari DBSQL atau buku catatan, atau mengkueri tabel menggunakan REST API.

Untuk menampilkan tabel di UI: Pada halaman titik akhir, klik nama tabel inferensi untuk membuka tabel di Catalog Explorer.

tautan ke nama tabel inferensi pada halaman titik akhir

Untuk mengkueri tabel dari DBSQL atau buku catatan Databricks: Anda bisa menjalankan kode yang mirip dengan yang berikut ini untuk mengkueri tabel inferensi.

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

Jika Anda mengaktifkan tabel inferensi menggunakan UI, payload_table adalah nama tabel yang Anda tetapkan saat membuat titik akhir. Jika Anda mengaktifkan tabel inferensi menggunakan API, payload_table dilaporkan di bagian stateauto_capture_config respons. Misalnya, lihat Mengaktifkan tabel inferensi pada model yang melayani titik akhir menggunakan API.

Catatan performa

Setelah memanggil titik akhir, Anda dapat melihat pemanggilan dicatat ke tabel inferensi Anda dalam waktu 10 menit setelah mengirim permintaan penilaian. Selain itu, Azure Databricks menjamin pengiriman log terjadi setidaknya sekali, sehingga mungkin, meskipun tidak mungkin, log duplikat tersebut dikirim.

Skema tabel inferensi Katalog Unity

Setiap permintaan dan respons yang dicatat ke tabel inferensi ditulis ke tabel Delta dengan skema berikut:

Catatan

Jika Anda memanggil titik akhir dengan batch input, seluruh batch dicatat sebagai satu baris.

Nama kolom Deskripsi Jenis
databricks_request_id Pengidentifikasi permintaan yang dihasilkan Azure Databricks yang dilampirkan ke semua permintaan penyajian model. STRING
client_request_id Pengidentifikasi permintaan opsional yang dihasilkan klien yang dapat ditentukan dalam model yang melayani isi permintaan. Lihat Menentukan client_request_id untuk informasi selengkapnya. STRING
date Tanggal UTC saat model melayani permintaan diterima. TANGGAL
timestamp_ms Tanda waktu dalam milidetik epoch pada saat model melayani permintaan diterima. LONG
status_code Kode status HTTP yang dikembalikan dari model. INT
sampling_fraction Fraksi pengambilan sampel yang digunakan jika permintaan di-down-sample. Nilai ini antara 0 dan 1, di mana 1 mewakili bahwa 100% permintaan masuk disertakan. DOUBLE
execution_time_ms Waktu eksekusi dalam milidetik yang modelnya melakukan inferensi. Ini tidak termasuk latensi jaringan overhead dan hanya mewakili waktu yang diperlukan model untuk menghasilkan prediksi. LONG
request Isi JSON permintaan mentah yang dikirim ke model yang melayani titik akhir. STRING
response Isi JSON respons mentah yang dikembalikan oleh model yang melayani titik akhir. STRING
request_metadata Peta metadata yang terkait dengan model yang melayani titik akhir yang terkait dengan permintaan. Peta ini berisi nama titik akhir, nama model, dan versi model yang digunakan untuk titik akhir Anda. STRING PETA<, STRING>

Menentukan client_request_id

Bidang client_request_id adalah nilai opsional yang dapat diberikan pengguna dalam model yang melayani isi permintaan. Hal ini memungkinkan pengguna untuk memberikan pengidentifikasi mereka sendiri untuk permintaan yang muncul di tabel inferensi akhir di bawah client_request_id dan dapat digunakan untuk menggabungkan permintaan Anda dengan tabel lain yang menggunakan client_request_id, seperti bergabung dengan label kebenaran dasar. Untuk menentukan client_request_id, sertakan sebagai kunci tingkat atas payload permintaan. Jika tidak client_request_id ditentukan, nilai muncul sebagai null di baris yang sesuai dengan permintaan.

{
  "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
    }
  ]
}

Nantinya client_request_id dapat digunakan untuk gabungan label kebenaran dasar jika ada tabel lain yang memiliki label yang terkait dengan client_request_id.

Batasan

  • Kunci yang dikelola pelanggan tidak didukung.
  • Untuk titik akhir yang menghosting model fondasi, tabel inferensi hanya didukung pada beban kerja throughput yang disediakan.
  • Tabel inferensi tidak didukung pada titik akhir yang menghosting model eksternal.
  • Azure Firewall dapat mengakibatkan kegagalan untuk membuat tabel Delta Katalog Unity, jadi tidak didukung secara default. Hubungi tim akun Databricks Anda untuk mengaktifkannya.
  • Saat tabel inferensi diaktifkan, batas untuk total konkurensi maks di semua model yang dilayani dalam satu titik akhir adalah 128. Hubungi tim akun Azure Databricks Anda untuk meminta peningkatan batas ini.
  • Jika tabel inferensi berisi lebih dari 500K file, tidak ada data tambahan yang dicatat. Untuk menghindari melebihi batas ini, jalankan OPTIMIZE atau siapkan retensi pada tabel Anda dengan menghapus data yang lebih lama. Untuk memeriksa jumlah file dalam tabel Anda, jalankan DESCRIBE DETAIL <catalog>.<schema>.<payload_table>.

Untuk model umum yang melayani batasan titik akhir, lihat Batas dan wilayah Layanan Model.