全部產品
Search
文件中心

Realtime Compute for Apache Flink:AI_EMBED

更新時間:Dec 04, 2025

本文為您介紹如何使用AI_EMBED通過AI大模型進行向量產生。

使用限制

  • 僅Realtime Compute引擎VVR 11.4及以上版本支援。

  • AI_EMBED語句相關的Flink運算元的輸送量受到模型平台限流的限制。當觸及平台允許的訪問資料傳輸量上限時,Flink作業會表現出以該運算元為瓶頸的反壓現象。在限流情況嚴重時,可能會觸發相關運算元的逾時報錯及作業重啟。

文法

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

入參

參數

資料類型

說明

MODEL <MODEL NAME>

MODEL

註冊的模型服務名字。詳情請參見模型設定註冊模型服務。

注意:目前需要該模型的輸出類型為 ARRAY<FLOAT> 類型。

<INPUT COLUMN NAME>

STRING

模型待分析的原始文本。

輸出

參數

資料類型

說明

embedding

ARRAY<FLOAT>

產生的1024維向量。

樣本

測試資料

id

content

1

Flink

測試語句

樣本SQL建立text-embedding-v3模型,使用AI_EMBED產生向量。

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

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

-- Use positional argument to call AI_EMBED
SELECT id, embedding
FROM infos,
LATERAL TABLE(
  AI_EMBED(
    MODEL embedding_model, 
    content
    )); 

-- Use named argument to call AI_MASK
SELECT id, embedding
FROM infos,
LATERAL TABLE(
  AI_EMBED(
    MODEL => MODEL embedding_model, 
    INPUT => content
    )); 

輸出結果

id

embedding

1

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