All Products
Search
Document Center

Realtime Compute for Apache Flink:Memanggil layanan inferensi Triton

Last Updated:May 21, 2026

Topik ini menjelaskan cara mendaftarkan model yang dideploy pada NVIDIA Triton Inference Server dalam pekerjaan Flink.

Latar Belakang

Mulai versi mesin VVR 11.7, Realtime Compute for Apache Flink mendukung pendaftaran model yang dideploy pada NVIDIA Triton Inference Server menggunakan pernyataan CREATE MODEL. Anda kemudian dapat menggunakan fungsi ML_PREDICT dalam pekerjaan SQL untuk melakukan inferensi model pada aliran data real-time.

NVIDIA Triton Inference Server adalah layanan inferensi open-source berkinerja tinggi dari NVIDIA yang mendukung berbagai framework model, seperti TensorFlow, PyTorch, ONNX, dan TensorRT. Anda dapat menggunakan layanan Triton yang dikelola sendiri atau mendeploynya melalui Elastic Algorithm Service (EAS) pada Platform for AI (PAI). Untuk informasi lebih lanjut tentang cara mendeploy layanan Triton pada PAI-EAS, lihat Deploy layanan menggunakan image Triton Inference Server.

Catatan penggunaan

  • Fitur ini hanya didukung pada versi mesin VVR 11.7 dan yang lebih baru.

  • Permintaan ke NVIDIA Triton Inference Server yang dideploy secara eksternal dikirim melalui internet publik dan memerlukan akses jaringan publik.

  • Jika NVIDIA Triton Inference Server dideploy pada platform PAI, permintaan dikirim melalui jaringan pribadi dan tidak memerlukan akses jaringan publik. Untuk informasi lebih lanjut tentang cara memperoleh titik akhir, lihat bagian FAQ.

  • Sumber daya server Triton, kondisi jaringan, dan kinerja model memengaruhi throughput inferensi model. Jika layanan Triton mengalami beban berlebih atau dikenai Pembatasan laju, pekerjaan Flink mungkin mengalami back pressure sehingga operator inferensi menjadi bottleneck. Pembatasan laju yang parah dapat menyebabkan timeout operator dan restart pekerjaan.

Sintaksis

CREATE MODEL [catalog_name.][db_name.]model_name
INPUT (
  input_column input_type
)
OUTPUT (
  output_column output_type
)
WITH (
  'provider' = 'triton',
  'endpoint' = '<endpoint>',
  'auth-token' = '<authentication_token>'
  'model-name' = '<model_name>',
  'model-version' = '<model_version>'
);

Dengan parameter

Parameter umum

Parameter

Deskripsi

Jenis

Wajib

Bawaan

Catatan

provider

Jenis layanan model.

String

Ya

Tidak ada

Nilainya harus triton.

endpoint

Titik akhir HTTP server Triton.

String

Ya

Tidak ada

Anda harus memastikan konektivitas jaringan antara ruang kerja Realtime Compute for Apache Flink dan layanan Triton. Untuk informasi lebih lanjut, lihat Opsi koneksi jaringan. Jika Anda mendeploy layanan Triton menggunakan PAI-EAS, Anda dapat memperoleh titik akhir dari informasi pemanggilan layanan pada halaman layanan inferensi model di Konsol PAI.

model-name

Nama model pada server Triton.

String

Ya

Tidak ada

Nama ini harus sesuai dengan nama model dalam repositori model Triton.

model-version

Versi model Triton.

String

Tidak

latest

Anda dapat menentukan versi tertentu, misalnya 1.

timeout

Timeout untuk permintaan HTTP.

Durasi

Tidak

30s

Timeout ini berlaku untuk operasi koneksi, baca, dan tulis. Anda dapat menentukan nilainya dalam format durasi, seperti 10s atau 30000ms.

flatten-batch-dim

Apakah dimensi batch dari input array diratakan.

Boolean

Tidak

false

Secara bawaan, bentuk input array adalah [1, N]. Jika parameter ini diatur ke true, bentuknya menjadi [N]. Gunakan opsi ini ketika model Triton mengharapkan input satu dimensi.

priority

Prioritas permintaan.

Integer

Tidak

Tidak ada

Nilai valid berkisar dari 0 hingga 255. Nilai yang lebih besar menunjukkan prioritas yang lebih tinggi. Nilai ini diteruskan ke parameter permintaan Triton.

