Todos os produtos
Search
Central de documentação

PolarDB:Fluxo de trabalho e instruções de modelos

Última atualização: Sep 17, 2026

PolarDB for AI inclui grandes modelos integrados e permite usar instruções SQL para criar modelos personalizados e carregar modelos externos. Este tópico descreve as operações com modelos, incluindo criação, avaliação e inferência.

Visão geral dos modelos

Categoria

Descrição

Modelo integrado

Execute instruções SQL no PolarDB para chamar grandes modelos de IA integrados em tarefas complexas de análise, sem sincronizar dados manualmente com outras plataformas de IA. Para mais informações, consulte:

Modelo personalizado

Se um grande modelo de IA integrado não atender aos seus requisitos de negócios, crie um modelo personalizado ajustado. Além disso, o PolarDB for AI oferece suporte à execução de modelos em contêineres confidenciais para aumentar a segurança dos dados.

O fluxo de trabalho para criar um modelo personalizado é o seguinte:

  1. Criação de modelo

  2. Avaliação de modelo

  3. Inferência de modelo

Criar um modelo

Cria um modelo de machine learning. Esse processo é assíncrono; portanto, consulte o status do modelo para confirmar sua conclusão.

Sintaxe

CREATE MODEL model_name WITH ( model_class = '', x_cols = '', y_cols='',model_parameter=()) AS (SELECT select_expr [, select_expr] ... FROM table_reference)

Parâmetros

Parâmetro

Descrição

model_name

Nome do modelo.

model_class

Tipo do modelo. Valores válidos:

x_cols

Colunas de entrada.

Nota

Separe vários nomes de coluna por vírgulas (,).

y_cols

Coluna de saída.

model_parameter

Parâmetros do modelo.

  • Se o valor de model_class for lightgbm, consulte Parameter description para obter os valores de model_parameter.

  • Se model_class estiver definido como deepfm, consulte Parameter descriptions para obter o valor de model_parameter.

  • Se model_class estiver definido como kmeans, consulte Parameter description para obter o valor de model_parameter.

  • Se model_class estiver definido como randomforestreg, consulte Parameter description para obter o valor de model_parameter.

  • Se model_class for gbrt, consulte Parameter description para obter as configurações de model_parameter.

  • Se model_class estiver definido como linearreg, consulte Parameter description para obter os valores de model_parameter.

  • Se o valor de model_class for svr, consulte Parameter description para obter o valor de model_parameter.

  • Se o valor de model_class for bst, consulte Parameter description para obter os valores de model_parameter.

select_expr

Nomes das colunas.

table_reference

Nome da tabela.

Exemplo

Crie o modelo airlines_gbm.

/*polar4ai*/CREATE MODEL airlines_gbm WITH (model_class='lightgbm', x_cols ='Airline,Flight,AirportFrom,AirportTo,DayOfWeek,Time,Length', y_cols='Delay',model_parameter=(boosting_type='gbdt', n_estimators=100, max_depth=8, num_leaves=256)) as (SELECT * FROM db4ai.airlines_train)

Resultado de exemplo:

Query OK, 0 rows affected (0.79 sec)

Implantar um modelo

Implante um modelo carregado na plataforma PolarDB for AI. Uma implantação bem-sucedida coloca o modelo online e permite inferências mais rápidas.

Sintaxe

DEPLOY MODEL model_name

Parâmetros

Parâmetro

Descrição

model_name

Nome do modelo a ser implantado.

Exemplo

Implante o modelo chamado my_model na plataforma PolarDB for AI.

/*polar4ai*/ DEPLOY MODEL my_model;

Saída de exemplo:

Query OK, 0 rows affected (0.29 sec)

Execute o comando a seguir para verificar o status do modelo:

/*polar4ai*/ SHOW MODEL my_model;

Saída de exemplo:

+-------------+-----------------------------------------------------------------------------------------------------------------------------+
| modelStatus | modelPath                                                                                                                   |
+-------------+-----------------------------------------------------------------------------------------------------------------------------+
| serving     | http://db4ai-collie-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/xxxxx.pkl?OSSAccessKeyId=xxxxxx&Expires=xxxx&Signature=xxxxxx  |
+-------------+-----------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.23 sec)

Um modelStatus com valor serving indica que a implantação foi bem-sucedida.

Visualize modelos

Nota

É possível visualizar apenas os modelos personalizados e externos criados ou carregados por você. Não é possível visualizar os modelos integrados no PolarDB for AI.

Listar modelos

Lista todos os modelos personalizados e externos no cluster atual.

Sintaxe

SHOW MODELS

Exemplo

/*polar4ai*/SHOW MODELS

