-- ==================== 迁移脚本:添加模型功能字段 ==================== -- 文件: 033_add_model_features.sql -- 描述: 为models表添加is_search和is_thinking字段,标识模型支持的功能 -- 作者: AI Assistant -- 日期: 2025-01-19 -- 1. 添加 is_search 字段(是否支持网页搜索) ALTER TABLE aigcspace.models ADD COLUMN is_search BOOLEAN NOT NULL DEFAULT FALSE; -- 2. 添加 is_thinking 字段(是否支持思考模式) ALTER TABLE aigcspace.models ADD COLUMN is_thinking BOOLEAN NOT NULL DEFAULT FALSE; -- 3. 添加字段注释 COMMENT ON COLUMN aigcspace.models.is_search IS '是否支持网页搜索功能'; COMMENT ON COLUMN aigcspace.models.is_thinking IS '是否支持思考模式'; -- 4. 为新字段添加索引(提升查询性能) CREATE INDEX idx_models_is_search ON aigcspace.models(is_search); CREATE INDEX idx_models_is_thinking ON aigcspace.models(is_thinking); -- ==================== 更新支持搜索功能的模型 ==================== -- 通义千问系列模型 UPDATE aigcspace.models SET is_search = TRUE WHERE title IN ( 'qwen3-max', 'qwen3-max-2025-09-23', 'qwen3-max-preview', 'qwen-max', 'qwen-max-latest', 'qwen-max-2024-09-19', 'qwen-plus', 'qwen-plus-latest', 'qwen-plus-2025-07-14', 'qwen-flash', 'qwen-flash-2025-07-28', 'qwen-turbo', 'qwen-turbo-latest', 'qwen-turbo-2025-07-15', 'qwq-plus' ); -- 第三方模型 UPDATE aigcspace.models SET is_search = TRUE WHERE title IN ( 'deepseek-v3.2', 'deepseek-v3.2-exp', 'deepseek-v3.1', 'deepseek-r1-0528', 'deepseek-r1', 'deepseek-v3', 'Moonshot-Kimi-K2-Instruct' ); -- ==================== 更新支持思考模式的模型 ==================== -- 通义千问系列(大部分支持思考模式) UPDATE aigcspace.models SET is_thinking = TRUE WHERE title IN ( 'qwen3-max', 'qwen3-max-2025-09-23', 'qwen3-max-preview', 'qwen-max', 'qwen-max-latest', 'qwen-max-2024-09-19', 'qwen-plus', 'qwen-plus-latest', 'qwen-plus-2025-07-14', 'qwq-plus' ); -- DeepSeek系列(专门的推理模型,支持思考模式) UPDATE aigcspace.models SET is_thinking = TRUE WHERE title IN ( 'deepseek-r1-0528', 'deepseek-r1', 'deepseek-v3.2', 'deepseek-v3.2-exp', 'deepseek-v3.1', 'deepseek-v3' ); -- ==================== 验证迁移结果 ==================== -- 输出迁移执行结果 SELECT '迁移完成' as status, COUNT(*) as total_models, SUM(CASE WHEN is_search = TRUE THEN 1 ELSE 0 END) as search_supported, SUM(CASE WHEN is_thinking = TRUE THEN 1 ELSE 0 END) as thinking_supported, SUM(CASE WHEN is_search = TRUE AND is_thinking = TRUE THEN 1 ELSE 0 END) as both_supported FROM aigcspace.models;