| | |
| | | `max_tokens` int(11) DEFAULT NULL COMMENT '最大Token', |
| | | `timeout_ms` int(11) DEFAULT NULL COMMENT '超时时间', |
| | | `streaming_enabled` tinyint(1) DEFAULT '1' COMMENT '是否启用流式响应', |
| | | `validate_status` varchar(32) DEFAULT 'NOT_TESTED' COMMENT '最近校验状态', |
| | | `last_validate_message` varchar(500) DEFAULT NULL COMMENT '最近校验信息', |
| | | `last_validate_elapsed_ms` bigint(20) DEFAULT NULL COMMENT '最近校验耗时', |
| | | `last_validate_time` datetime DEFAULT NULL COMMENT '最近校验时间', |
| | | `tenant_id` bigint(20) DEFAULT NULL COMMENT '租户', |
| | | `status` int(11) DEFAULT '1' COMMENT '状态', |
| | | `deleted` int(11) DEFAULT '0' COMMENT '删除标记', |
| | |
| | | KEY `idx_sys_ai_chat_message_session_seq` (`session_id`,`seq_no`) |
| | | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='AI 对话消息'; |
| | | |
| | | SET @ai_param_validate_status_exists := ( |
| | | SELECT COUNT(1) |
| | | FROM `information_schema`.`COLUMNS` |
| | | WHERE `TABLE_SCHEMA` = DATABASE() |
| | | AND `TABLE_NAME` = 'sys_ai_param' |
| | | AND `COLUMN_NAME` = 'validate_status' |
| | | ); |
| | | SET @ai_param_validate_status_sql := IF( |
| | | @ai_param_validate_status_exists = 0, |
| | | 'ALTER TABLE `sys_ai_param` ADD COLUMN `validate_status` varchar(32) DEFAULT ''NOT_TESTED'' COMMENT ''最近校验状态'' AFTER `streaming_enabled`', |
| | | 'SELECT 1' |
| | | ); |
| | | PREPARE ai_param_validate_status_stmt FROM @ai_param_validate_status_sql; |
| | | EXECUTE ai_param_validate_status_stmt; |
| | | DEALLOCATE PREPARE ai_param_validate_status_stmt; |
| | | |
| | | SET @ai_param_last_validate_message_exists := ( |
| | | SELECT COUNT(1) |
| | | FROM `information_schema`.`COLUMNS` |
| | | WHERE `TABLE_SCHEMA` = DATABASE() |
| | | AND `TABLE_NAME` = 'sys_ai_param' |
| | | AND `COLUMN_NAME` = 'last_validate_message' |
| | | ); |
| | | SET @ai_param_last_validate_message_sql := IF( |
| | | @ai_param_last_validate_message_exists = 0, |
| | | 'ALTER TABLE `sys_ai_param` ADD COLUMN `last_validate_message` varchar(500) DEFAULT NULL COMMENT ''最近校验信息'' AFTER `validate_status`', |
| | | 'SELECT 1' |
| | | ); |
| | | PREPARE ai_param_last_validate_message_stmt FROM @ai_param_last_validate_message_sql; |
| | | EXECUTE ai_param_last_validate_message_stmt; |
| | | DEALLOCATE PREPARE ai_param_last_validate_message_stmt; |
| | | |
| | | SET @ai_param_last_validate_elapsed_exists := ( |
| | | SELECT COUNT(1) |
| | | FROM `information_schema`.`COLUMNS` |
| | | WHERE `TABLE_SCHEMA` = DATABASE() |
| | | AND `TABLE_NAME` = 'sys_ai_param' |
| | | AND `COLUMN_NAME` = 'last_validate_elapsed_ms' |
| | | ); |
| | | SET @ai_param_last_validate_elapsed_sql := IF( |
| | | @ai_param_last_validate_elapsed_exists = 0, |
| | | 'ALTER TABLE `sys_ai_param` ADD COLUMN `last_validate_elapsed_ms` bigint(20) DEFAULT NULL COMMENT ''最近校验耗时'' AFTER `last_validate_message`', |
| | | 'SELECT 1' |
| | | ); |
| | | PREPARE ai_param_last_validate_elapsed_stmt FROM @ai_param_last_validate_elapsed_sql; |
| | | EXECUTE ai_param_last_validate_elapsed_stmt; |
| | | DEALLOCATE PREPARE ai_param_last_validate_elapsed_stmt; |
| | | |
| | | SET @ai_param_last_validate_time_exists := ( |
| | | SELECT COUNT(1) |
| | | FROM `information_schema`.`COLUMNS` |
| | | WHERE `TABLE_SCHEMA` = DATABASE() |
| | | AND `TABLE_NAME` = 'sys_ai_param' |
| | | AND `COLUMN_NAME` = 'last_validate_time' |
| | | ); |
| | | SET @ai_param_last_validate_time_sql := IF( |
| | | @ai_param_last_validate_time_exists = 0, |
| | | 'ALTER TABLE `sys_ai_param` ADD COLUMN `last_validate_time` datetime DEFAULT NULL COMMENT ''最近校验时间'' AFTER `last_validate_elapsed_ms`', |
| | | 'SELECT 1' |
| | | ); |
| | | PREPARE ai_param_last_validate_time_stmt FROM @ai_param_last_validate_time_sql; |
| | | EXECUTE ai_param_last_validate_time_stmt; |
| | | DEALLOCATE PREPARE ai_param_last_validate_time_stmt; |
| | | |
| | | UPDATE `sys_ai_param` |
| | | SET `validate_status` = 'NOT_TESTED' |
| | | WHERE `validate_status` IS NULL OR `validate_status` = ''; |
| | | |
| | | SET @builtin_code_exists := ( |
| | | SELECT COUNT(1) |
| | | FROM `information_schema`.`COLUMNS` |