修改提示词

This commit is contained in:
zk
2026-07-01 15:08:01 +08:00
parent 13a9292e48
commit b79bcb932c
+18 -10
View File
@@ -15,6 +15,7 @@
各详情 prompt 通用铁律(防跨记录串扰/重复):
- 只选取真正属于当前这条记录({name})本身的行;即使原文中相邻的行属于**另一条**记录
(另一家公司、另一个项目、另一段学历、校园/社团/实习/竞赛等),也**绝不纳入**。
- 同一段原文只应属于一条记录:不要为了描述完整而把其它记录已包含的行号再选一遍,避免多条记录重复引用同一段。
- 宁可少选,不确定归属的行一律不选。
花括号用 {{ }} 转义,避免被 ChatPromptTemplate 当作变量。{name} 为运行时替换的记录标识名。
@@ -40,10 +41,14 @@ OVERVIEW_EDUCATION_PROMPT = """严格根据简历原文提取,不要猜测或
["北京大学", "剑桥大学-哲学硕士", "剑桥大学-经济学士"]
```
规则:
1. 列出原文中出现的每一段学历教育,**一段都不能漏**(含本科硕士博士、海外院校、联合培养/交换等)
2. 每个标识必须**唯一**:若同一所学校有多个学位/专业,用「学校+学位或专业」区分(如"剑桥大学-哲学硕士"),避免重名导致后续混淆。
3. 只列学历教育;培训机构、实习/工作单位、科研机构、社团不算学历教育,不要列入。
4. 没有输出[]。只输出JSON。"""
1. 列出原文中每一个**实际就读或已获得学历**的**就读阶段**,不同阶段(本科/硕士/博士)分别列出,一段都不能漏
2. 每个标识必须**唯一**:若同一所学校有多个不同就读阶段(如本科、硕士),用「学校+学位」区分(如"剑桥大学-硕士""剑桥大学-本科"),避免重名导致后续混淆。
3. **不要过度拆分**
- 联合培养、交换、访学、海外学期属于对应主学历就读的一部分,**并入该主学历那一条**,不要单列成独立教育记录。
- 同一学校同一就读阶段的双学位/主辅修,算**一条**,不要拆成两条。
4. 仅"录取通知/offer/拟就读但尚未入学"的,**不算**教育经历,不要列入。
5. 培训机构、实习/工作单位、科研机构、社团不算学历教育,不要列入。
6. 没有输出[]。只输出JSON。"""
OVERVIEW_WORK_PROMPT = """严格根据简历原文提取,不要猜测或编造。
输入为带行号的简历文本。从中提取工作经历和实习经历的公司标识名列表,输出JSON:
@@ -66,8 +71,9 @@ OVERVIEW_PROJECT_PROMPT = """严格根据简历原文提取,不要猜测或编
1. 只提取作为**独立项目条目标题**出现的项目名(通常单独成行、常带"项目X"前缀或【】标题、并配有自己的起止时间/角色/描述)。
2. **绝对不要**把出现在某段职责/产品描述句子内部、被"如/包括/例如/【】"等列举的功能点、模块、子功能当作项目(这些是描述内容,不是项目)。
3. **绝对不要**把社团/学生组织、校园活动、志愿服务、任职/职务、兴趣爱好当作项目——这些不是项目经历。
4. 同一个项目只列一次,不要因为它在工作经历里被提到就重复列。
5. 没有输出[]。只输出JSON。"""
4. **绝对不要**把竞赛/比赛/大赛条目当作项目(如"XX大赛""挑战杯""创新创业大赛""职业规划大赛"等,以参赛/获奖为核心的条目)——这些归竞赛模块,即使参赛做了作品也不要在这里重复列。
5. 同一个项目只列一次,不要因为它在工作经历里被提到就重复列。
6. 没有输出[]。只输出JSON。"""
OVERVIEW_COMPETITION_PROMPT = """严格根据简历原文提取,不要猜测或编造。
输入为带行号的简历文本。从中仅提取竞赛/获奖经历的竞赛名称列表,输出JSON数组:
@@ -75,10 +81,12 @@ OVERVIEW_COMPETITION_PROMPT = """严格根据简历原文提取,不要猜测
["ACM区域赛", "数学建模大赛"]
```
规则:
1. 只提取真正的**竞赛/比赛/获奖**条目名称。
1. 只提取真正的**竞赛/比赛/获奖**条目名称(以报名参赛、比赛名次/获奖为核心的条目,如"XX大赛""挑战杯""数学建模竞赛"
2. 同一个竞赛只算一条,即使它拿了多个奖项,也不要按奖项拆成多条。
3. **绝对不要**把社团活动、职务、项目、示例文字、描述里顺带提到的活动当作竞赛。
4. 没有输出[]。只输出JSON。"""
3. **绝对不要**把社团活动、职务、示例文字、描述里顺带提到的活动当作竞赛。
4. **绝对不要**把工作/实习/研究/开发**项目**当作竞赛——即使该项目获过奖,它仍归项目模块,不要在这里重复列(判断依据:条目本质是"做了一个项目/产品/研究"还是"参加了一场比赛")。
5. 奖学金、荣誉称号、考试成绩不属于竞赛,不要列入。
6. 没有输出[]。只输出JSON。"""
# ==================== 第二阶段:详情提取 ====================
@@ -138,6 +146,6 @@ DETAIL_PROFILE_PROMPT = """严格根据简历原文提取,不要猜测或编
```
规则:
- skills:仅当简历中有明确的"技能"/"专业技能"等**独立模块**时才提取,按原文逐字填,最多5个;如果没有专门的技能模块,填[]。**不要**从工作/项目/自我评价里归纳技能,尤其不要把"团队沟通""抗压能力""责任心"等软素质描述当作技能。
- certificates填真正的**证书/证件**(如CET-4/6、CPA、教师资格证、驾照等)。不要把奖项、荣誉、竞赛名次,或工作描述里顺带提到的"认证"句子当作证书;没有填[]。
- certificates:填真正的**证书/证件/标准化考试成绩**,包括语言与等级类(如CET-4/6、雅思、托福、GRE、计算机等级、教师资格证、驾照等)。**不要**把竞赛奖项、荣誉称号、名次、奖学金,或工作描述里顺带提到的"认证"句子当作证书;没有填[]。
- summaryRange:填自我评价/个人概述**正文**所在的行号区间字符串(0开始、闭区间,行号必须真实存在)。不要包含板块标题行(如"个人优势""自我评价"),不要把技能列表、兴趣爱好、经历内容纳入;排除明显的乱码/水印碎片行;同一段落被折成的连续多行用一个区间,不同段落用逗号分开(每个逗号段是一个独立段落,段间会以换行连接),没有填""
只输出JSON。"""