From 96437a0fe6d6824364a7de619e5d98f33471af9d Mon Sep 17 00:00:00 2001 From: yujj128 Date: Wed, 12 Nov 2025 16:08:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=97=AE=E7=AD=94=E7=A4=BA?= =?UTF-8?q?=E4=BE=8B=EF=BC=9A=E6=BB=A1=E8=B6=B3=E4=BC=91=E5=81=87=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6=E7=9A=84=E4=BA=BA=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template.yaml | 1 + util/q_and_a_test1.py | 50 ++++++++++++++++++++++++++++++++++++++++++- util/train_ddl.py | 1 + 3 files changed, 51 insertions(+), 1 deletion(-) diff --git a/template.yaml b/template.yaml index 30a41cc..c435233 100644 --- a/template.yaml +++ b/template.yaml @@ -650,6 +650,7 @@ template: 3. **核心处理:正常结果呈现** - 如果 `[执行错误信息]` 为空,且 `[查询结果]` 不为空。 + - 如果 `[查询结果]`包含数据较多时,除非结果集完整且计数明确,否则禁止使用具体数字(如人数、天数)进行量化,必须用‘多位’、‘部分’、‘部分同事’、‘较长时间’等抽象词汇替代。 - 注意: 只有当用户问题包含 :`在藏`,`连续在藏` ,等关键字,才输出总结增加一个备注:部分在藏数据可能从2025-10-01后开始统计的。 - (a) **总结与提炼**: 首先用1-2句话直接回答用户的 `[用户问题]`。总结核心发现,而不是逐字念出所有数据。 - (b) **关键数据呈现**: 从 `[查询结果]` 中挑选最重要的1-3个关键数据点,用自然、易于阅读的方式列出(例如使用项目符号,但最终输出应转为自然语言的段落)。 diff --git a/util/q_and_a_test1.py b/util/q_and_a_test1.py index 0442bc6..cd037d3 100644 --- a/util/q_and_a_test1.py +++ b/util/q_and_a_test1.py @@ -1291,7 +1291,55 @@ question_and_answer = [ "tags": ["员工", "考勤", "工作地", "区域", "连续在藏统计", "最值"], "category": "工作地考勤统计分析" }, - + { + "question": "XX中心截止目前满足休假条件的员工有哪些", + "answer": ''' + SELECT pt."year" AS "年份",p."code" AS "人员编号",pt."continuous_in_tibet_days" AS "连续在藏天数", p."name" AS "姓名", o."name" AS "部门" + FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p + INNER JOIN "YJOA_APPSERVICE_DB"."t_yj_person_in_tibat" pt + ON p."code" = pt."person_id" + INNER JOIN "IUAP_APDOC_BASEDOC"."org_orgs" o + ON p."internal_dept" = o."id" + WHERE p."dr" = 0 + AND pt."dr" = 0 + AND pt."continuous_in_tibet_days">=22 + AND p."internal_dept" IN ( + SELECT id + FROM "IUAP_APDOC_BASEDOC"."org_orgs" + START WITH ("name" LIKE '%XX中心%' OR "shortname" LIKE '%XX中心%') + AND "dr" = 0 AND "enable" = 1 AND "code" LIKE '%CYJ%' + CONNECT BY PRIOR "id" = "parentid" + ) + ORDER BY pt."continuous_in_tibet_days" DESC + ''', + "tags": ["员工", "考勤", "工作地", "区域", "连续在藏统计", "休假"], + "category": "工作地考勤统计分析" + }, + { + "question": "XX中心截止目前满足休假条件的正式员工有哪些", + "answer": ''' + SELECT pt."year" AS "年份",p."code" AS "人员编号",pt."continuous_in_tibet_days" AS "连续在藏天数", p."name" AS "姓名", o."name" AS "部门" + FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p + INNER JOIN "YJOA_APPSERVICE_DB"."t_yj_person_in_tibat" pt + ON p."code" = pt."person_id" + INNER JOIN "IUAP_APDOC_BASEDOC"."org_orgs" o + ON p."internal_dept" = o."id" + WHERE p."dr" = 0 + AND pt."dr" = 0 + AND p."person_type" = 'YG' + AND pt."continuous_in_tibet_days">=22 + AND p."internal_dept" IN ( + SELECT id + FROM "IUAP_APDOC_BASEDOC"."org_orgs" + START WITH ("name" LIKE '%XX中心%' OR "shortname" LIKE '%XX中心%') + AND "dr" = 0 AND "enable" = 1 AND "code" LIKE '%CYJ%' + CONNECT BY PRIOR "id" = "parentid" + ) + ORDER BY pt."continuous_in_tibet_days" DESC + ''', + "tags": ["员工", "考勤", "工作地", "区域", "连续在藏统计", "休假"], + "category": "工作地考勤统计分析" + }, { "question": "XX中心的张三连续在藏多少天了", "answer": ''' diff --git a/util/train_ddl.py b/util/train_ddl.py index 959245e..fe8ec29 100644 --- a/util/train_ddl.py +++ b/util/train_ddl.py @@ -13,6 +13,7 @@ train_document=''' 数信部不是数信中心,两者不能等价 数信中心就叫数信中心,没有数字信息中心这个部门,请勿胡乱替换 部门表里code字段中中带CYJ的才是正式加入使用的部门,废弃或测试部门的部门编号则不带CYJ + 连续在藏大于等于22天意味着满足休假条件 ''' person_database_ddl = """