このトピックでは、AI_CLASSIFY 関数を使用して大規模 AI モデルでテキストを分類する方法について説明します。
制限事項
この関数は、Ververica Runtime (VVR) 11.4 以降のみをサポートします。
AI_CLASSIFY 文を使用する Flink オペレーターのスループットは、Alibaba Cloud Model Studio のトラフィックの速度制限によって制限されます。トラフィックがプラットフォームの制限を超えると、Flink ジョブにバックプレッシャーが発生し、オペレーターがボトルネックになります。深刻なトラフィックの速度制限は、タイムアウトエラーやジョブの再起動を引き起こす可能性があります。
構文
AI_CLASSIFY(
MODEL => MODEL <MODEL NAME>,
INPUT => <INPUT COLUMN NAME>,
LABELS => <LABELS>
)入力パラメーター
パラメーター | データ型 | 説明 |
MODEL <MODEL NAME> | MODEL | 登録済みのモデルサービスの名前。モデルサービスの登録の詳細については、「モデル設定」をご参照ください。 注:このモデルの出力タイプは VARIANT である必要があります。 |
<INPUT COLUMN NAME> | STRING | モデルによって分類されるデータ。 |
<LABELS> | ARRAY<STRING> | 期待される分類カテゴリ。 注:この入力パラメーターは定数である必要があります。 |
出力
パラメーター | データ型 | 説明 |
category | STRING | モデルによって決定されたカテゴリ。 |
confidence | DOUBLE | モデルによって出力された信頼度。 |
例
サンプルデータ
id | 映画名 | コメント | 実際のラベル |
1 | グッド・スタッフ | 子供たちが音を当てるシーンが大好きです。今まで見た映画の中で最もロマンチックな物語の一つです。とても優しく、愛に満ちています。 | 肯定的 |
2 | 餃子の女王 | 特筆すべき点なし。 | 否定的 |
サンプル文
次のサンプル SQL 文は、Qwen-Plus モデルを作成し、AI_CLASSIFY 関数を使用して製品カテゴリを分類します。
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 products(id, content)
AS VALUES (1, '[李寧公式旗艦店] Way of Wade 10 メンズバスケットボールシューズ、パフォーマンスシューズ、衝撃吸収・リバウンド、Cloud V テクノロジー、ブラック/レッドカラー'), (2, 'Apple iPhone 15 Pro Max 256GB ディープスペースブラック 5G スマートフォン A17 Pro チップ チタンフレーム 公式純正中国版');
-- 位置引数を使用して AI_CLASSIFY を呼び出す
SELECT id, category, confidence FROM products,
LATERAL TABLE(
AI_CLASSIFY(
MODEL general_model, content, ARRAY['デジタル製品', 'アパレル・シューズ・アクセサリー']));
-- 名前付き引数を使用して AI_CLASSIFY を呼び出す
SELECT id, category, confidence FROM products,
LATERAL TABLE(
AI_CLASSIFY(
MODEL => MODEL general_model,
INPUT => content,
LABELS => ARRAY['デジタル製品', 'アパレル・シューズ・アクセサリー'])); 出力
id | カテゴリ | 信頼度 |
1 | アパレル・シューズ・アクセサリー | 0.95 |
2 | デジタル製品 | 0.99 |