Resultado de exemplo:

+-----------------------+-----------------+--------------+
| model_name            | model_class     | model_status |
+-----------------------+-----------------+--------------+
| airline_rfr           | randomforestreg | saved        |
| gbrt1                 | gbrt            | saved        |
| airline_deepfm        | deepfm          | saved        |
| airlines_gbm          | lightgbm        | saved        |
| lgbm1                 | lightgbm        | saved        |
| blackfriday_linearreg | linearreg       | saved        |
+-----------------------+-----------------+--------------+
6 rows in set (0.24 sec)

Status do modelo

Exibe o status atual de um modelo. Após criar um modelo, use este comando para verificar se o treinamento foi concluído. Um modelo pode ter um dos seguintes status:

  • training: O modelo está em treinamento.

  • loading_data: Os dados estão sendo carregados para o modelo.

  • trained: O treinamento do modelo foi concluído.

  • saved: O modelo foi salvo.

  • serving: O modelo está implantado e pronto para uso.

  • deleted: O modelo foi excluído.

Sintaxe

SHOW MODEL model_name 

Parâmetros

Parâmetro

Descrição

model_name

Nome do modelo.

Exemplo

Visualize o status atual do modelo airlines_gbm.

/*polar4ai*/SHOW MODEL airlines_gbm;

Resultado de exemplo:

+-------------+-----------------------------------------------------------------------------------------------------------------------------+
| modelStatus | modelPath                                                                                                                   |
+-------------+-----------------------------------------------------------------------------------------------------------------------------+
| saved       | http://db4ai-collie-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/xxxxx.pkl?OSSAccessKeyId=xxxxxx&Expires=xxxx&Signature=xxxxxx  |
+-------------+-----------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.23 sec)
Nota

O modelPath é válido por 100 minutos. Verifique o parâmetro Expires no modelPath para confirmar se o link ainda é válido. Caso precise acessar o link, faça isso antes que ele expire.

Detalhes do modelo

Sintaxe

DESCRIBE MODEL model_name

Parâmetros

Parâmetro

Descrição

model_name

Nome do modelo.

Exemplo

Visualize os detalhes do modelo airlines_gbm.

/*polar4ai*/DESCRIBE MODEL airlines_gbm;

Resultado de exemplo:

+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| model_name        | model_description                                                                                                                                                                                                                                                                 |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| airlines_gbm      | basic information:model_name:airlines_gbm model_class:lightgbm feature important:features,imp_gain,imp_splitAirline,0.3327,0.0376 AirportFrom,0.2178,0.1842 Time,0.1893,0.1999 AirportTo,0.1668,0.187 DayOfWeek,0.0384,0.1236 Length,0.0307,0.1269 Flight,0.0242,0.1408           |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.65 sec)

Avaliação de modelo

Avalia o desempenho de um modelo treinado.

Sintaxe

SELECT select_expr [, select_expr] ... FROM EVALUATE (MODEL model_name, SELECT select_expr_for_prediction [, select_expr_for_prediction] ... FROM table_reference ) WITH (x_cols = '', y_cols='', metrics='')

Parâmetros

Parâmetro

Descrição

select_expr

Colunas a serem exibidas nos resultados da avaliação do modelo.

model_name

Nome do modelo.

select_expr_for_prediction

Colunas a serem usadas na avaliação do modelo.

table_reference

Nome da tabela.

x_cols

Colunas de entrada usadas para criar o modelo. Separe vários nomes de coluna por vírgula (,).

y_cols

Coluna de saída usada para criar o modelo.

metrics

Métricas de avaliação. Valores válidos:

  • acc: Acurácia. Aplica-se a tarefas de classificação.

  • r2_score: Coeficiente de determinação. Aplica-se a tarefas de regressão.

  • ks: Valor KS. Mede a capacidade do modelo de separar amostras positivas e negativas. Aplica-se a tarefas de classificação.

  • auc: Valor AUC. Representa a área sob a curva ROC (Receiver Operating Characteristic). Aplica-se a tarefas de classificação.

  • Fscore: F-score. Média harmônica entre precisão e recall. Aplica-se a tarefas de classificação.

