From df4b0653f261da7bd35d6f2437b17b6f374c3654 Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Wed, 6 Nov 2024 13:36:28 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E6=B7=BB=E5=8A=A0=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E7=9A=84=E6=95=B0=E6=8D=AE=E5=BA=93=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker/docker-compose/sql/20241105/nx_llm.sql | 341 ++++++++++++++++++ .../sql/20241105/tables_xxl_job.sql | 122 +++++++ 2 files changed, 463 insertions(+) create mode 100644 docker/docker-compose/sql/20241105/nx_llm.sql create mode 100644 docker/docker-compose/sql/20241105/tables_xxl_job.sql diff --git a/docker/docker-compose/sql/20241105/nx_llm.sql b/docker/docker-compose/sql/20241105/nx_llm.sql new file mode 100644 index 0000000..139351e --- /dev/null +++ b/docker/docker-compose/sql/20241105/nx_llm.sql @@ -0,0 +1,341 @@ +-- case_evidence +ALTER TABLE `nx_llm`.`case_evidence` ADD COLUMN `process_status` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '流程状态 0:待处理 1:处理中 2:处理成功 3:处理失败' AFTER `evidence_type`; +ALTER TABLE `nx_llm`.`case_evidence` ADD COLUMN `append_processing` int(11) NULL DEFAULT NULL COMMENT '追加文件处理进度 0: 无处理任务 1:有处理任务' AFTER `process_status`; +ALTER TABLE `nx_llm`.`case_evidence` ADD COLUMN `directory_id` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '目录id' AFTER `append_processing`; +ALTER TABLE `nx_llm`.`case_evidence` ADD COLUMN `title` varchar(256) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '标题' AFTER `directory_id`; +ALTER TABLE `nx_llm`.`case_evidence` ADD COLUMN `property` json NULL COMMENT '属性信息' AFTER `title`; + +-- com_dictionary +ALTER TABLE `nx_llm`.`com_dictionary` MODIFY COLUMN `name` varchar(2048) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'code项' AFTER `id`; +ALTER TABLE `nx_llm`.`com_dictionary` MODIFY COLUMN `code` varchar(2048) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'code项' AFTER `name`; + +-- evidence_file +ALTER TABLE `nx_llm`.`evidence_file` ADD COLUMN `rank` int(11) NULL DEFAULT 0 COMMENT '顺序 升序排序' AFTER `file_id`; +ALTER TABLE `nx_llm`.`evidence_file` ADD COLUMN `directory_id` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '目录id' AFTER `rank`; +ALTER TABLE `nx_llm`.`evidence_file` ADD COLUMN `batch_no` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '批次号' AFTER `directory_id`; + +-- model_atomic_index +ALTER TABLE `nx_llm`.`model_atomic_index` MODIFY COLUMN `query_lang` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '查询语句' AFTER `judge_result`; +ALTER TABLE `nx_llm`.`model_atomic_index` ADD COLUMN `prompt_id` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '提示词id' AFTER `query_lang`; +ALTER TABLE `nx_llm`.`model_atomic_index` ADD COLUMN `category_id` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类id' AFTER `prompt_id`; +ALTER TABLE `nx_llm`.`model_atomic_index` ADD COLUMN `properties` varchar(1024) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '属性 多个属性用逗号隔开' AFTER `category_id`; + +-- model_atomic_result +ALTER TABLE `nx_llm`.`model_atomic_result` ADD COLUMN `evidence_id` varchar(2048) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '证据ID' AFTER `atomic_result`; +ALTER TABLE `nx_llm`.`model_atomic_result` MODIFY COLUMN `record_split_id` varchar(2048) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '笔录片段id' AFTER `evidence_id`; + +-- model_index +ALTER TABLE `nx_llm`.`model_index` ADD COLUMN `index_rule` json NULL COMMENT '指标规则' AFTER `judge_logic`; + +-- note_prompt +ALTER TABLE `nx_llm`.`note_prompt` ADD COLUMN `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `update_time`; +ALTER TABLE `nx_llm`.`note_prompt` ADD COLUMN `case_type` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '1' AFTER `name`; +ALTER TABLE `nx_llm`.`note_prompt` ADD COLUMN `type` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '3' AFTER `case_type`; +ALTER TABLE `nx_llm`.`note_prompt` ADD COLUMN `extract_attributes` json NULL AFTER `type`; +ALTER TABLE `nx_llm`.`note_prompt` ADD COLUMN `evidence_category_id` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `extract_attributes`; + +-- triple_info +ALTER TABLE `nx_llm`.`triple_info` COMMENT = '三元组信息表'; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `start_node` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开始节点' AFTER `id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `end_node` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '结束节点' AFTER `start_node`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `relation` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '关系' AFTER `end_node`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `case_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '案件ID' AFTER `relation`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `record_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '笔录ID' AFTER `case_id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `record_split_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '笔录片段id' AFTER `record_id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `submit_prompt` varchar(10240) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '实际提交给大模型的提示词' AFTER `record_split_id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `add_neo4j` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '是否生成图谱' AFTER `submit_prompt`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间' AFTER `add_neo4j`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `start_node_graph_id` bigint(20) NULL DEFAULT NULL COMMENT '起始节点图ID' AFTER `create_time`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `rel_graph_id` bigint(20) NULL DEFAULT NULL COMMENT '关系ID(neo4j关系id)' AFTER `start_node_graph_id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `end_node_graph_id` bigint(20) NULL DEFAULT NULL COMMENT '结束节点图ID' AFTER `rel_graph_id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `start_node_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '开始节点类型(neo4j节点类型)' AFTER `end_node_graph_id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `end_node_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '结束节点类型(neo4j节点类型)' AFTER `start_node_type`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `create_user_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人ID' AFTER `end_node_type`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `update_user_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人' AFTER `create_user_id`; +ALTER TABLE `nx_llm`.`triple_info` MODIFY COLUMN `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间' AFTER `update_user_id`; + +CREATE TABLE `nx_llm`.`evidence_category` ( + `id` int(64) NOT NULL AUTO_INCREMENT COMMENT '主键id', + `code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '编码', + `case_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '案件类型', + `category_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '分类名', + `icon_url` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '图标路径', + `parent_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '父级类别id', + `create_user_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人ID', + `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `update_user_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人', + `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '证据类别表' ROW_FORMAT = Dynamic; + +CREATE TABLE `nx_llm`.`evidence_directory` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键id', + `case_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '案件id', + `directory_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '目录名', + `category_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '证据分类id,对应evidence_category表的id', + `parent_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '上级目录id', + `provider` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '提供人', + `remark` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '备注', + `create_user_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人ID', + `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `update_user_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人', + `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `evidence_directory_case_id_index`(`case_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '证据目录表' ROW_FORMAT = DYNAMIC; + +-- evidence_property +DROP TABLE IF EXISTS `nx_llm`.`evidence_property`; + +-- com_dictionary +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES (NULL, '提示词类型', 0, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +SET @last_id = LAST_INSERT_ID(); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('1', '结构化推理', @last_id, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('2', '图谱推理', @last_id, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('3', '分类', @last_id, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); + +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES (NULL, '提示词属性值类型', 0, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +SET @last_id = LAST_INSERT_ID(); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('1', '文本', @last_id, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('2', '数字', @last_id, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('3', '日期', @last_id, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); + +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES (NULL, '提示词原型默认文本', 0, 'prompt_prototype_default_text', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +SET @last_id = LAST_INSERT_ID(); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('1', '请根据属性定义从源文本中提取属性: + +示例文本: +" +甲方:张三公司 +乙方: +数量:5000吨水泥 +合同金额:8346元 +支付时间:2022年11月30日 +履行期限:2022年12月1日至2023年12月1日 +签订日期:2022年11月23日 +" + +示例结果: +{ + "甲方名称": "张三公司", + "乙方名称": "", + "数量": "5000吨水泥", + "合同金额": "8346.00", + "支付时间": "2022-11-30", + "履行期限": "2022年12月1日至2023年12月1日", + "签订日期": "2022-11-23" +} + +源文本: +{source_text} + +属性定义: +{attr_define} + +### 注意事项: +1. 将结果以JSON格式返回。不需要进行解释。 +2. 如果某字段提取不到,则返回""。 +3. 日期格式为yyyy-MM-dd,数字格式返回保留两位小数。 +4. 值为文本类型的数据,尽量使用原文中的文字。 +5. 只可以使用原文中的文字,不可以自行添加内容。 + +回溯你输出的结果,确保你的输出结果符合json格式。', @last_id, 'prompt_prototype_default_text', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); + +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('2', '信息抽取任务:从源文本内容中根据给定头实体类型、尾实体类型和关系,抽取三元组。 +在信息抽取时,请务必严格遵循以下要求: +1. 精准理解需要分析的文本内容,确保提取的信息准确无误、合理恰当。 +2. 只提取给定的实体类型和关系,不要提取给定关系和实体之外的三元组。 +3. 遵循常见的语义和逻辑规则,杜绝过度解读或不合理的关系推断。 +4. 示例只是帮助你理解用户预期的三元组提取结果,不要提取示例中的实体和关系。 +5. 提取之后,再检查一遍,提取的实体和关系与给定实体类型和关系对应。 +给定的头实体类型为"{headEntityType}";给定的尾实体类型为"{tailEntityType}",给定的关系为"{relation}"。 +请仔细分析以下的文本内容,精准找出符合给定关系且头尾实体类型相符的三元组,并进行提取。如果没有识别给定的三元组关系,请返回json:{"result":[]}。 +--- +示例: +需要分析提取的示例文本内容如下: +办案警官问:描述一下事情的经过。 行为人小明答:我去年拿合同款买了一些金戒指还有项链送给老婆。 +返回结果:{"result":[{"headEntity": {"type": "{headEntityType}","name":"小明"},"relation": "{relation}","tailEntity": {"type": "{tailEntityType}","name": "金戒指和项链"}}]}。 +--- +源文本: +{question} +{answer} +--- +返回格式为必须为以下的json格式: +{"result":[{"headEntity": {"type": "{headEntityType}","name":"提取到的头实体内容1"},"relation": "{relation}","tailEntity": {"type": "{tailEntityType}","name": "提取到的尾实体内容1"}}]}', @last_id, 'prompt_prototype_default_text', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); + +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('3', '分类任务: 将对话笔录文本进行分类。 +目标: 将给定的对话分配到预定义的类别中 +预定义类别为:{typeContext}。 +说明: 提供一段对话笔记录文本,分类器应该识别出对话的主题,并将其归类到上述类别中的一个或多个。 +--- +示例输入: +办案警官问:你和上述的这些受害人签订协议之后是否实际履行合同? +行为人XXX回答:我和他们签订合同就是为了骗他们相信我,我就是伪造的一些假合同,等我把他们的钱骗到手之后我就不会履行合同。 +预期输出: {"result":[{"type":"合同和协议","explain":"行为人XXX提到签订合同"},{"type":"虚假信息和伪造","explain":"行为人XXX提到合同是假合同"}]} +--- +任务要求: +1. 分类器应当准确地识别对话的主题,分类来自于预定义的类别。 +2. 分类器应该实事求是按照对话进行分类,不要有过多的推测。 +2. 如果一段对话笔记录包含多个主题,请选择最相关的类别,最多可选择三个分类。 +3. 如果不涉及任何分类则回复{"result":[]} +--- +以下为问答对内容: +{question} +{answer} +--- +返回格式为json,字段名要严格一致:{"result":[{"type":"分类1","explain":"分类原因"},{"type":"分类2","explain":"分类原因"}]}', @last_id, 'prompt_prototype_default_text', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); + + + +-- note_prompt +INSERT INTO `nx_llm`.`note_prompt` (`id`, `prompt`, `prompt_bak`, `start_entity_type`, `start_entity_template`, `rel_type`, `rel_template`, `end_entity_type`, `end_entity_template`, `create_user_id`, `create_time`, `update_user_id`, `update_time`, `name`, `case_type`, `type`, `extract_attributes`, `evidence_category_id`) VALUES (UUID(), '请根据属性定义从源文本中提取属性: + +示例文本: +" +甲方:张三公司 +乙方: +数量:5000吨水泥 +合同金额:8346元 +支付时间:2022年11月30日 +履行期限:2022年12月1日至2023年12月1日 +签订日期:2022年11月23日 +" + +示例结果: +{ + "甲方名称": "张三公司", + "乙方名称": "", + "数量": "5000吨水泥", + "合同金额": "8346.00", + "支付时间": "2022-11-30", + "履行期限": "2022年12月1日至2023年12月1日", + "签订日期": "2022-11-23" +} + +源文本: +{source_text} + +属性定义: +{attr_define} + +### 注意事项: +1. 将结果以JSON格式返回。不需要进行解释。 +2. 如果某字段提取不到,则返回""。 +3. 日期格式为yyyy-MM-dd,数字格式返回保留两位小数。 +4. 值为文本类型的数据,尽量使用原文中的文字。 +5. 只可以使用原文中的文字,不可以自行添加内容。 + +回溯你输出的结果,确保你的输出结果符合json格式。', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL, '合同协议', '1', '1', '[{"attrName": "甲方", "attrValue": null, "attrValueType": "1"}, {"attrName": "乙方", "attrValue": null, "attrValueType": "1"}, {"attrName": "丙方", "attrValue": null, "attrValueType": "1"}, {"attrName": "资质要求", "attrValue": null, "attrValueType": "1"}, {"attrName": "合同标的物", "attrValue": null, "attrValueType": "1"}, {"attrName": "数量", "attrValue": null, "attrValueType": "1"}, {"attrName": "金额", "attrValue": null, "attrValueType": "2"}, {"attrName": "支付方式", "attrValue": null, "attrValueType": "1"}, {"attrName": "支付时间", "attrValue": null, "attrValueType": "3"}, {"attrName": "履行期限", "attrValue": null, "attrValueType": "1"}, {"attrName": "履行地点", "attrValue": null, "attrValueType": "1"}, {"attrName": "违约责任", "attrValue": null, "attrValueType": "1"}]', 7); + +INSERT INTO `nx_llm`.`note_prompt` (`id`, `prompt`, `prompt_bak`, `start_entity_type`, `start_entity_template`, `rel_type`, `rel_template`, `end_entity_type`, `end_entity_template`, `create_user_id`, `create_time`, `update_user_id`, `update_time`, `name`, `case_type`, `type`, `extract_attributes`, `evidence_category_id`) VALUES (UUID(), '请根据属性定义从源文本中提取属性: + +示例文本: +" +甲方:张三公司 +乙方: +数量:5000吨水泥 +合同金额:8346元 +支付时间:2022年11月30日 +履行期限:2022年12月1日至2023年12月1日 +签订日期:2022年11月23日 +" + +示例结果: +{ + "甲方名称": "张三公司", + "乙方名称": "", + "数量": "5000吨水泥", + "合同金额": "8346.00", + "支付时间": "2022-11-30", + "履行期限": "2022年12月1日至2023年12月1日", + "签订日期": "2022-11-23" +} + +源文本: +{source_text} + +属性定义: +{attr_define} + +### 注意事项: +1. 将结果以JSON格式返回。不需要进行解释。 +2. 如果某字段提取不到,则返回""。 +3. 日期格式为yyyy-MM-dd,数字格式返回保留两位小数。 +4. 值为文本类型的数据,尽量使用原文中的文字。 +5. 只可以使用原文中的文字,不可以自行添加内容。 + +回溯你输出的结果,确保你的输出结果符合json格式。', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL, '银行流水', '1', '1', '[{"attrName": "账户信息", "attrValue": null, "attrValueType": "1"}, {"attrName": "对方账户信息", "attrValue": null, "attrValueType": "1"}, {"attrName": "金额", "attrValue": null, "attrValueType": "2"}, {"attrName": "交易时间", "attrValue": null, "attrValueType": "3"}, {"attrName": "收入支出标识", "attrValue": null, "attrValueType": "1"}, {"attrName": "摘要", "attrValue": null, "attrValueType": "1"}]', 8); + +INSERT INTO `nx_llm`.`note_prompt` (`id`, `prompt`, `prompt_bak`, `start_entity_type`, `start_entity_template`, `rel_type`, `rel_template`, `end_entity_type`, `end_entity_template`, `create_user_id`, `create_time`, `update_user_id`, `update_time`, `name`, `case_type`, `type`, `extract_attributes`, `evidence_category_id`) VALUES (UUID(), '请根据属性定义从源文本中提取属性: + +示例文本: +" +甲方:张三公司 +乙方: +数量:5000吨水泥 +合同金额:8346元 +支付时间:2022年11月30日 +履行期限:2022年12月1日至2023年12月1日 +签订日期:2022年11月23日 +" + +示例结果: +{ + "甲方名称": "张三公司", + "乙方名称": "", + "数量": "5000吨水泥", + "合同金额": "8346.00", + "支付时间": "2022-11-30", + "履行期限": "2022年12月1日至2023年12月1日", + "签订日期": "2022-11-23" +} + +源文本: +{source_text} + +属性定义: +{attr_define} + +### 注意事项: +1. 将结果以JSON格式返回。不需要进行解释。 +2. 如果某字段提取不到,则返回""。 +3. 日期格式为yyyy-MM-dd,数字格式返回保留两位小数。 +4. 值为文本类型的数据,尽量使用原文中的文字。 +5. 只可以使用原文中的文字,不可以自行添加内容。 + +回溯你输出的结果,确保你的输出结果符合json格式。', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL, '支付凭证', '1', '1', '[{"attrName": "客户姓名", "attrValue": null, "attrValueType": "1"}, {"attrName": "卡号/账号", "attrValue": null, "attrValueType": "1"}, {"attrName": "支付时间", "attrValue": null, "attrValueType": "3"}, {"attrName": "金额", "attrValue": null, "attrValueType": "2"}]', 9); + + +UPDATE note_prompt +SET name = CONCAT(IFNULL(start_entity_type, '无'), '-', IFNULL(rel_type, '无'), '-', IFNULL(end_entity_type, '无')), type = 2 +WHERE start_entity_type IS NOT NULL AND rel_type IS NOT NULL AND end_entity_type IS NOT NULL; +-- ------------------------------ + + + +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES (NULL, '提示词类型', 0, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +SET @last_id = LAST_INSERT_ID(); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('1', '结构化推理', @last_id, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('2', '图谱推理', @last_id, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('3', '分类', @last_id, 'prompt_type', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); + +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES (NULL, '提示词属性值类型', 0, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +SET @last_id = LAST_INSERT_ID(); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('1', '文本', @last_id, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('2', '数字', @last_id, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); +INSERT INTO `nx_llm`.`com_dictionary` (`code`, `name`, `pid`, `type`, `status`, `note`, `priority`, `creator`, `update_time`, `create_time`, `updater`, `data_status`, `create_user_id`, `update_user_id`) VALUES ('3', '日期', @last_id, 'prompt_attribute_valuetype', '1', NULL, 0, NULL, NULL, CURRENT_TIMESTAMP, NULL, '1', NULL, NULL); + +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (1, NULL, '1', '书证', NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (2, NULL, '1', '电子证据', NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (3, NULL, '1', '物证', NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (4, NULL, '1', '鉴定意见', NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (5, NULL, '1', '视听资料', NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (6, NULL, '1', '勘验笔录', NULL, NULL, NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (7, NULL, '1', '买卖合同', NULL, '1', NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (8, NULL, '1', '银行流水', NULL, '2', NULL, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO `nx_llm`.`evidence_category` (`id`, `code`, `case_type`, `category_name`, `icon_url`, `parent_id`, `create_user_id`, `create_time`, `update_user_id`, `update_time`) VALUES (9, NULL, '1', '支付凭证', NULL, '2', NULL, CURRENT_TIMESTAMP, NULL, NULL); + +INSERT INTO nx_llm.evidence_category (id, code, case_type, category_name, icon_url, parent_id, create_user_id, create_time, update_user_id, update_time) VALUES (11, null, '1', '项目合同', null, '1', null, CURRENT_TIMESTAMP, NULL, NULL); +INSERT INTO nx_llm.evidence_category (id, code, case_type, category_name, icon_url, parent_id, create_user_id, create_time, update_user_id, update_time) VALUES (19, null, '1', '公文书证', null, '1', null, CURRENT_TIMESTAMP, NULL, NULL); + + diff --git a/docker/docker-compose/sql/20241105/tables_xxl_job.sql b/docker/docker-compose/sql/20241105/tables_xxl_job.sql new file mode 100644 index 0000000..b3bd8df --- /dev/null +++ b/docker/docker-compose/sql/20241105/tables_xxl_job.sql @@ -0,0 +1,122 @@ +# +# XXL-JOB v2.4.2-SNAPSHOT +# Copyright (c) 2015-present, xuxueli. + +CREATE database if NOT EXISTS `xxl-job` default character set utf8mb4 collate utf8mb4_unicode_ci; +use `xxl-job`; + +SET NAMES utf8mb4; + +CREATE TABLE `xxl_job_info` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `job_group` int(11) NOT NULL COMMENT '执行器主键ID', + `job_desc` varchar(255) NOT NULL, + `add_time` datetime DEFAULT NULL, + `update_time` datetime DEFAULT NULL, + `author` varchar(64) DEFAULT NULL COMMENT '作者', + `alarm_email` varchar(255) DEFAULT NULL COMMENT '报警邮件', + `schedule_type` varchar(50) NOT NULL DEFAULT 'NONE' COMMENT '调度类型', + `schedule_conf` varchar(128) DEFAULT NULL COMMENT '调度配置,值含义取决于调度类型', + `misfire_strategy` varchar(50) NOT NULL DEFAULT 'DO_NOTHING' COMMENT '调度过期策略', + `executor_route_strategy` varchar(50) DEFAULT NULL COMMENT '执行器路由策略', + `executor_handler` varchar(255) DEFAULT NULL COMMENT '执行器任务handler', + `executor_param` varchar(512) DEFAULT NULL COMMENT '执行器任务参数', + `executor_block_strategy` varchar(50) DEFAULT NULL COMMENT '阻塞处理策略', + `executor_timeout` int(11) NOT NULL DEFAULT '0' COMMENT '任务执行超时时间,单位秒', + `executor_fail_retry_count` int(11) NOT NULL DEFAULT '0' COMMENT '失败重试次数', + `glue_type` varchar(50) NOT NULL COMMENT 'GLUE类型', + `glue_source` mediumtext COMMENT 'GLUE源代码', + `glue_remark` varchar(128) DEFAULT NULL COMMENT 'GLUE备注', + `glue_updatetime` datetime DEFAULT NULL COMMENT 'GLUE更新时间', + `child_jobid` varchar(255) DEFAULT NULL COMMENT '子任务ID,多个逗号分隔', + `trigger_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '调度状态:0-停止,1-运行', + `trigger_last_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '上次调度时间', + `trigger_next_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '下次调度时间', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `xxl_job_log` ( + `id` bigint(20) NOT NULL AUTO_INCREMENT, + `job_group` int(11) NOT NULL COMMENT '执行器主键ID', + `job_id` int(11) NOT NULL COMMENT '任务,主键ID', + `executor_address` varchar(255) DEFAULT NULL COMMENT '执行器地址,本次执行的地址', + `executor_handler` varchar(255) DEFAULT NULL COMMENT '执行器任务handler', + `executor_param` varchar(512) DEFAULT NULL COMMENT '执行器任务参数', + `executor_sharding_param` varchar(20) DEFAULT NULL COMMENT '执行器任务分片参数,格式如 1/2', + `executor_fail_retry_count` int(11) NOT NULL DEFAULT '0' COMMENT '失败重试次数', + `trigger_time` datetime DEFAULT NULL COMMENT '调度-时间', + `trigger_code` int(11) NOT NULL COMMENT '调度-结果', + `trigger_msg` text COMMENT '调度-日志', + `handle_time` datetime DEFAULT NULL COMMENT '执行-时间', + `handle_code` int(11) NOT NULL COMMENT '执行-状态', + `handle_msg` text COMMENT '执行-日志', + `alarm_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '告警状态:0-默认、1-无需告警、2-告警成功、3-告警失败', + PRIMARY KEY (`id`), + KEY `I_trigger_time` (`trigger_time`), + KEY `I_handle_code` (`handle_code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `xxl_job_log_report` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `trigger_day` datetime DEFAULT NULL COMMENT '调度-时间', + `running_count` int(11) NOT NULL DEFAULT '0' COMMENT '运行中-日志数量', + `suc_count` int(11) NOT NULL DEFAULT '0' COMMENT '执行成功-日志数量', + `fail_count` int(11) NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量', + `update_time` datetime DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `i_trigger_day` (`trigger_day`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `xxl_job_logglue` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `job_id` int(11) NOT NULL COMMENT '任务,主键ID', + `glue_type` varchar(50) DEFAULT NULL COMMENT 'GLUE类型', + `glue_source` mediumtext COMMENT 'GLUE源代码', + `glue_remark` varchar(128) NOT NULL COMMENT 'GLUE备注', + `add_time` datetime DEFAULT NULL, + `update_time` datetime DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `xxl_job_registry` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `registry_group` varchar(50) NOT NULL, + `registry_key` varchar(255) NOT NULL, + `registry_value` varchar(255) NOT NULL, + `update_time` datetime DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `i_g_k_v` (`registry_group`,`registry_key`,`registry_value`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `xxl_job_group` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `app_name` varchar(64) NOT NULL COMMENT '执行器AppName', + `title` varchar(12) NOT NULL COMMENT '执行器名称', + `address_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '执行器地址类型:0=自动注册、1=手动录入', + `address_list` text COMMENT '执行器地址列表,多地址逗号分隔', + `update_time` datetime DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `xxl_job_user` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `username` varchar(50) NOT NULL COMMENT '账号', + `password` varchar(50) NOT NULL COMMENT '密码', + `role` tinyint(4) NOT NULL COMMENT '角色:0-普通用户、1-管理员', + `permission` varchar(255) DEFAULT NULL COMMENT '权限:执行器ID列表,多个逗号分割', + PRIMARY KEY (`id`), + UNIQUE KEY `i_username` (`username`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `xxl_job_lock` ( + `lock_name` varchar(50) NOT NULL COMMENT '锁名称', + PRIMARY KEY (`lock_name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +INSERT INTO `xxl_job_group` VALUES (2, 'nx-llm-xxljob', '宁夏经侦大模型执行器', 1, 'http://fu-hsi-web:9999/', '2024-11-05 11:32:32'); +INSERT INTO `xxl_job_info` VALUES (2, 2, '证据解析', '2024-11-05 11:34:01', '2024-11-05 11:34:36', 'admin', '', 'NONE', '', 'DO_NOTHING', 'FIRST', 'evidenceAnalysis', '', 'SERIAL_EXECUTION', 0, 0, 'BEAN', '', 'GLUE代码初始化', '2024-11-05 11:34:01', '', 0, 0, 0); +INSERT INTO `xxl_job_user`(`id`, `username`, `password`, `role`, `permission`) VALUES (1, 'admin', '5d25a2c201ace8879055ed8410e51759', 1, NULL); +INSERT INTO `xxl_job_lock` ( `lock_name`) VALUES ( 'schedule_lock'); + +commit; +