文章导入知识库

This commit is contained in:
2026-01-12 13:52:19 +08:00
parent 26df740dd0
commit 12dca45b4d
20 changed files with 1371 additions and 15 deletions

View File

@@ -0,0 +1,20 @@
-- 为tb_resource表添加知识库相关字段
-- 执行前请确认数据库连接正确
USE school_news;
-- 添加知识库相关字段
ALTER TABLE `tb_resource`
ADD COLUMN `is_in_knowledge` TINYINT(1) DEFAULT 0 COMMENT '是否已导入知识库' AFTER `is_banner`,
ADD COLUMN `knowledge_file_id` VARCHAR(50) DEFAULT NULL COMMENT '知识库文件ID' AFTER `is_in_knowledge`,
ADD COLUMN `knowledge_import_time` TIMESTAMP NULL DEFAULT NULL COMMENT '知识库导入时间' AFTER `knowledge_file_id`;
-- 添加索引
ALTER TABLE `tb_resource` ADD INDEX `idx_is_in_knowledge` (`is_in_knowledge`);
-- 验证字段添加成功
SELECT COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'school_news'
AND TABLE_NAME = 'tb_resource'
AND COLUMN_NAME IN ('is_in_knowledge', 'knowledge_file_id', 'knowledge_import_time');

View File

@@ -19,6 +19,9 @@ CREATE TABLE `tb_resource` (
`is_audited` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否已审核',
`is_recommend` TINYINT(1) DEFAULT 0 COMMENT '是否推荐',
`is_banner` TINYINT(1) DEFAULT 0 COMMENT '是否轮播',
`is_in_knowledge` TINYINT(1) DEFAULT 0 COMMENT '是否已导入知识库',
`knowledge_file_id` VARCHAR(50) DEFAULT NULL COMMENT '知识库文件ID',
`knowledge_import_time` TIMESTAMP NULL DEFAULT NULL COMMENT '知识库导入时间',
`publish_time` TIMESTAMP NULL DEFAULT NULL COMMENT '发布时间',
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
@@ -31,7 +34,8 @@ CREATE TABLE `tb_resource` (
KEY `idx_tag` (`tag_id`),
KEY `idx_status` (`status`),
KEY `idx_publish_time` (`publish_time`),
KEY `idx_view_count` (`view_count`)
KEY `idx_view_count` (`view_count`),
KEY `idx_is_in_knowledge` (`is_in_knowledge`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='资源表';

View File

@@ -18,8 +18,14 @@ INSERT INTO `tb_sys_config` (`id`, `config_key`, `config_name`, `config_value`,
('21', 'dify.upload.maxSize', '最大文件大小', '50', 'integer', 'input', 'Dify配置', '最大文件大小MB', '请输入最大文件大小', '单个文件上传的最大大小限制', NULL, 1, 500, 'MB', NULL, 21, 1, '1', now()),
-- Dify知识库配置
('30', 'dify.dataset.defaultIndexingTechnique', '默认索引方式', 'high_quality', 'string', 'select', 'Dify配置', '默认索引方式', NULL, '知识库文档的默认索引方式', NULL, NULL, NULL, NULL, 'high_quality,economy', 30, 1, '1', now()),
('31', 'dify.dataset.defaultEmbeddingModel', '默认Embedding模型', 'text-embedding-ada-002', 'string', 'input', 'Dify配置', '默认Embedding模型', '请输入Embedding模型名称', '知识库使用的默认Embedding模型', NULL, NULL, NULL, NULL, NULL, 31, 1, '1', now()),
('30', 'dify.dataset.defaultIndexingTechnique', '默认索引方式', 'high_quality', 'string', 'select', 'Dify配置', '默认索引方式', NULL, '知识库文档的默认索引方式high_quality高质量或 economy经济', NULL, NULL, NULL, NULL, 'high_quality,economy', 30, 1, '1', now()),
('31', 'dify.dataset.defaultEmbeddingModel', '默认Embedding模型', 'Qwen/Qwen3-Embedding-8B', 'string', 'input', 'Dify配置', '默认Embedding模型', '请输入Embedding模型名称', '知识库使用的默认Embedding模型名称', NULL, NULL, NULL, NULL, NULL, 31, 1, '1', now()),
('32', 'dify.dataset.embeddingModelProvider', 'Embedding模型供应商', 'langgenius/siliconflow/siliconflow', 'string', 'input', 'Dify配置', 'Embedding模型供应商', '请输入模型供应商标识', 'Embedding模型的供应商标识', NULL, NULL, NULL, NULL, NULL, 32, 1, '1', now()),
('33', 'dify.dataset.rerankingEnable', '启用Rerank', 'true', 'boolean', 'switch', 'Dify配置', '是否启用Rerank重排序', NULL, '启用后会对检索结果进行重排序提升相关性', NULL, NULL, NULL, NULL, NULL, 33, 1, '1', now()),
('34', 'dify.dataset.rerankModel', 'Rerank模型', 'Qwen/Qwen3-Reranker-8B', 'string', 'input', 'Dify配置', 'Rerank重排序模型', '请输入Rerank模型名称', '知识库使用的Rerank模型名称', NULL, NULL, NULL, NULL, NULL, 34, 1, '1', now()),
('35', 'dify.dataset.rerankModelProvider', 'Rerank模型供应商', 'langgenius/siliconflow/siliconflow', 'string', 'input', 'Dify配置', 'Rerank模型供应商', '请输入模型供应商标识', 'Rerank模型的供应商标识', NULL, NULL, NULL, NULL, NULL, 35, 1, '1', now()),
('36', 'dify.dataset.retrievalTopK', '检索TopK', '5', 'integer', 'input', 'Dify配置', '检索返回的最大文档数', '请输入TopK值1-20', '知识库检索时返回的最相关文档数量', NULL, 1, 20, NULL, NULL, 36, 1, '1', now()),
('37', 'dify.dataset.retrievalScoreThreshold', '相似度阈值', '0.5', 'double', 'input', 'Dify配置', '检索相似度阈值', '请输入阈值0.0-1.0', '低于此阈值的文档将被过滤', NULL, 0, 1, NULL, NULL, 37, 1, '1', now()),
-- 基础配置Logo、系统信息
('100', 'system.name', '系统名称', '红色思政学习平台', 'string', 'input', '基础配置', '系统显示名称', '请输入系统名称', '系统对外显示的名称', NULL, NULL, NULL, NULL, NULL, 100, 1, '1', now()),