compression

Algoritma kompresi untuk badan permintaan.

String

Tidak

Tidak ada

Saat ini, hanya gzip yang didukung.

auth-token

Token otentikasi untuk model Triton.

String

Tidak

Tidak ada

Mengonfigurasi parameter ini akan menambahkan header Authorization: Bearer <auth-token> ke permintaan. Jika Anda mendeploy layanan Triton menggunakan PAI-EAS, Anda dapat memperoleh token dari informasi pemanggilan layanan pada halaman layanan inferensi model di Konsol PAI.

custom-headers

Header permintaan HTTP kustom.

Map

Tidak

Tidak ada

Contoh: 'X-Trace-Id:abc,Authorization:token'.

Parameter Model Stateful

Parameter berikut berlaku untuk model stateful Triton, seperti RNN dan LSTM, yang perlu mempertahankan state di beberapa permintaan.

Parameter

Deskripsi

Tipe

Wajib

Bawaan

Catatan

sequence-id

ID sekuens.

String

Tidak

Tidak ada

Triton mengarahkan permintaan dengan ID sekuens yang sama ke instans model yang sama.

sequence-start

Menentukan apakah permintaan saat ini ditandai sebagai awal sekuens.

Boolean

Tidak

false

Jika diatur ke true, Triton menginisialisasi state model sebelum memproses permintaan ini.

sequence-end

Menentukan apakah permintaan saat ini ditandai sebagai akhir sekuens.

Boolean

Tidak

false

Jika diatur ke true, Triton melepaskan state model setelah memproses permintaan ini.

Pemetaan tipe

Tipe data kolom input dan output Flink harus sesuai dengan data_type yang dideklarasikan dalam file config.pbtxt model pada server Triton.

Tipe Flink

Tipe data Triton

Deskripsi

BOOLEAN

BOOL

Tipe boolean.

TINYINT

INT8

Integer bertanda 8-bit.

SMALLINT

INT16

Integer bertanda 16-bit.

INT

INT32

Integer bertanda 32-bit.

BIGINT

INT64

Integer bertanda 64-bit.

FLOAT

FP32

Bilangan titik mengambang 32-bit.

DOUBLE

FP64

Bilangan titik mengambang 64-bit.

STRING / VARCHAR

BYTES

Tipe teks.

ARRAY<T>

Sesuai dengan tipe elemen T.

Hanya array satu dimensi yang didukung. T harus merupakan salah satu tipe skalar yang tercantum di atas.

Aturan bentuk:

  • Bentuk input skalar adalah [1].

  • Bentuk bawaan input ARRAY<T> adalah [1, N], di mana N adalah panjang array. Jika model Triton mengharapkan bentuk [N], atur 'flatten-batch-dim' = 'true'.

FAQ

Menemukan titik akhir dan token PAI-EAS

  1. Masuk ke Konsol Platform for AI (PAI).

  2. Di panel navigasi kiri, pilih Elastic Algorithm Service (EAS) > Inference Service, lalu klik nama layanan target Anda untuk membuka halaman Overview.

  3. Pada bagian Basic Information, klik View Invocation Information.

  4. Di panel Invocation Information, salin titik akhir dan token tersebut.

Menangani error ketidaksesuaian bentuk

Pastikan tipe kolom input Flink sesuai dengan dims yang ditentukan dalam file config.pbtxt model pada server Triton. Untuk input ARRAY<T>, Flink mengirim bentuk bawaan [1, N]. Jika konfigurasi model mengharapkan bentuk [N], atur parameter berikut:

'flatten-batch-dim' = 'true'

Array bersarang tidak didukung. Jika model Anda mengharapkan tensor multidimensi, kami menyarankan agar Anda meratakan tensor tersebut menjadi ARRAY<T> satu dimensi dan mengembalikan bentuknya di sisi model.

Dukungan untuk banyak input atau output

Fitur ini hanya mendukung satu kolom input dan satu kolom output. Untuk model dengan banyak input, Anda dapat mengemas beberapa fitur numerik ke dalam satu ARRAY<T> atau membuat serial struktur kompleks ke dalam string JSON dan menguraikannya di sisi model. Untuk model dengan banyak output, gabungkan output tersebut menjadi satu tensor output tunggal atau string JSON di sisi model.