Traduit une colonne de texte dans une tâche Flink SQL à l'aide d'un grand modèle de langage (LLM).
Limites
Ververica Runtime (VVR) 11.4 ou version ultérieure est requis.
Pour utiliser le service Flink AI (modèles intégrés), vous devez disposer de VVR 11.7 ou version ultérieure et activer le service Flink AI. Pour plus de détails, consultez Flink AI service (built-in models).
Le débit est limité par la plateforme de modèles. Si cette limite est dépassée, la tâche Flink subit une contre-pression et cet opérateur devient un goulot d'étranglement. Une limitation stricte déclenche des erreurs de délai d'attente et provoque le redémarrage de la tâche.
Syntaxe
AI_TRANSLATE(
MODEL => MODEL <MODEL NAME>,
INPUT => <INPUT COLUMN NAME>,
SOURCE_LANG => <SOURCE LANGUAGE>,
TARGET_LANG => <TARGET LANGUAGE>
)
Paramètres
| Paramètre | Type de données | Description |
|---|---|---|
MODEL <MODEL NAME> |
MODEL | Nom du service de modèle enregistré. Pour plus d'informations, consultez Paramètres du modèle. Le type de sortie de ce modèle doit être VARIANT. |
<INPUT COLUMN NAME> |
STRING | Texte source à traduire. |
<SOURCE LANGUAGE> |
STRING | Code de langue du texte source (par exemple, zh pour le chinois). Indiquez auto pour que le modèle détecte automatiquement la langue. Les langues sources prises en charge sont les suivantes : chinois (zh), anglais (en), japonais (ja), coréen (ko), français (fr), allemand (de), espagnol (es), russe (ru), arabe (ar) et portugais (pt). Remarque : les langues réellement prises en charge dépendent du modèle enregistré. Ce paramètre doit être une constante. |
<TARGET LANGUAGE> |
STRING | Code de langue cible (par exemple, zh pour le chinois). Les langues cibles prises en charge sont les suivantes : chinois (zh), anglais (en), japonais (ja), coréen (ko), français (fr), allemand (de), espagnol (es), russe (ru), arabe (ar) et portugais (pt). Remarque : les langues réellement prises en charge dépendent du modèle enregistré. Ce paramètre doit être une constante. |
Valeurs de retour
| Champ | Type de données | Description |
|---|---|---|
translated_text |
STRING | Texte traduit. |
detected_language |
STRING | Langue source détectée. |
Exemples
Données de test
| id | content |
|---|---|
| 1 | I like Flink very much. It's so fast! |
Instructions SQL
L'exemple suivant utilise un modèle intégré Flink et la fonction AI_TRANSLATE pour traduire le texte d'entrée.
CREATE TEMPORARY MODEL general_model
INPUT (`input` STRING)
OUTPUT (`content` VARIANT)
WITH (
'provider' = 'openai-compat',
'task' = 'chat/completions',
'model' = 'qwen3.6-flash'
);
CREATE TEMPORARY VIEW infos(id, content)
AS VALUES (1, 'I like Flink very much. It''s so fast!');
-- Positional argument syntax
SELECT id, translated_text, detected_language
FROM infos,
LATERAL TABLE(
AI_TRANSLATE(
MODEL general_model,
content,
'auto',
'zh'
));
-- Named argument syntax
SELECT id, translated_text, detected_language
FROM infos,
LATERAL TABLE(
AI_TRANSLATE(
MODEL => MODEL general_model,
INPUT => content,
SOURCE_LANG => 'auto',
TARGET_LANG => 'zh'
));
Sortie
| id | translated_text | detected_language |
|---|---|---|
| 1 | 我非常喜欢 Flink,它非常快! | en |