模型设置

更新时间:
复制为 MD 格式

本文为您介绍注册、查询、修改、删除AI模型的DDL数据定义语句。

使用须知

  • 支持阿里云百炼人工智能平台PAI以及其他OpenAI兼容接口的大模型服务。

  • 人工智能平台PAI部署的大模型服务需与实时计算Flink版服务处于同一地域。

  • 仅实时计算引擎VVR 11.1及以上版本支持。

CREATE MODEL

注册模型

数据查询文本编辑区域,输入以下命令。

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]

子句

描述

关键参数

Schema限制

示例

INPUT

定义模型输入数据的字段、类型以及字段的顺序。

  • column_name(字段名)

  • column_type(类型)

  • COMMENT(注释)

有且仅有一个STRING类型的字段。

INPUT (`input_text` STRING COMMENT '用户评论')

OUTPUT

定义模型输出数据的字段、类型以及字段顺序。

  • column_name(字段名)

  • column_type(类型)

  • COMMENT(注释)

不同模型任务类型限制如下:

OUTPUT (`sentiment_label` STRING COMMENT '情感标签')

WITH

请参见WITH参数

  • provider(服务名)

  • endpoint(接入地址)

  • apiKey(密钥)

  • model(模型标识)

无。

WITH ('provider'='openai-compat', 'endpoint'='${ENDPOINT}', 'model'='qwen-turbo', 'apiKey'='${KEY}')

示例

阿里云百炼

CREATE MODEL model_bailian
INPUT (`input` STRING)
OUTPUT (`content` STRING)
WITH (
  'provider'='openai-compat',
  'endpoint'='<Endpoint>',
  'api-key'='<bailian-key>',
  'model'='qwen3-235b-a22b'
);

百炼平台模型服务端口格式为:<base-url>/compatible-mode/v1/<task>。例如https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions

人工智能平台PAI

CREATE MODEL model_pai
INPUT (`input` STRING)
OUTPUT (`embedding` ARRAY<FLOAT>) 
WITH (
  'provider'='openai-compat',
  'endpoint'='<VPC调用地址>',
  'api-key'='<Token>',
  'model'='qwen3-235b-a22b'
);

如何获取endpointapi-key?如果您还没有相关服务,详情请参见一键部署DeepSeek-V3、DeepSeek-R1模型模型在线服务 EAS 快速入门

Model Galley

  1. 登录人工智能平台PAI控制台

  2. 在左侧导航栏选择Model Gallery > 任务管理 > 部署任务,单击对应服务名称。

  3. 单击查看调用信息

    • VPC调用地址为http,需修改为https。地址后缀需要添加/v1/<task>。task:模型任务类型。支持以下取值:

      例如https://************.vpc.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/quickstart_deploy_20250722_7b22/v1/chat/completions

    • Token为参数api-key的值。

模型在线服务(EAS)

  1. 在左侧导航栏选择模型在线服务(EAS) > 推理服务,单击目标服务名称进入概览页面。

  2. 基本信息区域,单击查看调用信息

  3. 调用信息面板,复制访问地址和Token:

    • VPC调用地址为http,需修改为https。地址后缀需要添加/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

  • VVR 11.1~11.2 : 固定值为bailian

  • VVR 11.3 ~ 11.6:可选值openai-compatbailian

    推荐使用openai-compat

说明

支持PAI平台或其他兼容OpenAI API模型服务,固定值不变。

endpoint

模型服务端口,或其他兼容OpenAI APIEmbeddingsChat/Completions模型服务端口。

String

  • 百炼或PAI平台端口详见示例

  • 其他兼容OpenAI APIEmbeddingsChat/Completions模型服务,可根据相应的API文档填写端口值。

api-key

用来访问百炼平台接口的密钥。

String

详情请参见获取API Key

曾用键名:apiKey(vvr 11.1版本)

max-context-size

单个请求的上下文的最大容量

Integer

如果超过了最大容量,会触发context-overflow-action中定义的行为。

说明

VVR 11.2及以上版本支持。

context-overflow-action

单个请求的上下文超过最大容量时的处理行为

String

truncated-tail

可选值如下:

  • truncated-tail: 自动从尾部裁剪超出容量的token,保留最近 max-context-sizetoken。不记录日志。

  • truncated-tail-log: 自动从尾部裁剪超出容量的token,保留最近 max-context-sizetoken。记录截断日志。

  • truncated-head: 从头部裁剪最早的token,保留最新 max-context-sizetoken。

  • truncated-head-log: 从头部裁剪最早的token,保留最新 max-context-sizetoken。记录截断日志。

  • skipped: 直接丢弃该条数据。不记录日志。

  • skipped-log: 直接丢弃该条数据并记录日志。

说明

VVR 11.2及以上版本支持。

max-context-size

最大上下文长度(token数量)

int

说明

VVR 11.2及以上版本支持。

context-overflow-action

上下文长度超过限制时的行为

