Dokumen ini menjelaskan pernyataan bahasa definisi data (DDL) untuk mendaftarkan, mengkueri, memodifikasi, dan menghapus model AI dalam Flink SQL.
Catatan penggunaan
Mendukung layanan model AI dari Alibaba Cloud Model Studio, Platform for AI (PAI), dan penyedia lain dengan API yang kompatibel OpenAI.
Layanan inferensi yang diterapkan pada Platform for AI (PAI) harus berada di wilayah yang sama dengan layanan Realtime Compute for Apache Flink Anda.
Memerlukan Ververica Runtime (VVR) versi 11.1 atau lebih baru.
CREATE MODEL
Daftarkan model
Dalam editor Data Query, jalankan perintah berikut.
CREATE [TEMPORARY] MODEL [catalog_name.][db_name.]model_name
INPUT ( { <physical_column_definition> [, ...n] )
OUTPUT ( { <physical_column_definition> [, ...n] )
WITH (key1=val1, key2=val2, ...)
<physical_column_definition>:
column_name column_type [COMMENT column_comment]Klausa | Deskripsi | Parameter kunci | Batasan skema | Contoh |
INPUT | Menentukan nama kolom, tipe data, dan urutan data masukan model. |
| Memerlukan tepat satu kolom bertipe STRING. |
|
OUTPUT | Menentukan nama kolom, tipe data, dan urutan data keluaran model. |
| Batasan bervariasi tergantung jenis task model:
|
|
WITH | Lihat Parameter WITH. |
| Tidak ada. |
|
Contoh
Alibaba Cloud Model Studio
CREATE MODEL model_bailian
INPUT (`input` STRING)
OUTPUT (`content` STRING)
WITH (
'provider'='openai-compat',
'endpoint'='<Endpoint>',
'api-key'='<bailian-key>',
'model'='qwen3-235b-a22b'
);Format endpoint untuk Alibaba Cloud Model Studio adalah <base-url>/compatible-mode/v1/<task>. Contohnya, https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions.
base-url
Akses Internet:
https://dashscope-intl.aliyuncs.com. Untuk menggunakan akses Internet, Anda harus mengaktifkannya untuk ruang kerja Flink Anda. Untuk informasi selengkapnya, lihat Pilih jenis koneksi jaringan.Akses jaringan internal: Lihat Akses API Alibaba Cloud Model Studio melalui jaringan internal.
Akses jaringan internal didukung baik dalam wilayah yang sama maupun lintas wilayah. Untuk mengakses layanan dari wilayah berbeda—misalnya, instans Flink di Shanghai mengakses layanan Model Studio di Beijing—Anda harus mengonfigurasi Cloud Enterprise Network (CEN). Untuk informasi selengkapnya, lihat Akses privat lintas wilayah ke API Alibaba Cloud Model Studio.
PentingPemrosesan data untuk Alibaba Cloud Model Studio dilakukan di wilayah Model Studio yang dipilih. Jika Anda memiliki persyaratan residensi data, pilih wilayah yang sesuai berdasarkan kebutuhan kepatuhan Anda. Untuk informasi selengkapnya, lihat Perbandingan cakupan penerapan layanan.
Tugas: Jenis tugas model. Nilai-nilai berikut didukung:
Platform for AI (PAI)
CREATE MODEL model_pai
INPUT (`input` STRING)
OUTPUT (`embedding` ARRAY<FLOAT>)
WITH (
'provider'='openai-compat',
'endpoint'='<VPC_endpoint>',
'api-key'='<Token>',
'model'='qwen3-235b-a22b'
);Untuk mendapatkan endpoint dan Kunci API, Anda harus terlebih dahulu menerapkan layanan model. Untuk informasi selengkapnya, lihat Terapkan model DeepSeek-V3 dan DeepSeek-R1 dengan satu klik dan Panduan cepat untuk Elastic Algorithm Service (EAS).
Model Gallery
Masuk ke Konsol Platform for AI (PAI).
Di panel navigasi kiri, buka lalu klik nama layanan target.
Klik View Invocation Information.
Endpoint VPC menggunakan HTTP. Anda harus mengubahnya menjadi HTTPS dan menambahkan
/v1/<task>ke URL. Nilaitaskdapat berupa salah satu nilai berikut:Contohnya:
https://************.vpc.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/quickstart_deploy_20250722_7b22/v1/chat/completions.Gunakan nilai dari bidang
Tokensebagai parameterapi-key.
Elastic Algorithm Service (EAS)
Di panel navigasi kiri, buka , lalu klik nama layanan target untuk membuka halaman Overview.
Di bagian Basic Information, klik View Invocation Information.
Di panel Invocation Information, salin endpoint dan token:
Endpoint VPC menggunakan HTTP. Anda harus mengubahnya menjadi HTTPS dan menambahkan
/v1/<task>ke URL. Nilaitaskdapat berupa salah satu nilai berikut:Contohnya:
https://************.vpc.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/quickstart_deploy_20250722_7b22/v1/chat/completions.Gunakan nilai dari bidang
Tokensebagai parameterapi-key.
Untuk informasi selengkapnya, lihat Panggil layanan menggunakan endpoint publik atau internal melalui gerbang.
WITH parameters
Umum
Parameter | Deskripsi | Tipe | Wajib | Default | Catatan |
provider | Jenis layanan model. | string | Ya | Tidak ada |
Catatan Untuk layanan model PAI atau lainnya yang kompatibel OpenAI, nilainya harus |
endpoint | Titik akhir untuk layanan model yang kompatibel OpenAI, seperti layanan embeddings atau chat/completions. | string | Ya | Tidak ada |
|
api-key | Kunci API untuk layanan model. | string | Tidak ada | Untuk informasi selengkapnya, lihat Dapatkan Kunci API. Nama kunci sebelumnya: | |
max-context-size | Ukuran konteks maksimum untuk satu permintaan, dalam token. | integer | Tidak | Tidak ada | Jika kapasitas maksimum terlampaui, aksi yang ditentukan dalam Catatan Didukung di VVR 11.2 dan versi lebih baru. |
context-overflow-action | Aksi yang diambil ketika konteks permintaan melebihi batas token. | string | Tidak |
| Nilai yang valid:
Catatan Didukung di VVR 11.2 dan versi lebih baru. |
max-context-size | Panjang konteks maksimum (jumlah catatan). | integer | Tidak | Tidak ada | Catatan Didukung di VVR 11.2 dan versi lebih baru. |
context-overflow-action | Aksi yang diambil ketika panjang konteks melebihi batas catatan. | string | Tidak | truncated-tail | Nilai yang valid:
Catatan Didukung di VVR 11.2 dan versi lebih baru. |
error-handling-strategy | Strategi penanganan error permintaan model. | string | Tidak | retry | Nilai yang valid:
Catatan Didukung di VVR 11.4 dan versi lebih baru. |
retry-num | Jumlah upaya pengulangan. | integer | Tidak | 100 | Berlaku hanya ketika Catatan Didukung di VVR 11.4 dan versi lebih baru. |
retry-fallback-strategy | Strategi fallback yang digunakan setelah jumlah maksimum pengulangan tercapai. | string | Tidak | failover | Nilai yang valid adalah Pengaturan ini berlaku hanya ketika Catatan Didukung di VVR 11.4 dan versi lebih baru. |
retry-backoff-strategy | Strategi backoff pengulangan. | string | Tidak | fixed | Nilai yang valid:
Catatan Didukung di VVR 11.4 dan versi lebih baru. |
retry-backoff-base-interval | Interval waktu dasar untuk strategi backoff pengulangan. | duration | Tidak | 1 s | Catatan Didukung di VVR 11.4 dan versi lebih baru. |
chat/completions
Parameter berikut khusus untuk task model chat/completions:
Parameter | Deskripsi | Jenis | Wajib | Default | Catatan |
model | Model yang dipanggil. | string | Ya | Tidak ada | Mendukung model generasi teks. Catatan Anda dikenai biaya berdasarkan model yang dipilih dan jumlah token pada input dan output. |
system-prompt | Prompt sistem untuk permintaan. | string | Ya | "You are a helpful assistant." | Nama kunci sebelumnya: Catatan Di VVR 11.6 dan versi lebih baru, Anda dapat mengatur parameter ini ke nilai kosong. |
temperature | Mengontrol kelancaran distribusi probabilitas untuk setiap token kandidat. | float | Tidak | Tidak ada | Rentang valid: [0, 2). Nilai 0 tidak disarankan. Suhu yang lebih tinggi membuat output lebih acak, sedangkan nilai yang lebih rendah membuatnya lebih deterministik. |
top-p | Ambang batas probabilitas untuk pengambilan sampel inti. | float | Tidak | Tidak ada | Nilai yang lebih tinggi meningkatkan keacakan, sedangkan nilai yang lebih rendah meningkatkan determinisme. Nama kunci sebelumnya: |
stop | Urutan penghentian. | string | Tidak | Tidak ada | Model berhenti menghasilkan token ketika sequens ini dihasilkan. Sequens ini tidak termasuk dalam output akhir. |
max-tokens | Jumlah maksimum token yang dapat dihasilkan model. | integer | Tidak | Tidak ada | Nama kunci sebelumnya: |
content-type | Jenis data input. | string | Tidak | text |
Catatan Didukung di VVR 11.6 dan versi lebih baru. |
presence-penalty | Mengontrol pengulangan token. | double | Tidak | Tidak ada | Rentang valid: -2.0 hingga 2.0. Nilai positif memberikan penalti pada token yang sudah muncul dalam teks, sehingga model lebih cenderung membahas topik baru. Catatan Didukung di VVR 11.3 dan versi lebih baru. |
n | Jumlah pilihan output yang dihasilkan untuk setiap pesan input. | integer | Tidak | Tidak ada | Catatan Didukung di VVR 11.3 dan versi lebih baru. |
seed | Seed bilangan acak untuk respons model. | long | Tidak | Tidak ada | Jika ditentukan, penyedia model mencoba pengambilan sampel deterministik, sehingga permintaan berulang dengan seed dan parameter yang sama seharusnya menghasilkan hasil yang sama. Determinisme tidak dijamin. Catatan Didukung di VVR 11.3 dan versi lebih baru. |
response-format | Format nilai kembali. | string | Tidak | text | Nilai yang valid:
Catatan Didukung di VVR 11.3 dan versi lebih baru. |
extra-header | Header HTTP tambahan untuk permintaan. | string | Tidak | Tidak ada | Harus berupa string berformat JSON. Nilai dalam pasangan kunci-nilai JSON harus berupa string atau daftar string. Catatan Didukung di VVR 11.3 dan versi lebih baru. |
extra-body | Body HTTP tambahan untuk permintaan. | string | Tidak | Tidak ada | Harus berupa string berformat JSON. Catatan Didukung di VVR 11.3 dan versi lebih baru. |
embeddings
Parameter berikut khusus untuk task model embeddings:
Parameter | Deskripsi | Tipe | Wajib | Default | Catatan |
model | Model yang dipanggil. | string | Ya | Tidak ada | Mendukung model text embedding. Catatan Anda dikenai biaya berdasarkan model yang dipilih dan jumlah token pada input dan output. |
dimension | Dimensi vektor output. | integer | Tidak | Tidak ada | Dimensi yang didukung bergantung pada model spesifik. Nilai umum meliputi 1024, 768, dan 512. |
Mengkueri model
Dalam editor Data Query, jalankan salah satu perintah berikut.
Daftar nama model yang terdaftar:
SHOW MODELS [ ( FROM | IN ) [catalog_name.]database_name ];Tampilkan pernyataan yang digunakan untuk membuat model:
SHOW CREATE MODEL [catalog_name.][db_name.]model_name;Tampilkan skema input dan output model:
DESCRIBE MODEL [catalog_name.][db_name.]model_name;
Contoh
SHOW MODELS;
-- RESULT
--+------------+
--| model name |
--+------------+
--| m |
--+------------+
DESCRIBE MODEL m;
-- RESULT
-- +---------+--------+------+----------+
-- | name | type | null | is input |
-- +---------+--------+------+----------+
-- | content | STRING | TRUE | TRUE |
-- | label | BIGINT | TRUE | FALSE |
-- +---------+--------+------+----------+
Memodifikasi model
Dalam editor Data Query, jalankan perintah berikut.
ALTER MODEL [IF EXISTS] [catalog_name.][db_name.]model_name {
RENAME TO new_table_name
SET (key1=val1, ...)
RESET (key1, ...)
}Contoh
Ganti nama model yang terdaftar:
ALTER MODEL m RENAME TO m1; -- Mengganti nama model menjadi m1.Ubah parameter model:
ALTER MODEL m SET ('endpoint' = '<Your_Endpoint>'); -- Menyesuaikan path endpoint.Atur ulang parameter model ke nilai default-nya:
ALTER MODEL m RESET ('endpoint'); -- Mengatur ulang path endpoint.
Menghapus model
Dalam editor Data Query, jalankan perintah berikut.
DROP [TEMPORARY] MODEL [IF EXISTS] [catalog_name.][db_name.]model_nameContoh
DROP MODEL m;