From 54f5c0ac63523f2a6220484d2258403a4d66f824 Mon Sep 17 00:00:00 2001 From: zk Date: Fri, 7 Aug 2026 16:57:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/ai/model_config.py | 2 +- app/ai/resume_extractor_v2/prompts.py | 2 +- app/services/resume_service.py | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app/ai/model_config.py b/app/ai/model_config.py index a631e60..2c83953 100644 --- a/app/ai/model_config.py +++ b/app/ai/model_config.py @@ -41,7 +41,7 @@ class NovaChatModel: class ResumeExtractorModel: """简历解析模块""" # 简历结构化提取:并行提取简历文本为JSON结构 - PARSE = LLM.DOUBAO_PRO_32K.create(temperature=0) + PARSE = LLM.DEEPSEEK_V4_FLASH.create(temperature=0) class ResumePolisherModel: diff --git a/app/ai/resume_extractor_v2/prompts.py b/app/ai/resume_extractor_v2/prompts.py index fe7c94c..65afcc4 100644 --- a/app/ai/resume_extractor_v2/prompts.py +++ b/app/ai/resume_extractor_v2/prompts.py @@ -67,7 +67,7 @@ PROFILE_PROMPT = """严格根据简历原文提取,不要猜测或编造,没 - name:填完整姓名,原文怎么写就怎么填,不要截断或只取一个字。 - mobileNumber:只填**一个**手机号(通常11位数字),若原文出现多个手机号只取第一个,绝不能把多个号码拼接或用逗号/顿号等连接填入;微信号必须填到wechatNumber,绝不能把微信号当手机号。 - portfolioUrl:只填作品集/个人主页/GitHub 等链接。 -- skills:仅当简历中有明确的"技能"/"专业技能"等**独立模块**时才提取,按原文逐字填,最多5个;如果没有专门的技能模块,填[]。**不要**从工作/项目/自我评价里归纳技能,尤其不要把"团队沟通""抗压能力""责任心"等软素质描述当作技能。**证书/语言等级类(如CET-4/6、雅思、托福、GRE、计算机等级、教师资格证等)一律不计入 skills,它们只归 certificates。** +- skills:仅当简历中有明确的"技能"/"专业技能"等**独立模块**时才提取,按原文逐字填,最多10个;如果没有专门的技能模块,填[]。**不要**从工作/项目/自我评价里归纳技能,尤其不要把"团队沟通""抗压能力""责任心"等软素质描述当作技能。**证书/语言等级类(如CET-4/6、雅思、托福、GRE、计算机等级、教师资格证等)一律不计入 skills,它们只归 certificates。** - certificates:填真正的**证书/证件/标准化考试成绩**,包括语言与等级类(如CET-4/6、雅思、托福、GRE、计算机等级、教师资格证、驾照等)。**不要**把竞赛奖项、荣誉称号、名次、奖学金,或工作描述里顺带提到的"认证"句子当作证书;没有填[]。 - summary:自我评价/个人概述**正文**的字符串数组,按原文分段拆成数组元素,一个段落一个元素。不要包含板块标题(如"个人优势""自我评价"),不要把技能列表、兴趣爱好、经历内容纳入;允许轻度清理(去除乱码/水印碎片),不要改写或编造;没有填[]。 只输出JSON,不要输出任何解释文字。""" diff --git a/app/services/resume_service.py b/app/services/resume_service.py index 32e1d6c..156eeba 100644 --- a/app/services/resume_service.py +++ b/app/services/resume_service.py @@ -29,6 +29,7 @@ class ResumeService: text = await extract_text(filename, content) if not text or not text.strip(): raise ValueError("文件内容为空,无法解析") + # log.info(f"文件解析完成: {text}") log.info(f"文件解析完成,文本字符数: {len(text)}") log.info("开始AI两阶段并行结构化提取")