本文為您介紹如何使用AI_SUMMARIZE通過AI大模型產生文本摘要。
使用限制
僅Realtime Compute引擎VVR 11.4及以上版本支援。
AI_SUMMARIZE語句相關的Flink運算元的輸送量受到模型平台限流的限制。當觸及平台允許的訪問資料傳輸量上限時,Flink作業會表現出以該運算元為瓶頸的反壓現象。在限流情況嚴重時,可能會觸發相關運算元的逾時報錯及作業重啟。
文法
AI_SUMMARIZE(
MODEL => MODEL <MODEL NAME>,
INPUT => <INPUT COLUMN NAME>,
MAX_LENGTH => <MAX LENGTH>
)入參
參數 | 資料類型 | 說明 |
MODEL <MODEL NAME> | MODEL | 註冊的模型服務名字。詳情請參見模型設定註冊模型服務。 注意:目前需要該模型的輸出類型為 VARIANT 類型。 |
<INPUT COLUMN NAME> | STRING | 模型的待分析資料。 |
<MAX LENGTH> | INTEGER | 模型輸出的最大長度。 注意:目前該入參需要是一個常量。 |
輸出
參數 | 資料類型 | 說明 |
summary | STRING | 總結的內容 |
樣本
測試資料
id | description |
1 | 什麼是 Flink Apache Flink 是一個開源的分布式流處理架構,用於對即時資料流和批量資料進行有狀態計算。 簡單理解: Flink 是一個處理即時資料的計算引擎 可以處理持續不斷產生的資料流(如網網站擊、物聯網感應器資料、股票交易等) 提供低延遲、高吞吐、精確一次的語義保證 同時支援流處理和批處理 |
測試語句
樣本SQL建立通義千問Qwen-Plus模型,使用AI_SUMMARIZE總結輸入資料。
CREATE TEMPORARY MODEL general_model
INPUT (`input` STRING)
OUTPUT (`content` VARIANT)
WITH (
'provider' = 'openai-compat',
'endpoint'='<YOUR ENDPOINT>',
'apiKey' = '<YOUR KEY>',
'model' = 'qwen-plus'
);
CREATE TEMPORARY VIEW infos(id, description)
AS VALUES (1, '
什麼是 Flink
Apache Flink 是一個開源的分布式流處理架構,用於對即時資料流和批量資料進行有狀態計算。
簡單理解:
Flink 是一個處理即時資料的計算引擎
可以處理持續不斷產生的資料流(如網網站擊、物聯網感應器資料、股票交易等)
提供低延遲、高吞吐、精確一次的語義保證
同時支援流處理和批處理
');
-- Use positional argument to call AI_SUMMARIZE
SELECT id, summary
FROM infos, LATERAL TABLE(
AI_SUMMARIZE(MODEL general_model, description, 10));
-- Use named argument to call AI_SUMMARIZE
SELECT id, summary
FROM infos, LATERAL TABLE(
AI_SUMMARIZE(
MODEL => MODEL general_model,
INPUT => description,
MAX_LENGTH => 10));輸出結果
id | summary |
1 | 即時資料流處理引擎 |