Cette rubrique explique comment utiliser AI_EMBED pour générer des représentations vectorielles de textes.
Limites
Cette fonctionnalité nécessite Ververica Runtime (VVR) 11.4 ou une version ultérieure.
Pour utiliser le service Flink AI (modèles intégrés), vous devez disposer de la version VVR 11.7 ou ultérieure et activer le service Flink AI. Pour plus de détails, consultez la rubrique Service Flink AI (modèles intégrés).
Le débit des opérateurs
AI_EMBEDdépend des limites de débit d'Alibaba Cloud Model Studio. Lorsque les limites de débit d'un modèle sont atteintes, le job Flink subit une contre-pression, les opérateursAI_EMBEDconstituant le goulot d'étranglement. Dans certains cas, des erreurs de délai d'expiration et des redémarrages de job peuvent se produire.
Syntaxe
AI_EMBED(
MODEL => MODEL <MODEL NAME>,
INPUT => <INPUT COLUMN NAME>
)
Entrée
|
Paramètre |
Type de données |
Description |
|
MODEL <MODEL NAME> |
MODEL |
Nom du modèle enregistré. Remarque : le type de sortie du modèle doit être |
|
<INPUT COLUMN NAME> |
STRING |
Texte source à analyser par le modèle. |
|
<DIMENSION VALUE> |
INTEGER |
Facultatif. Dimension du vecteur de sortie. La valeur par défaut est 1024. Si votre modèle ne prend pas en charge 1024 dimensions, spécifiez une valeur prise en charge. La valeur DIMENSION dans AI_EMBED remplace celle définie dans l'instruction CREATE MODEL. La fonction AI_EMBED transmet toujours le paramètre DIMENSION. Si votre modèle ne prend pas en charge ce paramètre, utilisez plutôt ML_PREDICT. |
Résultat
|
Paramètre |
Type de données |
Description |
|
embedding |
ARRAY<FLOAT> |
Vecteur généré. Sa dimension est déterminée par le paramètre DIMENSION. La valeur par défaut est 1024 si le paramètre est omis. |
Exemple
Données de test
|
id |
content |
|
1 |
Flink |
Instruction de test
Cet exemple SQL fait référence à un modèle d'incorporation intégré à Flink et utilise AI_EMBED pour générer des vecteurs.
CREATE TEMPORARY MODEL embedding_model
INPUT (`input` STRING)
OUTPUT (`embedding` ARRAY<FLOAT>)
WITH (
'provider' = 'openai-compat',
'task' = 'embeddings',
'model' = 'text-embedding-v4',
'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_EMBED
SELECT id, embedding
FROM infos,
LATERAL TABLE(
AI_EMBED(
MODEL => MODEL embedding_model,
INPUT => content
));
Sorties
|
id |
embedding |
|
1 |
[-0.13219477, 0.054332353, -0.033010617, -0.0039787884, ...] |