Exemplos

  1. Use o modelo airlines_gbm criado para avaliar o modelo.

    /*polar4ai*/SELECT Delay FROM evaluate(MODEL airlines_gbm, SELECT * FROM db4ai.airlines_test) WITH (x_cols = 'Airline,Flight,AirportFrom,AirportTo,DayOfWeek,Time,Length', y_cols='Delay', metrics='acc');

    Resultado de exemplo:

    +--------------------------------------+
    | task_id                              |
    +--------------------------------------+
    | df05244e-21f7-11ed-be66-xxxxxxxxxxxx |
    +--------------------------------------+
    1 row in set (0.95 sec)
  2. Execute o comando a seguir para verificar o status da tarefa.

    /*polar4ai*/SHOW TASK `df05244e-21f7-11ed-be66-xxxxxxxxxxxx`;

    Resultado de exemplo:

    +------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
    | taskStatus | filePath                                                                                                                                           | results         | startTime                  | endTime                    |
    +------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
    | finish     | http://db4ai-collie-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/pc-xxxxxxx/airlines_gbm/xxxxx.csv?OSSAccessKeyId=xxxxxx&Expires=xxxx&Signature=xxxxxx | {"acc": 0.6694} | 2022-08-22 17:22:21.122101 | 2022-08-22 17:22:39.428811 |
    +------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
    1 row in set (0.24 sec)
    Nota

    O filePath é válido por 100 minutos. Verifique o parâmetro Expires no filePath para confirmar se o link ainda é válido. Caso precise acessar o link, faça isso dentro do período de validade.

Inferência de modelo

Use um modelo treinado para realizar inferência online ou offline.

Sintaxe

SELECT select_expr [, select_expr] ... FROM PREDICT (MODEL model_name, SELECT select_expr_for_prediction [, select_expr_for_prediction] ... FROM table_reference LIMIT row_count) WITH (x_cols= '')

Parâmetros

Parâmetro

Descrição

select_expr

Colunas a serem exibidas nos resultados da inferência do modelo.

model_name

Nome do modelo.

select_expr_for_prediction

Colunas de dados de entrada a serem usadas na inferência.

table_reference

Tabela de entrada.

mode

Modo de inferência. Defina este parâmetro como async para realizar inferência offline. Se omitido, o sistema realiza inferência online.

row_count

Número de amostras a serem usadas na inferência.

x_cols

Colunas de entrada para o modelo. Separe vários nomes de coluna por vírgula (,).

Exemplos

  • Inferência online

    Use o modelo airlines_gbm para realizar inferência online.

    /*polar4ai*/SELECT Delay FROM PREDICT(MODEL airlines_gbm, SELECT * FROM db4ai.airlines_test LIMIT 10) WITH (x_cols = 'Airline,Flight,AirportFrom,AirportTo,DayOfWeek,Time,Length', y_cols='Delay');

    Resultado de exemplo:

    +-------+-------------------+
    | Delay | predicted_results |
    +-------+-------------------+
    |     1 | 0                 |
    |     0 | 0                 |
    |     0 | 0                 |
    |     0 | 0                 |
    |     0 | 0                 |
    |     0 | 0                 |
    |     1 | 0                 |
    |     0 | 0                 |
    |     0 | 0                 |
    |     1 | 0                 |
    +-------+-------------------+
    10 rows in set (0.74 sec)
  • Inferência offline

    Ao executar inferência em mais de 1.000 amostras, o PolarDB for AI retorna o seguinte erro:

    ERROR 9050 (HY000): Please limit the SQL selected data length to less than '1000' or convert to offline prediction

    Para criar uma tarefa offline, execute a seguinte instrução:

    /*polar4ai*/SELECT Delay FROM predict(MODEL airlines_gbm, SELECT * FROM db4ai.airlines_test) WITH (x_cols = 'Airline,Flight,AirportFrom,AirportTo,DayOfWeek,Time,Length', y_cols='Delay', mode='async');

    Resultado de exemplo:

    +--------------------------------------+
    | task_id                              |
    +--------------------------------------+
    | bd0c1722-21e7-11ed-94a8-xxxxxxxxxxxx |
    +--------------------------------------+
    1 row in set (0.75 sec)

    A consulta retorna o task_id da tarefa. Use esse ID para consultar o status da tarefa e a URL de download do resultado.

    /*polar4ai*/SHOW TASK `bd0c1722-21e7-11ed-94a8-xxxxxxxxxxxx`

    Resultado de exemplo:

    +------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
    | taskStatus | filePath                                                                                                                                           | results         | startTime                  | endTime                    |
    +------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
    | finish     | http://db4ai-collie-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/pc-xxxxxxx/airlines_gbm/xxxxx.csv?OSSAccessKeyId=xxxxxx&Expires=xxxx&Signature=xxxxxx |                 | 2022-08-22 14:57:51.355240 | 2022-08-22 14:58:18.316818 |
    +------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
    1 row in set (0.24 sec)
    Nota

    O filePath é válido por 100 minutos. Verifique o parâmetro Expires no filePath para confirmar se o link ainda é válido. Caso precise acessar o link, faça isso dentro do período de validade.

