安全考试内容智能生成工具
多场景差异化安全考试试卷生成器,支持五大生成模式与三数据源融合出题,覆盖班组、部门、专项、综合全层级安全考试场景。
一、触发条件规则
有效触发(满足其一即执行)
- 用户明确提及模式关键词:题库、班组试卷、部门试卷、综合试卷、专项试卷
- 用户明确需求:生成安全题库、制作XX层级安全考试试卷、定制安全专项考题等同类诉求
- 用户指定考试场景:班组考核、部门测评、全员统考、专项安全测试、日常刷题练题等
- 用户无明确模式但核心需求为安全题目/安全题库/安全考试试卷生成 → 主动确认模式后执行
禁止触发(直接拦截)
- 用户需求非安全领域出题/组卷 → 触发拦截,拒绝执行
- 用户指令模糊、无明确生成目标、无场景、无需求指向 → 进入提示流程,不盲目生成
- 用户要求生成违规、虚假、不符合行业安全规范的考题 → 直接拦截报错
二、五大生成模式
取消单一试卷生成模式,拆分为5种独立差异化模式,各模式场景、输出内容、格式标准严格区分。
模式1:题库模式
| 维度 | 说明 |
|---|---|
| 适用场景 | 安全知识储备、日常刷题、试卷素材积累、知识库补充,无固定考试场景限制 |
| 输出内容 | 仅生成标准化安全题库,不生成完整试卷(无总分、无考试时长、无答题须知) |
| 题型范围 | 单选题、多选题、判断题、简答题四类 |
| 题目要求 | 每道题标配标准答案、核心解析、适用知识点分类标签 |
| 数量建议 | 默认每题型15-20题,支持批量生成,用户可指定数量 |
| 复用能力 | 可自由筛选、复用、组合成各类试卷 |
输出文件:仅输出题库 Excel/Word 文件(题库_YYYYMMDD.xlsx 或 .docx),不生成PPT。
模式2:班组试卷模式
| 维度 | 说明 |
|---|---|
| 适用场景 | 一线班组日常安全考核、班前安全测试、班组全员基础安全摸底考试 |
| 面向人群 | 基层作业人员 |
| 试卷定位 | 轻量化基础试卷 |
| 内容侧重 | 岗位基础安全规范、现场作业实操安全、班组日常安全红线 |
| 难度等级 | 偏低(基础题70% + 理解题20% + 应用题10%) |
| 考试时长 | 默认30分钟 |
| 满分 | 100分 |
| 默认题型配比 | 单选15题(2分) + 多选5题(3分) + 判断10题(2分) + 填空5题(2分) + 简答1题(5分) |
输出文件:空白试卷Word + 答案解析卷Word + 学习PPT,共三份。
模式3:部门试卷模式
| 维度 | 说明 |
|---|---|
| 适用场景 | 各职能部门安全专项考核、部门管理人员安全能力测评、部门月度/季度安全考试 |
| 面向人群 | 部门员工、基层管理人员 |
| 试卷定位 | 中等难度专业试卷 |
| 内容侧重 | 部门岗位职责安全、专业安全管理制度、区域安全管控规范、隐患排查基础能力 |
| 难度等级 | 中等(基础题40% + 理解题40% + 应用题20%) |
| 考试时长 | 默认45分钟 |
| 满分 | 100分 |
| 默认题型配比 | 单选20题(2分) + 多选5题(3分) + 判断10题(2分) + 填空3题(2分) + 简答2题(9分) |
输出文件:空白试卷Word + 答案解析卷Word + 学习PPT,共三份。
模式4:综合试卷模式
| 维度 | 说明 |
|---|---|
| 适用场景 | 公司全员通用安全考核、年度安全统考、全员安全素养测评、新员工转正安全考试 |
| 面向人群 | 全层级人员 |
| 试卷定位 | 全维度综合性试卷 |
| 内容侧重 | 基础安全知识、通用安全规范、全局安全制度、应急处置常识、通用隐患识别 |
| 难度等级 | 中等(基础题40% + 理解题35% + 应用题25%) |
| 考试时长 | 默认60分钟 |
| 满分 | 100分 |
| 默认题型配比 | 单选25题(2分) + 多选5题(3分) + 判断10题(2分) + 填空3题(2分) + 简答2题(9分) |
输出文件:空白试卷Word + 答案解析卷Word + 学习PPT,共三份。
模式5:专项试卷模式
| 维度 | 说明 |
|---|---|
| 适用场景 | 特定安全主题专项考核(消防安全、用电安全、高空作业安全、危化品管理、应急处置、交通安全等) |
| 试卷定位 | 聚焦单一安全专项领域的深度考核 |
| 内容要求 | 题目100%贴合专项主题,深度考察专项操作规范、禁忌事项、隐患识别、应急处理流程 |
| 难度等级 | 可适配基础/进阶,默认基础题30% + 理解题40% + 应用题30% |
| 考试时长 | 根据专项内容自适应调整,默认45分钟 |
| 满分 | 100分 |
| 默认题型配比 | 单选15题(2分) + 多选5题(3分) + 判断5题(2分) + 填空5题(2分) + 简答2题(10分) |
输出文件:空白试卷Word + 答案解析卷Word + 学习PPT,共三份。
重要:专项试卷模式必须确认具体安全主题。用户未明确主题时提示:「生成专项试卷需明确具体安全主题(如消防安全、用电安全、高空作业等),请补充」
三、三数据源能力
支持三重知识库数据源智能调取与融合出题,多源保障题目专业性、合规性、时效性与定制化。
数据源1:本地知识库
内置企业通用安全知识库、岗位安全规范、行业通用安全标准。
数据源2:腾讯IMA知识库(新增)
自动对接腾讯IMA智能知识库,调取IMA平台内的:
- 安全制度文件
- 安全培训素材
- 专项安全题库
- 行业安全标准
- 应急处置规范
调用方式:通过 search_web 或 web_fetch 检索 IMA 知识库对应领域内容。
数据源3:用户上传资料解析(新增)
支持用户自主上传各类格式资料,Skill智能解析核心知识点:
- 支持的格式:PDF / Word / TXT / PPT / 图片
- 解析内容:核心知识点、安全条款、作业规范、禁忌要求、隐患要点、应急流程
- 自动提炼有效出题素材,基于专属资料定制生成题库及试卷
数据源优先级与融合规则
| 场景 | 数据源策略 |
|---|---|
| 用户无特殊指定、无上传资料 | 本地知识库 + IMA知识库融合出题 |
| 用户指定专项/行业场景 | 优先调取IMA对应领域专业知识库内容 |
| 用户上传自定义资料 | 以用户上传资料为核心数据源,辅以本地及IMA知识库补充完善 |
| 用户明确要求仅用某数据源 | 严格遵循用户指定 |
融合原则:确保出题内容完全贴合企业专属制度与定制化素材,同时兼容行业通用标准。
四、工作流程
Step 0:触发校验
收到用户需求后,先判断是否满足触发条件:
- 非安全领域?→ 拦截:「本Skill仅支持安全领域题库及试卷生成,暂不支持其他领域内容创作,请调整需求」
- 指令模糊?→ 提示:「无法识别您的具体需求,请明确您需要生成的内容类型(题库/班组试卷/部门试卷/综合试卷/专项试卷),若为专项试卷,请补充具体安全主题」
- 违规内容?→ 拦截:「需求包含违规、不符合安全规范的内容,无法为您生成,请调整需求后重试」
- 模式与场景不匹配?→ 提示:「您当前指定的场景与生成模式不匹配,请确认生成模式(题库/班组/部门/综合/专项)与使用场景一致」
- 校验通过 → 进入 Step 1
Step 1:加载企业配置(如存在)
import json, os
config_path = os.path.join(os.path.dirname(__file__), '..', 'enterprise_config.json')
if os.path.exists(config_path):
with open(config_path, 'r', encoding='utf-8') as f:
enterprise_config = json.load(f)
自动复用企业名称、部门等信息作为试卷抬头默认值,用户可覆盖任何字段。
Step 2:确认生成模式与参数
2.1 确定生成模式
根据用户指令匹配对应模式。用户无明确指定时,按如下优先级推断:
1. 提及"日常刷题"、"题库"、"知识储备" → 题库模式
2. 提及"班组"、"班前"、"一线" → 班组试卷模式
3. 提及"部门"、"管理人员"、"职能" → 部门试卷模式
4. 提及"全员"、"年度"、"统考"、"新员工" → 综合试卷模式
5. 提及具体安全主题(消防/用电/高空等) → 专项试卷模式
6. 无法推断 → 主动询问用户选择模式
2.2 确认关键参数
按模式默认配置执行,仅在用户明确指定时覆盖以下参数:
| 参数 | 说明 | 来源 |
|---|---|---|
| company_name | 单位名称 | enterprise_config.company |
| department | 所属部门 | enterprise_config.department |
| exam_title | 试卷/题库主题 | 根据资料内容自动生成 |
| inspector | 出题人 | enterprise_config.inspector |
| supervisor | 监考人 | 空(留白) |
| grader | 阅卷人 | 空(留白) |
| exam_duration | 考试时长 | 按模式默认值 |
| question_count | 各题型数量 | 按模式默认配比 |
| total_score | 总分 | 100分 |
Step 3:数据源调取与解析
3.1 确定数据源
根据第三章优先级规则确定数据源组合。
3.2 调取数据
- 本地知识库:直接读取内置知识库内容
- IMA知识库:通过
web_fetch/search_web检索对应领域安全知识 - 用户上传资料:使用
parse_file工具解析文件,提取全部文本内容
3.3 处理数据
- 提取全部文本内容
- 识别并归纳核心知识点(安全操作规程、注意事项、法规要求、应急措施等)
- 按知识点分类整理,标注来源
- IMA数据源调取失败时:「腾讯IMA知识库调取失败,已切换本地安全知识库为您生成内容,如需使用IMA专属素材,请稍后重试或检查数据源链接状态」
- 上传资料解析失败时:「上传资料解析失败,文件格式不支持、文件损坏或无有效安全知识点内容,已自动切换默认知识库为您出题,请重新上传有效资料」
Step 4:生成题目
出题规则:
1. 每道题必须能追溯到具体数据源中的知识点,在解析中注明出处
2. 干扰选项应合理,不能过于明显或荒谬
3. 同一知识点不以不同题型重复考查
4. 难度配比严格遵循对应模式的设定(基础:理解:应用)
5. 题目排列按难度递进:基础题 → 理解题 → 应用题
6. 专项试卷模式下,所有题目必须100%贴合专项主题
题目数据结构(生成 exam_data.json):
{
"generation_mode": "exam_paper | question_bank",
"paper_type": "team | department | comprehensive | special",
"company_name": "合金事业部圆棒工序",
"department": "铝加工深井铸造车间",
"exam_title": "深井铸造安全操作规程培训考试",
"inspector": "刘小海",
"supervisor": "",
"grader": "",
"exam_date": "",
"exam_duration": 30,
"total_score": 100,
"data_sources": ["local_kb", "ima_kb"],
"special_topic": null,
"questions": {
"single_choice": [
{
"id": 1,
"question": "题目内容",
"options": {"A": "选项A", "B": "选项B", "C": "选项C", "D": "选项D"},
"answer": "A",
"score": 2,
"difficulty": "基础",
"knowledge_point": "对应知识点",
"knowledge_category": "分类标签",
"analysis": "解析说明,注明资料出处",
"source": "数据源:具体出处"
}
],
"multi_choice": [
{
"id": 1,
"question": "题目内容",
"options": {"A": "选项A", "B": "选项B", "C": "选项C", "D": "选项D"},
"answer": ["A", "C"],
"score": 3,
"difficulty": "理解",
"knowledge_point": "对应知识点",
"knowledge_category": "分类标签",
"analysis": "解析说明",
"source": "数据源:具体出处",
"scoring_rule": "少选得1分,多选/错选不得分"
}
],
"true_false": [
{
"id": 1,
"question": "题目内容",
"answer": true,
"score": 2,
"difficulty": "基础",
"knowledge_point": "对应知识点",
"knowledge_category": "分类标签",
"analysis": "解析说明",
"source": "数据源:具体出处"
}
],
"fill_blank": [
{
"id": 1,
"question": "题目内容,空白处用______表示",
"answer": "正确答案",
"score": 2,
"difficulty": "理解",
"knowledge_point": "对应知识点",
"knowledge_category": "分类标签",
"analysis": "解析说明",
"source": "数据源:具体出处"
}
],
"short_answer": [
{
"id": 1,
"question": "题目内容",
"answer": "参考答案要点(分点列出评分要点)",
"score": 10,
"difficulty": "应用",
"knowledge_point": "对应知识点",
"knowledge_category": "分类标签",
"analysis": "详细解析",
"source": "数据源:具体出处"
}
]
}
}
字段说明:
- generation_mode: "question_bank" 表示题库模式,"exam_paper" 表示试卷模式
- paper_type: 试卷模式下的子类型,题库模式下为 null
- knowledge_category: 知识点分类标签,用于题库筛选复用
- source: 格式为 "数据源类型:具体出处",如 "IMA知识库:消防安全管理制度第三章"
- exam_duration: 考试时长(分钟),题库模式下为 null
- special_topic: 专项主题名称,仅专项试卷模式使用
Step 5:生成文件
目录约定:
- data/temp/ — 中间产物(exam_data.json 等),任务结束后保留不清理
- data/output/ — 最终产出物(试卷/题库/PPT),交付给用户
将 exam_data.json 保存到 data/temp/exam_data.json,然后根据模式运行对应脚本。
5.1 题库模式输出
仅生成题库文件,不生成试卷和PPT:
cd skills/sop-exam-generator
python3 scripts/generate_question_bank.py --input data/temp/exam_data.json --output data/output/题库_YYYYMMDD.xlsx
5.2 试卷模式输出(班组/部门/综合/专项)
生成三份文件:
cd skills/sop-exam-generator
# 空白试卷
python3 scripts/generate_exam.py --mode blank --paper-type <type> --input data/temp/exam_data.json --output data/output/试卷_YYYYMMDD.docx
# 答案解析卷
python3 scripts/generate_exam.py --mode answer --paper-type <type> --input data/temp/exam_data.json --output data/output/试卷_答案解析_YYYYMMDD.docx
# 学习PPT
python3 scripts/generate_ppt.py --input data/temp/exam_data.json --output data/output/学习PPT_YYYYMMDD.pptx
试卷排版要求:
- A4纸,页边距上下2.54cm、左右3.17cm
- 标题:黑体小二号居中
- 抬头信息区(含考试须知、时长、满分等):宋体小四号,两列布局
- 分隔线:标题与内容之间有横线
- 正文:宋体小四号,1.5倍行距
- 选择题选项:两列排布
- 每道大题前有题型说明和分值
- 每道题前有序号和分值标注
答案解析卷排版:
- 与空白试卷相同格式
- 每道题答案用红色加粗标注
- 解析用灰色小字附在答案下方
- 试卷末尾附知识点汇总表
PPT结构:
- 封面页:标题+单位+日期
- 知识点梳理页(每个知识点1页):要点提炼+关键内容
- 题目练习页(每道题1页):题目+选项→点击后显示答案和解析
- 总结页:考试重点回顾
Step 6:交付
将生成的文件交付给用户,按模式说明文件内容和数量。
五、标准化出错提示体系
所有异常场景使用以下固定文案,禁止模糊回复:
| 异常类型 | 标准提示文案 |
|---|---|
| 指令模糊 | 无法识别您的具体需求,请明确您需要生成的内容类型(题库/班组试卷/部门试卷/综合试卷/专项试卷),若为专项试卷,请补充具体安全主题 |
| 非领域需求 | 本Skill仅支持安全领域题库及试卷生成,暂不支持其他领域内容创作,请调整需求 |
| IMA数据源调用失败 | 腾讯IMA知识库调取失败,已切换本地安全知识库为您生成内容,如需使用IMA专属素材,请稍后重试或检查数据源链接状态 |
| 上传资料解析失败 | 上传资料解析失败,文件格式不支持、文件损坏或无有效安全知识点内容,已自动切换默认知识库为您出题,请重新上传有效资料 |
| 需求参数缺失 | 当前需求参数不全,生成专项试卷需明确具体安全主题,生成考试试卷可补充考试人群、考试时长、题目数量、难度要求,我将为您精准定制 |
| 违规内容拦截 | 需求包含违规、不符合安全规范的内容,无法为您生成,请调整需求后重试 |
| 场景不匹配 | 您当前指定的场景与生成模式不匹配,请确认生成模式(题库/班组/部门/综合/专项)与使用场景一致 |
| 资料内容不足 | 当前数据源内容不足以支撑指定数量的题目,建议调整题目数量或补充资料后重试 |
六、通用输出规范
- 所有模式输出内容格式规整、分类清晰,题目无重复、知识点无冲突,解析通俗易懂,贴合对应使用人群认知水平
- 对接IMA知识库生成的内容,需在文末标注:部分素材来源:腾讯IMA知识库
- 基于用户上传资料生成的内容,需在文末标注:部分素材来源:用户上传专属资料
- 自动适配用户隐性需求,未指定题目数量、难度时,默认匹配对应模式标准配置
- 所有试卷类内容自带完整排版,可直接用于线下/线上考试;题库类内容支持直接导出复用
七、优先级执行规则
- 用户明确指定生成模式时,优先遵从用户指定模式执行
- 用户有上传资料、指定数据源时,优先使用对应专属数据源,无特殊配置则三数据源融合出题
- 触发多条件冲突时,以「用户明确指令 > 场景适配优先级 > 默认规则」为执行标准
- 出现任何异常,优先弹出对应标准化出错提示,终止无效生成流程
八、注意事项
- 题库模式下不生成试卷格式文件(无总分、无时长、无须知),仅输出题库文件
- 多选题至少4个选项,至少2个正确答案,少选得1分
- 判断题的表述应明确,避免歧义
- 简答题的答案应给出评分要点,方便阅卷
- 所有数据必须来自指定数据源,解析中注明出处
- 专项试卷模式必须确认具体安全主题后才可生成