修复枚举对应错误,增加问答示例,优化提示词,优化问答示例结构增强检索效果
This commit is contained in:
@@ -59,7 +59,8 @@ question_and_answer = [
|
||||
AND "dr" = '0'
|
||||
ORDER BY "最高学位", "姓名" LIMIT 1000
|
||||
'''
|
||||
}, {
|
||||
},
|
||||
{
|
||||
"question": "8月份在藏,超过10天的有哪些员工",
|
||||
"answer": '''
|
||||
SELECT DISTINCT p."code" AS "工号",
|
||||
@@ -112,7 +113,7 @@ question_and_answer = [
|
||||
'''
|
||||
},
|
||||
|
||||
{
|
||||
{
|
||||
"question": "在研发基地工作的有哪些员工",
|
||||
"answer": '''
|
||||
SELECT "id" AS "id",
|
||||
@@ -134,9 +135,9 @@ question_and_answer = [
|
||||
a."attendance_time" AS "考勤时间",
|
||||
a."attendance_address" AS "考勤地址",
|
||||
CASE
|
||||
WHEN a."status" = 0 THEN '在岗'
|
||||
WHEN a."status" = 1 THEN '出差'
|
||||
WHEN a."status" = 2 THEN '休假' END AS "状态",
|
||||
WHEN a."status" = 1 THEN '在岗'
|
||||
WHEN a."status" = 2 THEN '出差'
|
||||
WHEN a."status" = 3 THEN '休假' END AS "状态",
|
||||
CASE
|
||||
WHEN a."enter_or_exit" = 0 THEN '进'
|
||||
WHEN a."enter_or_exit" = 1
|
||||
@@ -145,6 +146,7 @@ question_and_answer = [
|
||||
WHEN b."region" = 1 THEN '北京'
|
||||
WHEN b."region" = 2 THEN '成都'
|
||||
WHEN b."region" = 3 THEN '秭归'
|
||||
WHEN b."region" = 4 THEN '拉萨'
|
||||
WHEN b."region" = 5 THEN '林芝' END AS "地区", AS "门禁点"
|
||||
FROM "YJOA_APPSERVICE_DB"."t_yj_person_attendance" a
|
||||
JOIN "YJOA_APPSERVICE_DB"."t_yj_person_ac_area" b
|
||||
@@ -157,7 +159,8 @@ question_and_answer = [
|
||||
AND a."dr" = 0
|
||||
ORDER BY a."attendance_time" DESC LIMIT 1000
|
||||
'''
|
||||
}, {
|
||||
},
|
||||
{
|
||||
"question": "查询张三9月份有多少天在岗",
|
||||
"answer": '''
|
||||
SELECT p."code" AS "工号",
|
||||
@@ -179,7 +182,8 @@ question_and_answer = [
|
||||
ELSE p."external_unit"
|
||||
END LIMIT 1000
|
||||
'''
|
||||
}, {
|
||||
},
|
||||
{
|
||||
"question": "XX中心下有多少员工",
|
||||
"answer": '''
|
||||
select count(*)
|
||||
@@ -220,7 +224,8 @@ question_and_answer = [
|
||||
ORDER BY "人数" DESC
|
||||
LIMIT 1000
|
||||
'''
|
||||
}, {
|
||||
},
|
||||
{
|
||||
"question": "张三9月在林芝工作有多少天",
|
||||
"answer": '''
|
||||
SELECT count(distinct (TO_CHAR(a."attendance_time", 'yyyy-MM-dd'))) as count
|
||||
@@ -269,46 +274,30 @@ question_and_answer = [
|
||||
{
|
||||
"question": "XX中心员工年龄段分布图",
|
||||
"answer": '''
|
||||
SELECT CASE
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 2000 THEN '00后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1990 AND
|
||||
CAST(SUBSTR("birthday", 1, 4) AS INT) < 2000 THEN '90后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1980 AND
|
||||
CAST(SUBSTR("birthday", 1, 4) AS INT) < 1990 THEN '80后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1970 AND
|
||||
CAST(SUBSTR("birthday", 1, 4) AS INT) < 1980 THEN '70后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1960 AND
|
||||
CAST(SUBSTR("birthday", 1, 4) AS INT) < 1970 THEN '60后'
|
||||
ELSE '其他年龄段'
|
||||
END AS "age_group",
|
||||
COUNT(*) AS "person_count"
|
||||
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
||||
WHERE "dr" = 0
|
||||
AND "birthday" IS NOT NULL
|
||||
AND "birthday" != ''
|
||||
AND internal_dept IN (
|
||||
SELECT "id"
|
||||
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
||||
WHERE "parentid" IN (
|
||||
SELECT "id"
|
||||
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
||||
WHERE name || shortname LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
||||
) OR id IN (SELECT "id"
|
||||
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
||||
WHERE name || shortname LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%')
|
||||
)
|
||||
GROUP BY
|
||||
CASE
|
||||
WHEN CAST (SUBSTR("birthday", 1, 4) AS INT) >= 2000 THEN '00后'
|
||||
WHEN CAST (SUBSTR("birthday", 1, 4) AS INT) >= 1990 AND CAST (SUBSTR("birthday", 1, 4) AS INT) < 2000 THEN '90后'
|
||||
WHEN CAST (SUBSTR("birthday", 1, 4) AS INT) >= 1980 AND CAST (SUBSTR("birthday", 1, 4) AS INT) < 1990 THEN '80后'
|
||||
WHEN CAST (SUBSTR("birthday", 1, 4) AS INT) >= 1970 AND CAST (SUBSTR("birthday", 1, 4) AS INT) < 1980 THEN '70后'
|
||||
WHEN CAST (SUBSTR("birthday", 1, 4) AS INT) >= 1960 AND CAST (SUBSTR("birthday", 1, 4) AS INT) < 1970 THEN '60后'
|
||||
ELSE '其他年龄段'
|
||||
END
|
||||
ORDER BY "age_group" ASC LIMIT 1000
|
||||
SELECT CASE
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 2000 THEN '00后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1990 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 2000 THEN '90后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1980 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1990 THEN '80后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1970 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1980 THEN '70后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1960 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1970 THEN '60后'
|
||||
ELSE '其他年龄段' END AS "age_group", COUNT(*) AS "person_count"
|
||||
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
||||
WHERE p."dr" = 0 AND p."birthday" IS NOT NULL AND p."birthday" != ''
|
||||
AND p."internal_dept" IN (
|
||||
SELECT "id" FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
||||
START WITH "name" || "shortname" LIKE '%数信中心%'
|
||||
AND "dr" = 0 AND "enable" = 1 AND "code" LIKE '%CYJ%'
|
||||
CONNECT BY PRIOR "id" = "parentid"
|
||||
)
|
||||
GROUP BY CASE WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 2000 THEN '00后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1990 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 2000 THEN '90后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1980 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1990 THEN '80后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1970 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1980 THEN '70后'
|
||||
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1960 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1970 THEN '60后'
|
||||
ELSE '其他年龄段' END ORDER BY "age_group" ASC LIMIT 1000
|
||||
'''
|
||||
}, {
|
||||
},
|
||||
{
|
||||
"question": "查询XX部下面的员工以及他们的年龄",
|
||||
"answer": '''
|
||||
SELECT p."id" AS "员工ID",
|
||||
@@ -544,7 +533,8 @@ question_and_answer = [
|
||||
AND p."highest_degree" = '3'
|
||||
LIMIT 1000
|
||||
'''
|
||||
}, {
|
||||
},
|
||||
{
|
||||
"question": "XX中心在藏最长时间的人是谁",
|
||||
"answer": '''
|
||||
SELECT p."name" AS "姓名", p."code" AS "工号", COUNT(ps."id") AS "在藏天数"
|
||||
@@ -561,7 +551,8 @@ question_and_answer = [
|
||||
GROUP BY p."name", p."code"
|
||||
ORDER BY COUNT (ps."id") DESC LIMIT 1
|
||||
'''
|
||||
}, {
|
||||
},
|
||||
{
|
||||
"question": "XX中心员工在林芝工作的天数",
|
||||
"answer": '''
|
||||
SELECT DISTINCT p."code" AS "工号",
|
||||
|
||||
Reference in New Issue
Block a user