本文為您介紹如何使用AI_TRANSLATE通過AI大模型進行翻譯。
使用限制
僅Realtime Compute引擎VVR 11.4及以上版本支援。
AI_TRANSLATE語句相關的Flink運算元的輸送量受到模型平台限流的限制。當觸及平台允許的訪問資料傳輸量上限時,Flink作業會表現出以該運算元為瓶頸的反壓現象。在限流情況嚴重時,可能會觸發相關運算元的逾時報錯及作業重啟。
文法
AI_TRANSLATE(
MODEL => MODEL <MODEL NAME>,
INPUT => <INPUT COLUMN NAME>,
SOURCE_LANG => <SOURCE LANGUAGE>,
TARGET_LANG => <TARGET LANGUAGE>
)入參
參數 | 資料類型 | 說明 |
MODEL <MODEL NAME> | MODEL | 註冊的模型服務名字。詳情請參見模型設定註冊模型服務。 注意:目前需要該模型的輸出類型為 VARIANT 類型。 |
<INPUT COLUMN NAME> | STRING | 模型待分析的原始文本。 |
<SOURCE LANGUAGE> | STRING | 源語言英文縮寫。例如對於中文請輸入 目前支援的源語言如下: 中文(zh)英文 (en)、日文 (ja)、韓文 (ko)、法文 (fr)、德文 (de)、西班牙文 (es)、俄文 (ru)、阿拉伯文 (ar)、葡萄牙文 (pt) 注意:實際支援的語言類型由模型決定。 注意:目前該入參需要是一個常量。 |
<TARGET LANGUAGE> | STRING | 目標語言的英文縮寫。例如,翻譯成中文請輸入 目前支援的目標語言如下: 中文(zh)英文 (en)、日文 (ja)、韓文 (ko)、法文 (fr)、德文 (de)、西班牙文 (es)、俄文 (ru)、阿拉伯文 (ar)、葡萄牙文 (pt) 注意:實際支援的語言類型由模型決定。 注意:目前該入參需要是一個常量。 |
輸出
參數 | 資料類型 | 說明 |
translated_text | STRING | 翻譯後的文字。 |
detected_language | STRING | 識別到的語言。 |
樣本
測試資料
id | content |
1 | I like Flink very much. It's so fast! |
測試語句
樣本SQL建立通義千問Qwen-Plus模型,使用AI_TRANSLATE翻譯輸入文本。
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, content)
AS VALUES (1, 'I like Flink very much. It''s so fast!');
-- Use positional argument to call AI_TRANSLATE
SELECT id, translated_text, detected_language
FROM infos,
LATERAL TABLE(
AI_TRANSLATE(
MODEL general_model,
content,
'auto',
'zh'
));
-- Use named argument to call AI_TRANSLATE
SELECT id, translated_text, detected_language
FROM infos,
LATERAL TABLE(
AI_TRANSLATE(
MODEL => MODEL general_model,
INPUT => content,
SOURCE_LANG =>'auto',
TARGET_LANG => 'zh'
));
輸出結果
id | translated_text | detected_language |
1 | 我非常喜歡 Flink,它非常快! | en |