All Products
Search
Document Center

Realtime Compute for Apache Flink:AI_EMBED

Last Updated:Jul 18, 2026

Topik ini menjelaskan cara menggunakan AI_EMBED untuk menghasilkan representasi vektor dari teks.

Batasan

  • Fitur ini memerlukan Ververica Runtime (VVR) versi 11.4 atau lebih baru.

  • Throughput operator AI_EMBED tunduk pada rate limits Alibaba Cloud Model Studio. Ketika rate limits untuk suatu model tercapai, pekerjaan Flink akan mengalami backpressure dengan operator AI_EMBED sebagai bottleneck. Dalam beberapa kasus, hal ini dapat memicu error timeout dan restart job.

Sintaksis

AI_EMBED(
  MODEL => MODEL <MODEL NAME>, 
  INPUT => <INPUT COLUMN NAME>
)

Input

Parameter

Tipe data

Deskripsi

MODEL <MODEL NAME>

MODEL

Nama model yang terdaftar.

Catatan: Tipe output untuk model tersebut harus berupa ARRAY<FLOAT>.

<INPUT COLUMN NAME>

STRING

Teks sumber yang akan dianalisis oleh model.

<DIMENSION VALUE>

INTEGER

Opsional. Dimensi dari vektor output. Nilai default adalah 1024. Jika model Anda tidak mendukung dimensi 1024, tentukan nilai yang didukung. Nilai DIMENSION dalam AI_EMBED menggantikan nilai yang ditetapkan dalam pernyataan CREATE MODEL.

Fungsi AI_EMBED selalu meneruskan parameter DIMENSION. Jika model Anda tidak mendukung parameter ini, gunakan ML_PREDICT sebagai gantinya.

Hasil

Parameter

Tipe data

Deskripsi

embedding

ARRAY<FLOAT>

Vektor yang dihasilkan. Dimensinya ditentukan oleh parameter DIMENSION. Nilai default adalah 1024 jika parameter tersebut tidak ditentukan.

Contoh

Data uji

id

content

1

Flink

Pernyataan uji

Contoh SQL berikut menggunakan model text-embedding-v3 dan AI_EMBED untuk menghasilkan vektor.

CREATE TEMPORARY MODEL embedding_model
INPUT (`input` STRING)
OUTPUT (`embedding` ARRAY<FLOAT>)
WITH (
    'provider' = 'openai-compat',
    'task' = 'embeddings',
    'model' = 'text-embedding-v3',
    'dimension' = '1024'
);

CREATE TEMPORARY VIEW infos(id, content)
AS VALUES (1, 'Flink');

-- Gunakan argumen posisional untuk memanggil AI_EMBED
SELECT id, embedding
FROM infos,
LATERAL TABLE(
  AI_EMBED(
    MODEL embedding_model, 
    content
    )); 

-- Gunakan argumen bernama untuk memanggil AI_EMBED
SELECT id, embedding
FROM infos,
LATERAL TABLE(
  AI_EMBED(
    MODEL => MODEL embedding_model, 
    INPUT => content
    )); 

Output

id

embedding

1

[-0.13219477, 0.054332353, -0.033010617, -0.0039787884, ...]