string

truncated-tail

可选值

  • truncated-tail:自动从尾部裁剪超出容量的数据,保留最近 max-context-size

  • truncated-head:从头部裁剪最早的数据,保留最新 max-context-size 条数据

  • skipped:直接丢弃超出容量的新数据,不更新上下文

  • truncated-tail-log:在truncated-tail的基础上,将截断上下文的行为记录在日志中

  • truncated-head-log:在truncated-head的基础上,将截断上下文的行为记录在日志中

  • skipped-log:在skipped的基础上,将截断上下文的行为记录在日志中

说明

VVR 11.2及以上版本支持。

error-handling-strategy

处理模型请求报错的策略。

string

retry

可选值:

  • retry:重试发送请求

  • failover:抛出异常

  • ignore:忽略异常、跳过该条数据

说明

VVR 11.4及以上版本支持。

retry-num

重试次数。

int

100

error-handling-strategy = retry时生效

说明

VVR 11.4及以上版本支持。

retry-fallback-strategy

达到最大重试次数后,报错的兜底策略。

string

failover

可选值:

error-handling-strategy配置除retry值时生效。

说明

VVR 11.4及以上版本支持。

retry-backoff-strategy

重试退避策略。定义了重试之间的时间间隔如何计算。

string

fixed

可选值:

  • fixed:固定间隔

  • exponential:指数间隔

说明

VVR 11.4及以上版本支持。

retry-backoff-base-interval

重试退避的基础时间间隔

duration

1 s

说明

VVR 11.4及以上版本支持。

chat/completions

Chat/Completions模型任务依赖如下参数:

参数

说明

数据类型

是否必填

默认值

备注

model

调用的服务端的具体模型。

String

支持文本生成类别的模型。

说明

根据所选模型、输入内容及输出结果的Token数量进行计算,将产生相应的费用。

system-prompt

请求回答时的系统提示。

String

"You are a helpful assistant."

曾用键名:systemPrompt(vvr 11.1版本)

说明

VVR 11.6版本以后,支持设置该参数值为空值。

temperature

控制生成文本时对每个候选词概率分布的平滑程度。

float

取值范围: [0, 2)。不建议取值为0,无意义。

较高的temperature值会降低概率分布的峰值,使得更多的低概率词被选择,生成结果更加多样化;而较低的temperature值则会增强概率分布的峰值,使得高概率词更容易被选择,生成结果更加确定。

top-p

生成过程中核采样方法的概率阈值。

float

取值越大,生成的随机性越高;取值越小,生成的确定性越高。

曾用键名:topP(vvr 11.1版本)

stop

停用词。

String

在模型生成的内容即将包含指定的字符串时自动停止。

max-tokens

指定模型可生成的最大token个数。

Integer

曾用键名:maxTokens(vvr 11.1版本)

content-type

输入数据的类型。

string

text

  • 值可取textimage_url

说明

VVR 11.6及以上版本支持。

presence-penalty

重复内容控制

double

取值范围在 -2.0 到 2.0 之间。正值会根据新词是否已出现在文本中对其进行惩罚,从而增加模型讨论新主题的可能性。

说明

VVR 11.3及以上版本支持。

n

为每条输入生成的输出条数

int

说明

VVR 11.3及以上版本支持。

seed

模型回答的随机数种子

long

如果指定,模型平台将尽力进行确定性采样,使得使用相同 seed 和参数的重复请求尽量返回相同结果。

说明

VVR 11.3及以上版本支持。

response-format

返回值格式

string

text

可选值:

  • text

  • json_object

说明

VVR 11.3及以上版本支持。

extra-header

请求中额外的http header

string

应为 JSON 格式字符串,其 JSON 中各键值对的值为字符串或字符串列表。

说明

VVR 11.3及以上版本支持。

extra-body

请求中额外的http body

string

应为 JSON 格式字符串。

说明

VVR 11.3及以上版本支持。

embeddings

Embeddings模型任务依赖如下参数:

参数

说明

数据类型

是否必填

默认值

备注

model

调用的服务端的具体模型。

String

支持文本向量模型。

说明

根据所选模型、输入内容及输出结果的Token数量进行计算,将产生相应的费用。

dimension

控制输出的向量维度。

Integer

以具体模型支持的维度取值为准。通常为1024, 768, 512等值。

查看模型

数据查询文本编辑区域,输入以下命令。

  • 展示注册的模型名字。

    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 |
-- +---------+--------+------+----------+

修改模型

数据查询文本编辑区域,输入以下命令。

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>'); -- 调整 endpoint 路径;
  • 重置模型参数,还原为默认参数值。

    ALTER MODEL m RESET ('endpoint'); -- 重置 endpoint 路径;

删除模型

数据查询文本编辑区域,输入以下命令。

DROP [TEMPORARY] MODEL [IF EXISTS] [catalog_name.][db_name.]model_name

示例

DROP MODEL m;