このドキュメントでは、Flink SQL で AI モデルを登録・照会・変更・削除するためのデータ定義言語(DDL)文について説明します。
注意事項
Alibaba Cloud Model Studio、Platform for AI (PAI)、および OpenAI 互換 API を提供する他のプロバイダーの AI モデルサービスに対応しています。
Platform for AI (PAI) 上にデプロイされた推論サービスは、ご利用の Realtime Compute for Apache Flink サービスと同一リージョンである必要があります。
Ververica Runtime (VVR) バージョン 11.1 以降が必要です。
CREATE MODEL
モデルの登録
Data Query エディターで、次のコマンドを実行します。
CREATE [TEMPORARY] MODEL [catalog_name.][db_name.]model_name
INPUT ( { <physical_column_definition> [, ...n] )
OUTPUT ( { <physical_column_definition> [, ...n] )
WITH (key1=val1, key2=val2, ...)
<physical_column_definition>:
column_name column_type [COMMENT column_comment]句 | 説明 | 主要パラメーター | スキーマ制約 | 例 |
INPUT | モデルの入力データの列名、データの型、および順序を定義します。 |
| STRING 型の列が 1 つ必要です。 |
|
OUTPUT | モデルの出力データの列名、データの型、および順序を定義します。 |
| 制約はモデルタスクの種類によって異なります。
|
|
WITH | WITH パラメーターをご参照ください。 |
| なし。 |
|
例
Alibaba Cloud Model Studio
CREATE MODEL model_bailian
INPUT (`input` STRING)
OUTPUT (`content` STRING)
WITH (
'provider'='openai-compat',
'endpoint'='<Endpoint>',
'api-key'='<bailian-key>',
'model'='qwen3-235b-a22b'
);Alibaba Cloud Model Studio のエンドポイント形式は <base-url>/compatible-mode/v1/<task> です。例:https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions。
base-url
インターネットアクセス:
https://dashscope-intl.aliyuncs.com。インターネットアクセスを利用するには、Flink ワークスペースで有効化する必要があります。詳細については、「ネットワーク接続タイプの選択」をご参照ください。内部ネットワークアクセス:「内部ネットワーク経由での Alibaba Cloud Model Studio API アクセス」をご参照ください。
内部ネットワークアクセスは、同一リージョン内およびリージョン間でサポートされています。たとえば、上海の Flink インスタンスから北京の Model Studio サービスにアクセスする場合、Cloud Enterprise Network (CEN) を設定する必要があります。詳細については、「Alibaba Cloud Model Studio API のリージョン間プライベートアクセス」をご参照ください。
重要Alibaba Cloud Model Studio のデータ処理は、選択した Model Studio リージョンで実行されます。データ所在要件がある場合は、コンプライアンス要件に基づいて適切なリージョンを選択してください。詳細については、「サービスデプロイメント範囲の比較」をご参照ください。
task:モデルタスクの種類です。次の値がサポートされています。
Platform for AI (PAI)
CREATE MODEL model_pai
INPUT (`input` STRING)
OUTPUT (`embedding` ARRAY<FLOAT>)
WITH (
'provider'='openai-compat',
'endpoint'='<VPC_endpoint>',
'api-key'='<Token>',
'model'='qwen3-235b-a22b'
);エンドポイントと API キーを取得するには、まずモデルサービスをデプロイする必要があります。詳細については、「DeepSeek-V3 および DeepSeek-R1 モデルのワンクリックデプロイ」および「Elastic Algorithm Service (EAS) クイックスタート」をご参照ください。
モデルギャラリー
Platform for AI (PAI) コンソールにログインします。
左側のナビゲーションウィンドウで、に移動し、対象サービスの名前をクリックします。
呼び出し情報を表示をクリックします。
VPC エンドポイントは HTTP を使用します。HTTPS に変更し、URL に
/v1/<task>を追加する必要があります。taskには次のいずれかの値を指定できます。例:
https://************.vpc.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/quickstart_deploy_20250722_7b22/v1/chat/completions。Tokenフィールドの値をapi-keyパラメーターとして使用します。
Elastic Algorithm Service (EAS)
左側のナビゲーションウィンドウで、に移動し、対象サービスの名前をクリックして概要ページを開きます。
基本情報セクションで、呼び出し情報を表示をクリックします。
呼び出し情報パネルで、エンドポイントとトークンをコピーします。
VPC エンドポイントは HTTP を使用します。HTTPS に変更し、URL に
/v1/<task>を追加する必要があります。taskには次のいずれかの値を指定できます。例:
https://************.vpc.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/quickstart_deploy_20250722_7b22/v1/chat/completions。Tokenフィールドの値をapi-keyパラメーターとして使用します。
詳細については、「ゲートウェイ経由での公開または内部エンドポイントによるサービスの呼び出し」をご参照ください。
WITH パラメーター
共通
パラメーター | 説明 | 型 | 必須 | デフォルト | 注記 |
provider | モデルサービスの種類。 | string | はい | なし |
説明 PAI またはその他の OpenAI 互換モデルサービスの場合、値は |
endpoint | 埋め込みまたは chat/completions サービスなど、OpenAI 互換モデルサービスのエンドポイント。 | string | はい | なし |
|
api-key | モデルサービスの API キー。 | string | なし | 詳細については、「API キーの取得」をご参照ください。 以前のキー名: | |
max-context-size | 単一リクエストの最大コンテキストサイズ(トークン数)。 | integer | いいえ | なし | 最大容量を超えた場合、 説明 VVR 11.2 以降でサポートされています。 |
context-overflow-action | リクエストのコンテキストがトークン制限を超えた場合に実行する操作。 | string | いいえ |
| 有効な値:
説明 VVR 11.2 以降でサポートされています。 |
max-context-size | 最大コンテキスト長(レコード数)。 | integer | いいえ | なし | 説明 VVR 11.2 以降でサポートされています。 |
context-overflow-action | コンテキスト長がレコード制限を超えた場合に実行する操作。 | string | いいえ | truncated-tail | 有効な値:
説明 VVR 11.2 以降でサポートされています。 |
error-handling-strategy | モデルリクエストエラーの処理戦略。 | string | いいえ | retry | 有効な値:
説明 VVR 11.4 以降でサポートされています。 |
retry-num | リトライ回数。 | integer | いいえ | 100 |
説明 VVR 11.4 以降でサポートされています。 |
retry-fallback-strategy | 最大リトライ回数に達した後のフォールバック戦略。 | string | いいえ | failover | 有効な値は この設定は、 説明 VVR 11.4 以降でサポートされています。 |
retry-backoff-strategy | リトライのバックオフ戦略。 | string | いいえ | fixed | 有効な値:
説明 VVR 11.4 以降でサポートされています。 |
retry-backoff-base-interval | リトライバックオフ戦略のベースとなる時間間隔。 | duration | いいえ | 1 s | 説明 VVR 11.4 以降でサポートされています。 |
chat/completions
次のパラメーターは chat/completions モデルタスクに特有です。
パラメーター | 説明 | 型 | 必須 | デフォルト | 注記 |
model | 呼び出すモデル。 | string | はい | なし | テキスト生成モデルをサポートします。 説明 選択したモデルおよび入出力のトークン数に基づいて課金されます。 |
system-prompt | リクエストのシステムプロンプト。 | string | はい | "You are a helpful assistant." | 以前のキー名: 説明 VVR 11.6 以降では、このパラメーターを空の値に設定できます。 |
temperature | 各候補トークンの確率ディストリビューションの滑らかさを制御します。 | float | いいえ | なし | 有効範囲:[0, 2)。0 の値は推奨されません。 温度が高いほど出力がランダムになり、低いほど決定論的になります。 |
top-p | 核サンプリングの確率しきい値。 | float | いいえ | なし | 値が高いほどランダム性が増し、低いほど決定論的になります。 以前のキー名: |
stop | 停止シーケンス。 | string | いいえ | なし | このシーケンスが生成されると、モデルはトークンの生成を停止します。シーケンスは最終的な出力に含まれません。 |
max-tokens | モデルが生成できるトークンの最大数。 | integer | いいえ | なし | 以前のキー名: |
content-type | 入力データの種類。 | string | いいえ | text |
説明 VVR 11.6 以降でサポートされています。 |
presence-penalty | トークンの繰り返しを制御します。 | double | いいえ | なし | 有効範囲:-2.0 ~ 2.0。正の値はテキスト中にすでに出現したトークンにペナルティを与え、モデルが新しいトピックを議論する可能性を高めます。 説明 VVR 11.3 以降でサポートされています。 |
n | 各入力メッセージに対して生成する出力選択肢の数。 | integer | いいえ | なし | 説明 VVR 11.3 以降でサポートされています。 |
seed | モデルの応答における乱数シード。 | long | いいえ | なし | 指定された場合、モデルプロバイダーは決定論的サンプリングを試みるため、同じシードとパラメーターを使用した繰り返しリクエストでは同じ結果が返されるはずです。ただし、決定論性は保証されません。 説明 VVR 11.3 以降でサポートされています。 |
response-format | 戻り値のフォーマット。 | string | いいえ | text | 有効な値:
説明 VVR 11.3 以降でサポートされています。 |
extra-header | リクエスト用の追加 HTTP ヘッダー。 | string | いいえ | なし | JSON 形式の文字列である必要があります。JSON のキーと値のペアの値は、文字列または文字列のリストである必要があります。 説明 VVR 11.3 以降でサポートされています。 |
extra-body | リクエスト用の追加 HTTP 本文。 | string | いいえ | なし | JSON 形式の文字列である必要があります。 説明 VVR 11.3 以降でサポートされています。 |
embeddings
次のパラメーターは embeddings モデルタスクに特有です。
パラメーター | 説明 | 型 | 必須 | デフォルト | 注記 |
model | 呼び出すモデル。 | string | はい | なし | テキスト埋め込みモデルをサポートします。 説明 選択したモデルおよび入出力のトークン数に基づいて課金されます。 |
dimension | 出力ベクターのディメンション。 | integer | いいえ | なし | サポートされるディメンションは特定のモデルによって異なります。一般的な値には 1024、768、512 があります。 |
モデルの照会
Data Query エディターで、次のいずれかのコマンドを実行します。
登録済みモデルの名前を一覧表示:
SHOW MODELS [ ( FROM | IN ) [catalog_name.]database_name ];モデル作成に使用された文を表示:
SHOW CREATE MODEL [catalog_name.][db_name.]model_name;モデルの入出力スキーマを表示:
DESCRIBE MODEL [catalog_name.][db_name.]model_name;
例
SHOW MODELS;
-- RESULT
--+------------+
--| model name |
--+------------+
--| m |
--+------------+
DESCRIBE MODEL m;
-- RESULT
-- +---------+--------+------+----------+
-- | name | type | null | is input |
-- +---------+--------+------+----------+
-- | content | STRING | TRUE | TRUE |
-- | label | BIGINT | TRUE | FALSE |
-- +---------+--------+------+----------+
モデルの変更
Data Query エディターで、次のコマンドを実行します。
ALTER MODEL [IF EXISTS] [catalog_name.][db_name.]model_name {
RENAME TO new_table_name
SET (key1=val1, ...)
RESET (key1, ...)
}例
登録済みモデルの名前を変更:
ALTER MODEL m RENAME TO m1; -- モデル名を m1 に変更します。モデルパラメーターを変更:
ALTER MODEL m SET ('endpoint' = '<Your_Endpoint>'); -- エンドポイントパスを調整します。モデルパラメーターをデフォルト値にリセット:
ALTER MODEL m RESET ('endpoint'); -- エンドポイントパスをリセットします。
モデルの削除
Data Query エディターで、次のコマンドを実行します。
DROP [TEMPORARY] MODEL [IF EXISTS] [catalog_name.][db_name.]model_name例
DROP MODEL m;