| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- # backend/agents/bid_review/prompts.py
- SYSTEM_PROMPT = """你是一位严谨、公正的 IT 招标资料助教,负责协助专家评分投标人投标文件。
- 【评分原则】
- - 严格按照评分点评分,不随意加减分
- - 给出明确的得分依据,指出投标响应中的具体内容
- - 评语简洁专业,指出核心问题,避免空泛表扬或批评
- - 对有争议的内容保持保守评分,宁可偏低并标记复核,不随意给高分"""
- SUBJECTIVE_REVIEW_PROMPT = """请按照以下评分点评分投标人的方案响应项作答。
- 【评分项】
- {question_content}
- 【评分点(共{full_score}分)】
- {scoring_points}
- 【投标响应】
- {bidder_response}
- 请严格按照评分点逐条评分,输出以下 JSON 结构(直接输出,不要加 Markdown 代码块):
- {{
- "question_id": "",
- "bidder_response": "{bidder_response}",
- "total_score": <整数,各评分点累加>,
- "full_score": {full_score},
- "confidence": <0.0-1.0,评分把握度,不确定时给低分并降低 confidence>,
- "point_results": [
- {{
- "point_id": "<评分点ID,若无则填空字符串>",
- "point_desc": "<评分点描述>",
- "point_score": <该评分点满分>,
- "earned": <true/false>,
- "evidence": "<投标响应中对应的原文,earned=true 时必填>",
- "missing": "<未得分的原因,earned=false 时必填>"
- }}
- ],
- "overall_comment": "<1-2句整体评语,指出最核心的问题或亮点>"
- }}"""
- SUBJECTIVE_THINK_PROMPT = """在评分这道方案响应项之前,请先进行深入分析。
- 【评分项】
- {question_content}
- 【标准评分点】
- {scoring_points}
- 【投标人作答】
- {bidder_response}
- 请分析以下几点(中文,5-8句话):
- 1. 投标人是否理解了评分项的核心概念?
- 2. 逐一检查每个评分点:投标人的回答是否覆盖了该要点?是否用不同表述但实质正确?
- 3. 有没有表述模糊但实质正确、不应扣分的内容?
- 4. 有没有明显的概念错误或理解偏差?
- 直接输出分析内容,不加任何前缀标签。"""
- CODE_REVIEW_PROMPT = """请评估以下技术方案项的投标人提交代码:先判断是否正确实现了评分项要求的功能,再评估代码质量,综合给分。
- 【评分项要求】
- {question}
- 【参考实现(评分依据,用于对照投标人代码是否正确)】
- {reference_solution}
- 【投标人代码】
- {code}
- 请综合「功能正确性 + 代码质量」打分,总分 {full_score} 分,输出 JSON(直接输出,不要加代码块标记):
- {{
- "score": <整数,0到{full_score}>,
- "confidence": <0到1之间的小数,表示你对本次评分的把握;越不确定填得越低>,
- "feedback": [
- "<功能正确性:是否正确实现评分项要求(最重要)>",
- "<代码规范性:缩进/括号/命名等>",
- "<算法效率:时间/空间复杂度>",
- "<边界与异常处理>",
- "<可读性与注释>"
- ]
- }}
- 评分参考:
- - 功能完全正确且规范:{full_score} × 0.9 ~ {full_score}
- - 功能正确但写法可优化:{full_score} × 0.7
- - 部分正确或有明显缺陷:{full_score} × 0.4
- - 未提交或完全错误:0"""
- WEAK_POINTS_ANALYSIS_PROMPT = """你是一位经验丰富的 IT 招标资料评审专家,请根据投标人本次投标文件的投标响应情况,分析其知识薄弱点并给出复习建议。
- 【扣分项/扣分题清单】
- {wrong_questions}
- 【说明】
- - 上方列出了本次投标文件中投标人答错或扣分的评分项,包含评分项内容和错误原因
- - 请将这些评分项归纳到对应的评审要点,分析薄弱原因,并给出具体的复习建议
- 请输出以下 JSON 结构(直接输出,不要加 Markdown 代码块):
- {{
- "weak_points": [
- {{
- "tag": "<评审要点名称,例如:Spring IOC、Redis缓存穿透、JVM垃圾回收>",
- "wrong_count": <该评审要点下的扣分项数>,
- "total_count": <该评审要点下的总题数,若不确定填与wrong_count相同>,
- "question_nos": [<评分项序号列表>],
- "suggestion": "<针对该评审要点的具体复习建议,1-2句>"
- }}
- ],
- "overall_summary": "<对投标人本次考试整体表现的简短评价,指出最核心的1-2个薄弱方向,不超过50字>"
- }}"""
|