Avaliação e inferência offline

Nota

Uma tarefa offline é um processo em lote de longa duração que não retorna resultados em tempo real. As tarefas offline incluem avaliação e inferência offline.

Visualize tarefas

Visualize todas as tarefas offline no cluster atual.

Sintaxe

SHOW TASKS

Exemplo

Execute o comando a seguir para visualizar todas as tarefas offline no cluster atual.

/*polar4ai*/SHOW TASKS;

Resultado de exemplo:

+--------------------------------------+------------+-------------+----------------------------+----------------------------+
| task_id                              | task_type  | task_status | start_timestr              | end_timestr                |
+--------------------------------------+------------+-------------+----------------------------+----------------------------+
| 2cba0c74-1f8f-11ed-934a-xxxxxxxxxxxx | prediction | finish      | 2022-08-19 15:18:51.206829 |                            |
| 77b3a186-1f94-11ed-8eaa-xxxxxxxxxxxx | evaluation | finish      | 2022-08-19 15:56:44.465594 |                            |
| 972547a4-1fa3-11ed-9c6b-xxxxxxxxxxxx | evaluation | finish      | 2022-08-19 17:44:59.790353 | 2022-08-19 17:45:23.750100 |
| bd0c1722-21e7-11ed-94a8-xxxxxxxxxxxx | prediction | finish      | 2022-08-22 14:57:51.355240 | 2022-08-22 14:58:18.316818 |
| df05244e-21f7-11ed-be66-xxxxxxxxxxxx | evaluation | finish      | 2022-08-22 16:53:20.381577 | 2022-08-22 16:53:37.189953 |
| ec956db8-21fb-11ed-8400-xxxxxxxxxxxx | evaluation | finish      | 2022-08-22 17:22:21.122101 | 2022-08-22 17:22:39.428811 |
+--------------------------------------+------------+-------------+----------------------------+----------------------------+
9 rows in set (0.18 sec)

Visualize status da tarefa

Uma tarefa offline pode ter um dos seguintes status:

  • init: A tarefa está sendo inicializada.

  • running: A tarefa está em execução.

  • finish: A tarefa foi concluída.

  • fail: A tarefa falhou.

Sintaxe

SHOW TASK `task_id` 

Parâmetros

Parâmetro

Descrição

task_id

ID da tarefa.

Exemplo

Execute o comando a seguir para visualizar o status da tarefa com o ID df05244e-21f7-11ed-be66-xxxxxxxxxxxx.

/*polar4ai*/SHOW TASK `df05244e-21f7-11ed-be66-xxxxxxxxxxxx`

Resultado de exemplo:

+------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
| taskStatus | filePath                                                                                                                                           | results         | startTime                  | endTime                    |
+------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
| finish     | http://db4ai-collie-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/pc-xxxxxxx/airlines_gbm/xxxxx.csv?OSSAccessKeyId=xxxxxx&Expires=xxxx&Signature=xxxxxx | {"acc": 0.6694} | 2022-08-22 17:22:21.122101 | 2022-08-22 17:22:39.428811 |
+------------+----------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------------+----------------------------+
1 row in set (0.24 sec)
Nota

O filePath é válido por 100 minutos. Verifique o parâmetro Expires no filePath para confirmar se o link ainda é válido. Caso precise acessar o link, faça isso dentro do período de validade.

Excluir tarefa

Sintaxe

DROP TASK `task_id` 

Parâmetros

Parâmetro

Descrição

task_id

ID da tarefa.

Exemplo

Exclua a tarefa com o ID df05244e-21f7-11ed-be66-xxxxxxxxxxxx.

/*polar4ai*/DROP TASK `df05244e-21f7-11ed-be66-xxxxxxxxxxxx`

Excluir um modelo

Use esta instrução para excluir um modelo desnecessário.

Sintaxe

DROP MODEL model_name

Parâmetros

Parâmetro

Descrição

model_name

Nome do modelo.

Exemplo

Exclua o modelo airlines_gbm.

/*polar4ai*/DROP MODEL airlines_gbm

A exclusão bem-sucedida do modelo airlines_gbm retorna a seguinte saída:

Query OK, 0 rows affected (0.57 sec)

A Alibaba Cloud é responsável apenas pela manutenção da arquitetura subjacente e do sistema operacional fornecido. Você é responsável pelos componentes acima do sistema operacional, como os aplicativos instalados, e mantém o controle do ambiente de execução da sua instância. Além disso, atualizar o sistema operacional por conta própria pode causar efeitos adversos, incluindo tempo de inatividade. Compreenda os riscos e tome as precauções necessárias.