Prompt_guzhang = """ 你是一个故障实体关系抽取专家,根据给出的符合要求html源码,能够抽取出对应的实体以及关系 "故障模式"实体主要包括以下属性:"名称", "故障原因", "故障影响", "故障类型", "发生时间", "处置情况", "修复情况",“维修方案” 文本中"故障原因"与故障实体属性相对应,进行对应填充即可,其中"名称"对应于实体的"故障现象"属性,"维修项目"字段内容对应实体的"维修项目"属性; 每提取一组维修模式,结合故障现象字段对应文本内容分析,找出故障现象所关联的系统并建立对应的实体,并建立“存在”关系 "系统"实体主要包括以下属性:"名称", "型号", "技术责任单位", "生产单位", "技术状态", "生产日期", "启用时间", "运行时间", "运行条件" 如果实体的属性在文本中没有找到,请不要随意添加其他内容,可以为空;其次,抽取的系统实体应来源故障现象字段对应的文本内容中,不要随意添加,也不要将其他记录的故障现象对应别的系统实体中 示例: 输入为: # 4.2 常见故障表 船舶主发动机的常见故障如下表所示: 表 4.2 常见故障表
序号故障现象故障原因维修项目
1机座与机架组件运行中振动异常增大主轴承或连杆大端轴承磨损执行以下维修项目:MT004更换连杆大端轴承MT017修复连杆大端轴承异常磨损
曲轴主轴颈跳动超差执行以下维修项目:MT003检测曲轴主轴颈跳动量
2气缸套排气温度异常升高排气阀密封面磨损或阀座烧蚀执行以下维修项目:MT011检查排气阀杆密封面磨损MT012更换排气阀座
涡轮增压器轴承损坏执行以下维修项目:MT015更换涡轮增压器轴承组件
3扫气箱内发现润滑油泄漏活塞杆填料函密封失效执行以下维修项目:MT001保养机座与机架组件
输出为: {{ "entities": [ {{ "type": "故障模式", "properties": {{ "名称": "机座与机架组件运行中振动异常增大", "故障原因": "1.主轴承或连杆大端轴承磨损, 2. 曲轴主轴颈跳动超差", "故障影响": "", "故障类型": "", "发生时间": "", "处置情况": "", "修复情况": "", "维修方案": "1.执行以下维修项目:MT004 更换连杆大端轴承;MT017 修复连杆大端轴承异常磨损 2.执行以下维修项目:MT003 检测曲轴主轴颈跳动量", "维修项目": ["MT004","MT017","MT003"] }} }}, {{ "type": "故障模式", "properties": {{ "名称": "气缸套排气温度异常升高", "故障原因": "1. 排气阀密封面磨损或阀座烧蚀 2.涡轮增压器轴承损坏", "故障影响": "", "故障类型": "", "发生时间": "", "处置情况": "", "修复情况": "", "维修方案": "1.执行以下维修项目:MT011 检查排气阀杆密封面磨损;MT012 更换排气阀座 2.执行以下维修项目:MT015 更换涡轮增压器轴承组件", "维修项目": ["MT011","MT012","MT015"] }} }}, {{ "type": "故障模式", "properties": {{ "名称": "扫气箱内发现润滑油泄漏", "故障原因": "活塞杆填料函密封失效", "故障影响": "", "故障类型": "", "发生时间": "", "处置情况": "", "修复情况": "", "维修方案": "执行以下维修项目:MT001保养机座与机架组件", "维修项目": ["MT001"] }} }}, {{ "type": "系统", "properties": {{ "名称": "机座与机架组件", "型号": "", "技术责任单位": "", "生产单位": "", "技术状态": "", "生产日期": "", "启用时间": "", "运行时间": "", "运行条件": "", }} }}, {{ "type": "系统", "properties": {{ "名称": "气缸套", "型号": "", "技术责任单位": "", "生产单位": "", "技术状态": "", "生产日期": "", "启用时间": "", "运行时间": "", "运行条件": "", }} }}, {{ "type": "系统", "properties": {{ "名称": "涡轮增压器", "型号": "", "技术责任单位": "", "生产单位": "", "技术状态": "", "生产日期": "", "启用时间": "", "运行时间": "", "运行条件": "", }} }}, ], "relationships": [ {{ "type": "存在", "from_entity": "机座与机架组件", "to_entity": "机座与机架组件运行中振动异常增大" }}, {{ "type": "存在", "from_entity": "气缸套", "to_entity": "气缸套排气温度异常升高" }} {{ "type": "存在", "from_entity": "扫气箱", "to_entity": "扫气箱内发现润滑油泄漏" }}, ] }} 确保抽取的故障类实体完整,不要遗漏,"名称"字段不要丢失,也不要胡乱填充其他字段内容 只输出纯JSON,不要任何其他文本、解释或Markdown。 抽取的实体以及实体属性值应严格来源于文本,不可以做任何擅自更改,例如将"排气温度异常升高"更改为"排气温度异常增长" 如果给出的上下文中,无法抽取出"系统",那么就不需要抽取,也没有对应的关系,即"relationships"为[] 抽取过程中,需要注意html源码多行合并的情况,尤其是故障现象字段值为同一行,但是维修项目和故障原因字段值会有多行,这种情况下,故障实体只有一个,为最近前一行的故障现象,且维修项目和故障原因字段值为多行内容合并的结果。例如”3曲轴主轴颈跳动超差执行以下维修项目:MT003检测曲轴主轴颈跳动量 4飞轮连接螺栓松动执行以下维修项目:MT003检测曲轴组件(含飞轮紧固状态检查)",丢失了故障现象,只有故障原因和 维修项目字段内容,那么不需要构建故障实体,而是将对应字段内容合并到前面最近一行存在故障现象的实体。即"2主机运行中振动异常增大主轴承或连杆大端轴承磨损执行以下维修项目:MT004更换连杆大端轴承MT017修复连杆大端轴承异常磨损" 请按照上述示例,对给出的文本进行实体抽取,给出文本为: {text} """ Prompt_compose = """ 你是一个系统和子系统实体关系抽取专家,根据给出的符合要求html源码,能够抽取出对应的实体以及关系 "系统"实体主要包括以下属性:"名称", "型号", "技术责任单位", "生产单位", "技术状态", "生产日期", "启用时间", "运行时间", "运行条件" 系统实体与子系统实体存在包含,一般系统由子系统组成 其中,系统实体主要来源表格html源码之前内容,主要是表格名称等,阐述该系统由表中子系统组成 "子系统"实体主要包括以下属性:"名称", "型号", "技术责任单位", "生产单位" 如果抽取设备以及设备的子零部件,那么它们之间也存在包含关系。 示例: 输入为: 以下部分介绍螺旋桨的组成、工作原理、技术指标、接口情况、布置情况,从各方面知悉发动机的基本信息。 # 3.1 组成 ![](http://localhost:8000/output/images/26d6810a0ccb7b123a1ee24abf9feab2ccf15894c6874859f9e6544f2ab3667d.jpg) 图 3.1 螺旋桨组成图 表 3.1 螺旋桨组成部分
组成部分功能描述数量
桨叶核心推进部件,通过旋转推动水流产生反作用推力。其翼型、螺距和面积决定了推进效率。通常为3至6叶,最常见为4叶或5叶
2桨毂连接和固定所有桨叶的中心壳体,内部包含与尾轴连接的法兰或锥孔。1个
3桨毂帽安装在桨毂后部的流线型罩盖,用于减少桨毂后部产生的涡流阻力,提升水动力效率。1个(非所有螺旋桨标配)
输出为: {{ "entities": [ {{ "type": "系统", "properties": {{ "名称": "螺旋桨", "型号": "", "技术责任单位": "", "生产单位": "", "技术状态": "", "生产日期": "", "启用时间": "", "运行时间": "", }} }}, {{ "type": "子系统", "properties": {{ "名称": "桨叶", "型号": "", "技术责任单位": "", "生产单位": "", "功能": "核心推进部件,通过旋转推动水流产生反作用推力。其翼型、螺距和面积决定了推进效率。" }} }}, {{ "type": "子系统", "properties": {{ "名称": "桨毂", "型号": "", "技术责任单位": "", "生产单位": "", "功能" : "连接和固定所有桨叶的中心壳体,内部包含与尾轴连接的法兰或锥孔。" }} }}, {{ "type": "子系统", "properties": {{ "名称": "桨毂帽", "型号": "", "技术责任单位": "", "生产单位": "", "功能" : "安装在桨毂后部的流线型罩盖,用于减少桨毂后部产生的涡流阻力,提升水动力效率。" }} }}, ], "relationships": [ {{ "type": "包含", "from_entity": "螺旋桨", "to_entity": "桨叶" }}, {{ "type": "包含", "from_entity": "螺旋桨", "to_entity": "桨毂" }}, {{ "type": "包含", "from_entity": "螺旋桨", "to_entity": "桨毂帽" }}, ] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 请按照上述示例,对给出的文本进行系统实体抽取,给出文本为: {text} """ Prompt_compose_tujie1= """ 你是一个系统、子系统、部件和零部件实体关系抽取专家,根据给出的符合要求html源码,能够抽取出对应的实体以及关系 "系统"和"子系统"实体主要包括以下属性:"名称", "型号", "生产单位", "等级" 其中,"系统"实体主要来源表格html源码之前内容,主要是表格名称等等内容,例如“表 2.2 FL-3.0 通信风冷装置设备组成表”中主设备为“通信风冷装置设备” html表格源码主要阐述该主系统由表中子系统、部件、零部件组成 表中表格中组成编码字段值可以分析子系统、部件、一级零部件、二级零部件之间的包含关系,,表中每条记录的"组成编码"字段值代表了其实体类型, 如果组成编码为2位数字(如02,21),那么应该为子系统实体,如果为4位等数字(如0219等),那么应该为部件实体,同时编码对应的实体存在包含关系 如果组成编码为6位数字(如021901,021921等),那么应该为一级零部件实体,同时与组成编码为0219的部件实体,存在包含关系 如果组成编码为8位数字(如02190308,02190316等),那么应该为二级零部件实体,同时与组成编码为021903的一级零部件实体,存在包含关系 例如表名关联的主系统实体为螺旋桨,表中组成编码字段值01表示螺旋桨的子系统,存在螺旋桨和子系统的包含关系,0101表示组成编码01子系统的部件实体,010101则表示0101组成编码对应部件的一级零部件 "部件"、"零部件"实体主要包括以下属性:"名称", "型号", "技术责任单位", "生产单位" 示例: 输入为: # 2.4 组成表示例 如表2.2所示,为FL-3.0通信风冷装置的组成分解示例,首先将该设备分解为2个独立的子设备或部套件,然后再将各子设备或部套件向下分解,分别分析各子设备或部套件是否为关重件或寿命件。设备组成表提交模板见附件一。 表 2.2 FL-3.0 通信风冷装置设备组成表
组成编码名称是否为关重件是否为寿命件备注
01风冷装置
0101底座组件
0102下柜体组件
010201下框架组件
010202下面门组件
0103换热器8P
02电控箱
0201箱体
输出为: {{ "entities": [ {{ "type": "系统", "properties": {{ "名称": "通信风冷设备", "型号": "", "生产单位": "", "等级": "", }} }}, {{ "type": "子系统", "properties": {{ "名称": "风冷装置", "型号": "", "生产单位": "", "等级": "", "是否为关重件" : "否", "是否为寿命件" : "否", "组成编码" : "01", "备注" : "" }} }}, {{ "type": "设备", "properties": {{ "名称": "电控箱", "型号": "", "生产单位": "", "等级": "", "是否为关重件" : "否", "是否为寿命件" : "否", "组成编码" : "02", "备注" : "" }} }}, {{ "type": "部件", "properties": {{ "名称": "底座组件", "型号": "", "技术责任单位": "", "生产单位": "", "是否为关重件" : "否", "是否为寿命件" : "否", "组成编码" : "0101", "备注" : "" }} }}, {{ "type": "部件", "properties": {{ "名称": "下柜体组件", "型号": "", "技术责任单位": "", "生产单位": "", "是否为关重件" : "否", "是否为寿命件" : "否", "组成编码" : "0102", "备注" : "" }} }}, {{ "type": "一级零部件", "properties": {{ "名称": "下框架组件", "型号": "", "技术责任单位": "", "生产单位": "", "是否为关重件" : "否", "是否为寿命件" : "否", "组成编码" : "010201", "备注" : "" }} }}, {{ "type": "一级零部件", "properties": {{ "名称": "下面门组件", "型号": "", "技术责任单位": "", "生产单位": "", "是否为关重件" : "否", "是否为寿命件" : "否", "组成编码" :"010202", "备注" : "" }} }}, {{ "type": "部件", "properties": {{ "名称": "换热器8P", "型号": "", "技术责任单位": "", "生产单位": "", "是否为关重件" : "是", "是否为寿命件" : "否", "组成编码" :"0103", "备注" : "" }} }}, {{ "type": "部件", "properties": {{ "名称": "箱体", "型号": "", "技术责任单位": "", "生产单位": "", "是否为关重件" : "是", "是否为寿命件" : "是", "组成编码" :"0201", "备注" : "" }} }}, ], "relationships": [ {{ "type": "包含", "from_entity": "通信风冷设备", "to_entity": "风冷装置" }}, {{ "type": "包含", "from_entity": "通信风冷设备", "to_entity": "电控箱" }}, {{ "type": "包含", "from_entity": "风冷装置", "to_entity": "底座组件" }}, {{ "type": "包含", "from_entity": "风冷装置", "to_entity": "下柜体组件" }}, {{ "type": "包含", "from_entity": "下柜体组件", "to_entity": "下框架组件" }}, {{ "type": "包含", "from_entity": "下柜体组件", "to_entity": "下面门组件" }}, {{ "type": "包含", "from_entity": "风冷装置", "to_entity": "换热器8P" }}, {{ "type": "包含", "from_entity": "电控箱", "to_entity": "箱体" }}, ] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 表格前文本中提取到的主设备实体,请不要遗漏 请不要将字段内容任意填充到其他属性值里面 请按照上述示例,对给出的文本进行实体关系抽取,给出文本为: {text} """ Prompt_compose_tujie2 = """ 你是一个子系统、部件和零部件实体关系抽取专家,根据给出的符合要求html源码,能够抽取出对应的实体以及关系 "子系统"实体主要包括以下属性:"名称", "型号", "生产单位", "等级" html表格源码主要阐述该主系统由表中子系统、部件、零部件组成 表中表格中组成编码字段值可以分析子系统、部件、一级零部件、二级零部件之间的包含关系,,表中每条记录的"组成编码"字段值代表了其实体类型, 如果组成编码为2位数字(如02,21),那么应该为子系统实体,如果为4位等数字(如0219等),那么应该为部件实体,同时编码对应的实体存在包含关系 如果组成编码为6位数字(如021901,021921等),那么应该为一级零部件实体,同时与组成编码为0219的部件实体,存在包含关系 如果组成编码为8位数字(如02190308,02190316等),那么应该为二级零部件实体,同时与组成编码为021903的一级零部件实体,存在包含关系 例如表名关联的主系统实体为螺旋桨,表中组成编码字段值01表示螺旋桨的子系统,存在螺旋桨和子系统的包含关系,0101表示组成编码01子系统的部件实体,010101则表示0101组成编码对应部件的一级零部件 "零部件"实体主要包括以下属性:"名称", "型号", "技术责任单位", "生产单位" 示例: 输入为:
房号组成编码名称型号/零件号重量(kg)数量
10701高温淡水冷却回路-1
2070101高温淡水泵KSB Etanorm SYT100-3151502
307010101泵驱动电机Siemens 1LA8 316-4AA802
输出为: {{ "entities": [ {{ "type": "部件", "properties": {{ "名称": "高温淡水冷却回路", "型号/零件号": "", "技术责任单位": "", "生产单位": "", "重量(kg)" : "", "数量" : "1", "组成编码" :"0701" }} }}, {{ "type": "一级零部件", "properties": {{ "名称": "高温淡水泵", "型号/零件号": "KSB Etanorm SYT 100-315", "技术责任单位": "", "生产单位": "", "重量(kg)" : "150", "数量" : "2", "组成编码" :"070101" }} }}, {{ "type": "二级零部件", "properties": {{ "名称": "泵驱动电机", "型号/零件号": "Siemens 1LA8 316-4AA", "技术责任单位": "", "生产单位": "", "重量(kg)" : "80", "数量" : "2", "组成编码" :"07010101" }} }}, ], "relationships": [ {{ "type": "包含", "from_entity": "高温淡水冷却回路", "to_entity": "高温淡水泵" }}, {{ "type": "包含", "from_entity": "高温淡水泵", "to_entity": "泵驱动电机" }}, ] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 不要修改表格中内容,避免填充错误的属性值;实体类型严格按照组成编码判断和定义 请按照上述示例,对给出的文本进行实体关系抽取,给出文本为: text """ Prompt_compose_mulu_tujie = """ 你是一个专业的HTML表格解析器,请将以下HTML表格转换为标准JSON数组,每行数据对应一个对象,对象的键来自表头(第一行非空中的文本),值为对应行的单元格内容。 示例:
序号组成编码名称型号/零件号重量(kg)数量
101螺旋桨本体总成CPP-UNIT-8500-4B12,500118,0001
202轴系与传动总成SHAFTING-SYS-85008,000 115,0001
303调距机构总成(CPP)CPP-MECH-85003,5006,0001
404控制系统总成CPP-CONTROL-S85800 11,5001
图名:船舶主发动机图解目录
图号:01
输出为: [ {{ "组成编码" : "01", "名称" : "螺旋桨本体总成", "型号/零件号" : "CPP-UNIT-8500-4B", "重量(kg)" : "12,500 - 18,000" }}, {{ "组成编码" : "02", "名称" : "轴系与传动总成", "型号/零件号" : "SHAFTING-SYS-8500", "重量(kg)" : "8,000 - 15,000" }}, {{ "组成编码" : "03", "名称" : "调距机构总成(CPP)", "型号/零件号" : "CPP-MECH-8500", "重量(kg)" : "3,500 - 6,000" }}, {{ "组成编码" : "04", "名称" : "控制系统总成", "型号/零件号" : "CPP-CONTROL-S85", "重量(kg)" : "800 - 1,500" }} ] 只输出纯JSON,不要任何其他文本、解释或Markdown。 请按照上述示例,对给出的文本进行抽取,给出文本为: text """ Prompt_anli=""" 你是一个专业的装备故障信息结构化抽取助手。请根据以下规则,从提供的故障报告文本中提取“系统”和“故障模式”两类实体,并建立它们之间的关系。 ###提取规则如下: 1、故障模式实体(type: "故障模式") 名称:由“装备名称 + 故障关键词”构成,一般来源于文中的故障现象,例如“1号主机冷却系统温度异常升高”。 properties 字段包括: "故障现象":来自“故障现象”对应的具体描述文字。 "发生时间":来自“时间”、"故障时间"字段。 "维修方案":来自“三、故障排除”、“# 排除方法”等字段信息。 "经验总结":来自“四、经验启示”、“# 启示”等章节字段内容。 "发生地点": 来自于文字中"地点"字段信息 除了上述字段,其他字段如“故障原因”“故障影响”“故障类型”“处置情况”“修复情况”等若原文未明确说明,若无法确定,则留空字符串 ""。 2、系统设备实体(type: "系统") 名称 与 properties["名称"] 均取自“装备名称”、“故障设备”等字段信息。 properties["生产单位"] 取自“单位”字段(如“XX 舰艇保障大队”)。 其余属性(型号、技术责任单位、技术状态、生产日期、启用时间、运行时间、运行条件)若原文未提供,一律留空字符串 ""。 3、关系(relationships) 必须包含一条 "具有" 类型的关系:from_entity 为系统设备实体的 名称,to_entity 为故障模式实体的 名称。 若存在更高层级设备(如“主机系统”包含“冷却系统”),但原文未提及,则不需构造“包含”关系。仅当原文明确有层级结构时才添加。本例中无上级设备,故只保留“存在”关系。 输出格式严格遵循 JSON 结构,不得包含额外解释、注释或 Markdown。仅输出一个 JSON 对象,包含 "entities" 和 "relationships" 两个顶层字段。 ### 输出格式要求: 只输出纯JSON,不要任何其他文本、解释或Markdown。结构如下: {{ "entities": [ {{ "type": "系统", "properties": {{ "名称": "通信风冷设备", "型号": "FL-2000", "技术责任单位": "701所", "生产单位": "沪东重机", "技术状态": "正常", "生产日期": "2021-08", "启用时间": "2022-01", "运行时间": "5000小时", "运行条件": "舱内通风良好,无腐蚀性气体" }} }}, {{ "type": "故障模式", "properties": {{ "名称": "设备表面温度超过80℃", "故障原因": "散热风扇停转", "故障影响": "导致通信设备降频", "故障类型": "硬件故障", "发生时间": "2024-11-15", "处置情况": "切换备用风机", "修复情况": "更换风扇电机", "维修方案":"进行设备的温度测试,进行降温" }} }} ], "relationships": [ {{ "type": "存在", "from_entity": "通信风冷设备", "to_entity": "设备表面温度超过80℃" }} ] }} 示例1: 输入为: # 一、故障现象 单位:XX 舰艇保障大队 时间:2013 年 05 月 7 日 9 时 23 分 37 秒 舰艇状态:航行中,主机正常运行 装备名称:1 号主机冷却系统 故障现象:1 号主机冷却系统温度异常升高,监控面板显示冷却液温度持续超过警戒值$( > 9 5 ^ { \circ } C ) .$ ),伴随系统压力波动,报警指示灯常亮。 # 二、分析判断 根据 A 设备发生的温度异常升高现象,结合相关技术手册与历史故障记录,分析如下: (一)冷却液循环泵可能存在异常,导致流量不足; (二)热交换器内部堵塞或外部散热片污损,影响散热效率; (三)温度传感器或控制系统信号异常,导致误报警。 # 三、故障排除 ![image](https://cdn-mineru.openxlab.org.cn/result/2026-01-19/8ca2fbe0-d6f4-4062-b40c-bb98b03b5006/fe9fb37249ebdf935ee0d237e447d5de52ac996315f572c343273a679db06785.jpg) # 图:冷却系统结构简图 # (一)初步检查 关闭主机,检查冷却液液位及管路是否泄漏,确认液位正常、无泄漏。 # (二)系统检测 使用便携式流量计检测循环泵输出流量,发现流量低于标准值;拆卸热交换器检查,发现内部有沉积物堵塞。 # (三)故障处理 清洗热交换器内部,更换循环泵滤网,重新加注冷却液并排气。启动系统后,温度恢复正常,压力稳定,报警消除。四、经验启示(阐述对于本次故障的经验总结,例如这个故障是不是常发生的故障等) 本次故障为常见故障类型,多因冷却系统长期运行未及时清洗维护所致。建议: (一)定期清洗热交换器与滤网; (二)加强日常巡检,特别是高温季节; (三)建立冷却系统维护台账,记录清洗与更换周期。 故障二、XXX 型号A 设备A 故障 输出为: {{ "entities": [ {{ "type": "系统", "properties": {{ "名称": "1 号主机冷却系统", "型号": "", "技术责任单位": "XX 舰艇保障大队", "生产单位": "", "技术状态": "", "生产日期": "", "启用时间": "", "运行时间": "", "运行条件": "" }} }}, {{ "type": "故障模式", "properties": {{ "故障现象": "1 号主机冷却系统温度异常升高,监控面板显示冷却液温度持续超过警戒值$( > 9 5 ^ { \circ } C ) .$ ),伴随系统压力波动,报警指示灯常亮。", "故障原因": "根据 A 设备发生的温度异常升高现象,结合相关技术手册与历史故障记录,分析如下: (一)冷却液循环泵可能存在异常,导致流量不足; (二)热交换器内部堵塞或外部散热片污损,影响散热效率; (三)温度传感器或控制系统信号异常,导致误报警。 ", "故障影响": "", "故障类型": "", "发生时间": "2013 年 05 月 7 日 9 时 23 分 37 秒", "处置情况": " ", "修复情况": "", "维修方案":"![image](https://cdn-mineru.openxlab.org.cn/result/2026-01-19/8ca2fbe0-d6f4-4062-b40c-bb98b03b5006/fe9fb37249ebdf935ee0d237e447d5de52ac996315f572c343273a679db06785.jpg) # 图:冷却系统结构简图 # (一)初步检查 关闭主机,检查冷却液液位及管路是否泄漏,确认液位正常、无泄漏。 # (二)系统检测 使用便携式流量计检测循环泵输出流量,发现流量低于标准值;拆卸热交换器检查,发现内部有沉积物堵塞。 # (三)故障处理 清洗热交换器内部,更换循环泵滤网,重新加注冷却液并排气。启动系统后,温度恢复正常,压力稳定,报警消除。四、经验启示(阐述对于本次故障的经验总结,例如这个故障是不是常发生的故障等) 本次故障为常见故障类型,多因冷却系统长期运行未及时清洗维护所致。建议: (一)定期清洗热交换器与滤网; (二)加强日常巡检,特别是高温季节; (三)建立冷却系统维护台账,记录清洗与更换周期。" }} }} ], "relationships": [ {{ "type": "存在", "from_entity": "1 号主机冷却系统", "to_entity": "1 号主机冷却系统温度异常升高,监控面板显示冷却液温度持续超过警戒值$( > 9 5 ^ { \circ } C ) .$ ),伴随系统压力波动,报警指示灯常亮。" }} ] }} 抽取的实体以及实体属性值应严格来源于文本,不可以做任何擅自更改,例如将"设备表面温度超过80℃"更改为"设备表面温度超过100℃" 也不应该擅自中英文符号,例如将实体名称"尺寸(长X宽X高mm)"改成实体名称"尺寸(长X宽X高mm)" 输入文本: text """ prompt_extract_repair_node_rela = """ 你是一个信息抽取专家,根据给出的符合要求html源码,能够抽取出对应的核心信息 给你的文本是一段维修项目表,其中维修项目编号代表该维修项目的编号,请抽取出来,编号内容不要随意修改,也不要遗漏,输出为"wxbianhao":"MT001" 其中维修项目字段代表该维修项目的名称,输出为"维修项目":"检查液压油位、油质与压力" 其中,组成编码与名称是一一对应的,名称代表该项目使用的设备名称,组成编码代表该设备的编码,也可能有一组或者多组,请进行抽取,抽取格式如下: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "提取到的编号 (如 OT005)", "名称": "提取到的维修项目名称" }} }}, {{ "type": "设备", "properties": {{ "组成编码": "提取到的设备组成编码(如 0401)", "名称": "提取到的设备名称", "维修项目编号" : "提取到的编号 (如 OT005)", "维修项目名称": "提取到的维修项目名称" }} }}, ], "relationships": [] }} 示例1: 输入为:
维修项目编号组成编码名称维修项目维修间隔期
MT0210401液压动力单元检查液压油位、油质与压力1D/1W
# 安全注意事项 1. 设备运行状态确认与防护:检查工作通常在设备运行时或刚停机时进行。必须清楚了解检查点周边环境,远离所有旋转部件(如泵轴、风扇、联轴器)和高温表面。衣物须紧束,严禁戴手套靠近旋转部位。若需在运行中检查,应事先规划好安全站位和撤离路线。 2. 防止高压油液喷射与眼部防护:液压系统内存在高压,即使是在检查静止压力时,压力表接头、阀门或软管也可能因老化或未拧紧而发生突然破裂或脱落,导致高压油液喷射。必须全程佩戴防护眼镜或面罩。检查时,身体不得正对压力表或测压接头正面。 保障设备(工具)、备件、消耗材料、人力人员需求 输出为: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "MT021", "名称": "检查液压油位、油质与压力", }} }}, {{ "type": "设备", "properties": {{ "组成编码": "0401", "名称": "液压动力单元", "维修项目编号" : "MT021", "维修项目名称": "检查液压油位、油质与压力" }} }} ], "relationships": [] }} 示例2: 输入为:
维修项目编号组成编码名称维修项目维修间隔期
MT0020402/040203机座与机架组件/焊接机座组件保养机座与机架组件、焊接机座组件1D/1W
# 安全注意事项 1. 设备运行状态确认与防护:检查工作通常在设备运行时或刚停机时进行。必须清楚了解检查点周边环境,远离所有旋转部件(如泵轴、风扇、联轴器)和高温表面。衣物须紧束,严禁戴手套靠近旋转部位。若需在运行中检查,应事先规划好安全站位和撤离路线。 2. 防止高压油液喷射与眼部防护:液压系统内存在高压,即使是在检查静止压力时,压力表接头、阀门或软管也可能因老化或未拧紧而发生突然破裂或脱落,导致高压油液喷射。必须全程佩戴防护眼镜或面罩。检查时,身体不得正对压力表或测压接头正面。 保障设备(工具)、备件、消耗材料、人力人员需求 输出为: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "MT002", "名称": "保养机座与机架组件、焊接机座组件" }} }}, {{ "type": "设备", "properties": {{ "编号": "0402", "名称": "机座与机架组件", "维修项目编号" : "MT002", "维修项目名称": "保养机座与机架组件、焊接机座组件" }} }}, {{ "type": "设备", "properties": {{ "编号": "040203", "名称": "焊接机座组件", "维修项目编号" : "MT002", "维修项目名称": "保养机座与机架组件、焊接机座组件" }} }}, ], "relationships": [] }} 示例3: 输入为: 维修工作卡002 故障名称:阴极过压故障
故障现象WCC-II的BITE 显示 TR-2国021-03阴极稳压电路板
8故障原因> 02-05 阴极电源驱动电源板故障;> 022 高压电源组合故障;→ 021-03 阴极稳压电路板故障。
维修人数 11~2
维修工具场十字起子,一字起子
排除步骤1将放大链全部关机,打开放大链顶盖,等待5分钟,让高压电源放电。2拔掉插头 XP1F022,更换022高压电源组合。3开机,加高压,若仍不正常,断高压,关机,再等待5分钟,拔掉插头XP1F052和XP2F052,更换02-051和02-052板;4若仍不正常,更换021-03 阴极取样电路板。
注意事项Q
输出为: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "002", "名称": "修复阴极过压故障" }} }}, {{ "type": "设备", "properties": {{ "名称": "阴极", "维修项目编号" : "002", "维修项目名称": "修复阴极过压故障" }} }}, ], "relationships": [] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 字段不要擅自修改,例如“组成编码”,不应该随意改成“编码”字段 字段值也不要擅自修改,例如"MT021"改成"T021" 请按照上述示例,对给出的文本进行信息抽取,给出文本为: text """ prompt_extract_repair_node_rela1 = """ 你是一个信息抽取专家,根据给出的符合要求html源码,能够抽取出对应的核心信息 给你的文本是一段维修项目表,其中维修项目编号代表该维修项目的编号,请抽取出来,编号内容不要随意修改,也不要遗漏,输出为"编号":"MT001" 其中维修项目字段代表该维修项目的名称,输出为"维修项目":"检查液压油位、油质与压力",抽取格式如下: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "提取到的编号 (如 OT005)", "名称": "提取到的维修项目名称" }} }} ], "relationships": [] }} 示例1: 输入为:
维修项目编号组成编码名称维修项目维修间隔期
MT0210401液压动力单元检查液压油位、油质与压力1D/1W
# 安全注意事项 1. 设备运行状态确认与防护:检查工作通常在设备运行时或刚停机时进行。必须清楚了解检查点周边环境,远离所有旋转部件(如泵轴、风扇、联轴器)和高温表面。衣物须紧束,严禁戴手套靠近旋转部位。若需在运行中检查,应事先规划好安全站位和撤离路线。 2. 防止高压油液喷射与眼部防护:液压系统内存在高压,即使是在检查静止压力时,压力表接头、阀门或软管也可能因老化或未拧紧而发生突然破裂或脱落,导致高压油液喷射。必须全程佩戴防护眼镜或面罩。检查时,身体不得正对压力表或测压接头正面。 保障设备(工具)、备件、消耗材料、人力人员需求 输出为: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "MT021", "名称": "检查液压油位、油质与压力" }} }} ], "relationships": [] }} 示例2: 输入为:
维修项目编号组成编码名称维修项目维修间隔期
MT0020402/040203机座与机架组件/焊接机座组件保养机座与机架组件、焊接机座组件1D/1W
# 安全注意事项 1. 设备运行状态确认与防护:检查工作通常在设备运行时或刚停机时进行。必须清楚了解检查点周边环境,远离所有旋转部件(如泵轴、风扇、联轴器)和高温表面。衣物须紧束,严禁戴手套靠近旋转部位。若需在运行中检查,应事先规划好安全站位和撤离路线。 2. 防止高压油液喷射与眼部防护:液压系统内存在高压,即使是在检查静止压力时,压力表接头、阀门或软管也可能因老化或未拧紧而发生突然破裂或脱落,导致高压油液喷射。必须全程佩戴防护眼镜或面罩。检查时,身体不得正对压力表或测压接头正面。 保障设备(工具)、备件、消耗材料、人力人员需求 输出为: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "MT002", "名称": "保养机座与机架组件、焊接机座组件" }} }} ], "relationships": [] }} 示例3: 输入为: 维修工作卡002 故障名称:阴极过压故障
故障现象WCC-II的BITE 显示 TR-2国021-03阴极稳压电路板
8故障原因> 02-05 阴极电源驱动电源板故障;> 022 高压电源组合故障;→ 021-03 阴极稳压电路板故障。
维修人数 11~2
维修工具场十字起子,一字起子
排除步骤1将放大链全部关机,打开放大链顶盖,等待5分钟,让高压电源放电。2拔掉插头 XP1F022,更换022高压电源组合。3开机,加高压,若仍不正常,断高压,关机,再等待5分钟,拔掉插头XP1F052和XP2F052,更换02-051和02-052板;4若仍不正常,更换021-03 阴极取样电路板。
注意事项Q
输出为: {{ "entities": [ {{ "type": "维修项目", "properties": {{ "编号": "002", "名称": "修复阴极过压故障" }} }}, ], "relationships": [] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 字段不要擅自修改,例如“编号”,不应该随意改成“编码”字段 字段值也不要擅自修改,例如"MT021"改成"T021" 请按照上述示例,对给出的文本进行信息抽取,给出文本为: text """ prompt_extract_operation_node_rela = """ # Role 你是一个专业的信息抽取专家,专门从操作手册的 HTML/文本片段中提取核心操作项目信息。 # Task 请分析给定的文本(包含表格和描述),提取以下两个核心字段: 1. **opebianhao** (操作项目编号):通常是 "OT" 开头的编号,保持原样,不要修改。一般来源于表中的项目编号字段对应的值 2. **operation_name** (操作项目名称):该编号对应的具体操作标题。一般来源于表中的操作项目字段对应的值 # Output Format (Strictly Enforced) 你必须且只能输出一个标准的 JSON 对象,格式如下: {{ "entities": [ {{ "type": "操作项目", "properties": {{ "编号": "提取到的编号 (如 OT005)", "名称": "提取到的操作项目名称" }} }} ], "relationships": [] }} # Constraints 1. **严禁**输出 Markdown 代码块标记(如 ```json ... ```),只输出纯 JSON 字符串。 2. **严禁**输出任何解释性文字、前言或后语。 3. 如果文本中包含多个操作项目,请在 "entities" 列表中添加多个对象。 4. 如果无法找到编号或名称,该字段填 null,但仍需保持 JSON 结构完整。 5. **绝对不要**输出类似 `["key": "value"]` 的错误格式,必须使用 `{{"key": "value"}}`。 6. 一般一段文本中只有一个操作项目,所以只有1条记录 # Few-Shot Example ## Input Text 表 4.6 轴系与轴承温度、振动定期巡检与记录
项目编号操作项目
OT005轴系与轴承温度、振动定期巡检与记录
安全防护:佩戴装备。 ## Output {{ "entities": [ {{ "type": "操作项目", "properties": {{ "编号": "OT005", "名称": "轴系与轴承温度、振动定期巡检与记录" }} }} ], "relationships": [] }} 请按照上述示例,对给出的文本进行信息抽取,给出文本为: text """ prompt_extract_beipinbeijian_node_rela = """ 你是一个专业备品备件实体关系抽取专家,根据给出的符合要求html源码,能够抽取出对应的实体以及关系: ###提取规则如下: 1、备品备件实体(type: "备品备件") "备品备件"实体主要包括以下属性:"名称", "型号", "规格", "备件编码", "单件重量", "计量单位", "单机数", "随机数量"等属性 文本中"名称", "型号", "规格", "备件编码", "单件重量", "计量单位", "单机数", "随机数量"等属性与给出html源码表格字段对应的值相对应 2、设备实体(type: "设备") 名称一般来源于表html代码之前的标题或者前文文本信息中 其余属性(型号、技术责任单位、技术状态、生产日期、启用时间、运行时间、运行条件)若原文未提供,一律留空字符串 ""。 3、关系(relationships) 必须包含一条 "存储备用" 类型的关系:from_entity 为设备实体的 名称,to_entity 为备品备件实体的 名称。设备实体一般来原于表格的标题名等信息,而表格中内容则主要为备品备件实体 若存在更高层级设备(如“主机系统”存储备用“发动机”),但原文未提及,则不需构造“存储备用”关系。仅当原文明确有上下文时才添加。本例中无上级设备,故只保留“存储备用”关系。 输出格式严格遵循 JSON 结构,不得包含额外解释、注释或 Markdown。仅输出一个 JSON 对象,包含 "entities" 和 "relationships" 两个顶层字段。 示例: 输入为: 筏架舷侧门组合装置 备品备件及工具清单 images/d4f3aa8c438ef1fbdc8ff22d1d5b3e275d8e63c53a0c477c53ba72adbae0439e.jpg
房号备件型号规格尺寸(长宽随机配备数量(90天是否可修R中南R储存要求GR备注
舰上基地环境期限
1筏筒捆扎带组合件22200长期折便换
2螺旋扣22200长期
3卸扣282000h折拆换
输出为: {{ "entities": [ {{ "type": "设备", "properties": {{ "名称": "筏架舷侧门组合装置", "型号": "", "技术责任单位": "", "生产单位": "", "技术状态": "", "生产日期": "", "启用时间": "", "运行时间": "", "运行条件": "" }} }}, {{ "type": "备品备件", "properties": {{ "名称": "筏筒捆扎带组合件", "规格": "", "型号": "", "图号或标准号或代号": "", "计量单位": "套", "单机重量": "", "尺寸(长X宽X高mm)": "", "单机装配数量": "2", "随机配备数量(90 天)_舰上":"2", "随机配备数量(90 天)_舰上":"", "远航配备数量(180天)":"", "实物图片电子文档名称": "", "MTBF(b)": "200h", "生成厂家": "江阴市船舶设备制造有限公司", "出厂日期": "", "供货周期(天)": "", "有效期(月)": "长期", "使用寿命(h)": "拆卸时更换", "备件箱号": "", "储存要求_环境": "", "储存要求_期限": "长期", "停产后供应方式": "" }} }}, {{ "type": "备品备件", "properties": {{ "名称": "螺旋扣", "规格": "", "型号": "", "图号或标准号或代号": "", "计量单位": "只", "单机重量": "", "尺寸(长X宽X高mm)": "", "单机装配数量": "2", "随机配备数量(90 天)_舰上":"2", "随机配备数量(90 天)_舰上":"", "远航配备数量(180天)":"", "实物图片电子文档名称": "", "MTBF(b)": "200h", "生成厂家": "江阴市船舶设备制造有限公司", "出厂日期": "", "供货周期(天)": "", "有效期(月)": "长期", "使用寿命(h)": "拆卸时更换", "备件箱号": "", "储存要求_环境": "", "储存要求_期限": "长期", "停产后供应方式": ""] }} }}, {{ "type": "备品备件", "properties": {{ "名称": "卸扣", "规格": "", "型号": "", "图号或标准号或代号": "", "计量单位": "只", "单机重量": "", "尺寸(长X宽X高mm)": "", "单机装配数量": "2", "随机配备数量(90 天)_舰上":"8", "随机配备数量(90 天)_舰上":"", "远航配备数量(180天)":"", "实物图片电子文档名称": "", "MTBF(b)": "200h", "生成厂家": "江阴市船舶设备制造有限公司", "出厂日期": "", "供货周期(天)": "", "有效期(月)": "长期", "使用寿命(h)": "拆卸时更换", "备件箱号": "", "储存要求_环境": "", "储存要求_期限": "长期", "停产后供应方式": ""] }} }} ], "relationships": [ {{ "type": "存储备用", "from_entity": "筏架舷侧门组合装置", "to_entity": "轴系与轴承温度、筏筒捆扎带组合件" }}, {{ "type": "存储备用", "from_entity": "筏架舷侧门组合装置", "to_entity": "螺旋扣" }}, {{ "type": "存储备用", "from_entity": "筏架舷侧门组合装置", "to_entity": "卸扣" }}, ] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 字段不要擅自修改,例如“尺寸(长X宽X高mm)”,不应该随意改成“尺寸”字段 请按照上述示例,对给出的文本进行备品备件实体抽取,给出文本为: {text} """ filter_text_prompt= """ 你是一个专业的系统实体属性抽取专家,从给出的文本中按照要求抽取所有系统实体以及对应实体的属性值。 ###抽取规则: 系统实体一般指的是一段文本的核心实体,可能会有多个,也可能只有一个,整个内容和主题都围绕这些核心实体进行阐述 系统实体主要包括以下属性:"名称", "型号", "生产单位", "等级" 一般系统实体在文本的名称对应属性"名称",其他三个属性如果文本没有或者无法提取,则默认为空 根据给出文本,分析围绕这些实体阐述了什么额外内容,这些内容能够提供什么新的属性值,并进行抽取 如果存在多个系统实体,那么应该分别进行实体以及对应的属性值抽取.请严格遵守该规则 只需要抽取系统实体名称,如果名称后面有什么编码数字,请不要进行抽取,例如"焊接机座组件(0101)"抽取为"焊接机座组件" ### 输出格式要求: - 必须返回标准的 JSON 数组格式 - 即使只有一个实体,也必须用数组包裹 - 每个数组元素是一个对象,包含 "type" 和 "properties" 字段 - 禁止输出任何解释性文字、Markdown 标记或其他非 JSON 内容 ### 示例1(单实体): 输入文本: 1 安全警告 本章用于提示船舶主发动机在运行、检查及维修过程中可能存在的危险因素,明确最低安全防护要求及违规操作可能造成的后果。所有参与运行与维修的人员必须严格遵守本章规定。 1.1 警告 1)主发动机属于高温、高压、高转动惯量设备,维修作业前必须完全停车、盘车确认、挂牌隔离。 2)严禁在主机带压、带温、带电状态下进行任何拆卸作业,否则可能造成人员伤亡。 3)燃油系统、高压油泵及喷油器为高压精密部件,误操作可能导致高压喷射伤害。 4)吊装曲轴、活塞、气缸盖等重件时,必须使用额定载荷合格的吊具并设置专人指挥。 1.2 注意 1)所有更换件必须使用原厂或等同技术条件的认可备件。 2)防冻液含碱。请避免接触皮肤和眼睛,以免造成 人身伤害。 3)为自身安全考虑,请佩带防护设备:头盔、面罩、安全靴、防护镜、厚手套、护耳等。 4)如果发动机周围环境中存在疑似燃烧介质(如燃油、润滑油或液化石油汽)泄漏或排放,请不要启动或继续运行发动机。 5)拆装过程中严禁敲击精密偶件(如喷油嘴、柱塞偶件)。 6)所有密封件(O形圈、金属密封环)拆装必换。 7)紧固件必须按规定力矩和顺序紧固。 8)起吊时应使用固定在发电机组上的吊耳。请始终检查起吊设备是否处于良好状态和有足够的起吊能力(发动机以及安装的各种附件的重量)。为安全起见,应使用可调节的梁式吊具。所有吊链和缆绳应彼此平行并尽可能与发动机顶部垂直。请注意安装在发动机上的辅助设备会改变发动机的重心。因此,为了保持平衡和确保安全起见,可能需要使用专门的起吊设备。切勿在悬挂于起重设备上且没有任何支撑的发动机上进行工作。重要事项!发动机只能水平起吊。 思考:这段文本提到了”冷水机组“,文本中标题为"警告",根据文本内容可以分析,主要阐述了冷水机组在使用和维修期间过程中需要注意的警告事项 ,因此只有一个系统实体,"名称"属性值应该为"冷水机组",同时可以增加"使用过程中警告事项"属性,综合分析,输出如下: {{ "entities": [ {{ "type": "安全警告", "properties": {{ "名称": "设备名+安全警告", "内容": "1)严禁带电维修、保养设备!\\n2)为了防止电力冲击造成组件击穿,并可能导致伤害或死亡,本设备必须安全、可靠接地!", "切片": }} }}, ] }} ### 示例2(多实体: 输入文本: #2.1 主要功能 船舶主发动机为低速二冲程船用推进柴油机,是船舶推进系统的核心动力装置,其主要功能是将燃油化学能转化为机械能,通过曲轴输出转矩,驱动推进轴系和螺旋桨,实现船舶航行。 发动机主要由以下子系统组成: 1) 焊接机座组件(0101):承载与结构支撑; 2) 曲柄连杆机构:实现往复—旋转运动转换; 3) 燃烧室部件:完成燃烧做功; 4) 排气阀驱动系统:控制废气排放; 5) 燃油喷射系统:完成燃油定时、定量喷射; 6) 扫气与增压系统:提高换气效率与功率密度。 思考:这段文本首先提到了”船舶主发动机“,文本中标题为"主要功能",根据文本内容可以分析,首先"船舶主发动机为低速二冲程船用推进柴油机,是船舶推进系统的核心动力装置,其主要功能是将燃油化学能转化为机械能,通过曲轴输出转矩,驱动推进轴系和螺旋桨,实现船舶航行。"阐述了船舶主发动机主要功能; 接着通过"发动机主要由以下子系统组成"可以得知还有多个系统实体,该文本主要描述了系统实体"主要功能",因此"1) 机座与机架组件:承载与结构支撑; 2) 曲柄连杆机构:实现往复—旋转运动转换; 3) 燃烧室部件:完成燃烧做功; 4) 排气阀驱动系统:控制废气排放; 5) 燃油喷射系统:完成燃油定时、定量喷射; 6) 扫气与增压系统:提高换气效率与功率密度。 "可以分析出,曲柄连杆机构、燃烧室部件、排气阀驱动系统等也可以抽取为系统实体,同时后面对应内容描述该系统实体的主要功能。综上分析,可以抽取实体以及属性如下: {{ "entities":[ {{ "type": "系统", "properties": {{ "名称": "船舶主发动机", "型号": "", "生产单位": "", "等级": "", "功能": "将燃油化学能转化为机械能,通过曲轴输出转矩,驱动推进轴系和螺旋桨,实现船舶航行", "类型": "低速二冲程船用推进柴油机", "组成": "机座与机架组件、曲柄连杆机构、燃烧室部件、排气阀驱动系统、燃油喷射系统、扫气与增压系统" }} }}, {{ "type": "系统", "properties": {{ "名称": "机座与机架组件", "型号": "", "生产单位": "", "等级": "", "功能": "承载与结构支撑" }} }}, {{ "type": "系统", "properties": {{ "名称": "曲柄连杆机构", "型号": "", "生产单位": "", "等级": "", "功能": "实现往复—旋转运动转换" }} }}, {{ "type": "系统", "properties": {{ "名称": "燃烧室部件", "型号": "", "生产单位": "", "等级": "", "功能": "完成燃烧做功" }} }}, {{ "type": "系统", "properties": {{ "名称": "排气阀驱动系统", "型号": "", "生产单位": "", "等级": "", "功能": "控制废气排放" }} }}, {{ "type": "系统", "properties": {{ "名称": "燃油喷射系统", "型号": "", "生产单位": "", "等级": "", "功能": "完成燃油定时、定量喷射" }} }}, {{ "type": "系统", "properties": {{ "名称": "扫气与增压系统", "型号": "", "生产单位": "", "等级": "", "功能": "提高换气效率与功率密度" }} }} ] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 请按照上述示例,对给出的文本进行实体抽取,给出文本为: text """ zhangjie_prompt = """ 你是一个专业的技术文档结构化提取专家。给出的文本是从技术手册中按章节切出的一个片段,已用 # 符号标记标题层级: - `#` 开头:一级章节标题(含编号,如 `#1 概述`、`#2.3 工作原理`) - `##` 开头:二级章节标题(含编号,如 `##1.1 主要功能`) - 无前缀:正文内容、表格或图片说明 ### 提取规则: **情况一:输入包含一级标题(`#` 开头)** - 提取 1 个实体 - `type` = 一级标题去掉编号和首尾空格,例如 `#1 概述` → type 为 `概述` - `properties` 按以下规则构建: - `名称`:留空字符串 ""(由外部代码填充,请勿自行填写) - 一级标题之后、第一个二级标题之前的正文 → 属性键为 `概述` - 每个二级标题(去掉编号和首尾空格)→ 属性键,该标题下的正文 → 属性值 - 如果没有任何二级标题,全部正文 → 属性键为 `内容` - 属性值为空时不输出该属性 **情况二:输入只有二级标题(`##` 开头,无一级标题)** - 提取 1 个实体 - `type` = 二级标题去掉编号和首尾空格,例如 `##3.1 液压系统` → type 为 `液压系统` - `properties`:`名称` 留空,正文内容 → 属性键为 `内容` ### 输出格式: - 必须返回标准 JSON,包含 `entities` 数组 - 禁止输出 relationships、解释文字、Markdown 标记 - 属性值保留原文,不要改写或压缩 ### 示例1(含二级标题的一级章节): 输入文本: #1 概述 本章介绍发动机的基本情况。 ##1.1 主要使用用途及适用范围 本发动机主要用于船舶推进,适用于各类远洋货轮。 ##1.2 主要规格及参数 额定功率:12000kW,转速:91rpm,气缸数:8。 输出: {{ "entities": [ {{ "type": "概述", "properties": {{ "名称": "", "概述": "本章介绍发动机的基本情况。", "主要使用用途及适用范围": "本发动机主要用于船舶推进,适用于各类远洋货轮。", "主要规格及参数": "额定功率:12000kW,转速:91rpm,气缸数:8。" }} }} ] }} ### 示例2(无二级标题的一级章节): 输入文本: #3 工作原理 发动机采用二冲程低速工作方式,活塞向下运动时扫气口打开,新鲜空气扫入气缸,废气经排气阀排出。 输出: {{ "entities": [ {{ "type": "工作原理", "properties": {{ "名称": "", "内容": "发动机采用二冲程低速工作方式,活塞向下运动时扫气口打开,新鲜空气扫入气缸,废气经排气阀排出。" }} }} ] }} ### 示例3(仅二级标题,特殊章节切片): 输入文本: ##4.2 燃油系统 燃油系统由高压油泵、喷油器、燃油管路组成,负责将燃油定时定量喷入气缸。 系统工作压力为900bar,喷油正时由电控单元控制。 输出: {{ "entities": [ {{ "type": "燃油系统", "properties": {{ "名称": "", "内容": "燃油系统由高压油泵、喷油器、燃油管路组成,负责将燃油定时定量喷入气缸。\\n系统工作压力为900bar,喷油正时由电控单元控制。" }} }} ] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 请按照上述规则,对给出的文本进行章节实体提取,给出文本为: {{{text}}} """ toc_prompt = """ 你是一个专业的技术文档结构化提取专家。给出的文本是技术手册的目录页内容。 ### 任务: 从目录中提取所有**一级章节**的编号和名称。 ### 规则: - 一级章节:编号格式为单个数字,如 `1`、`2`、`3`(不含小数点的编号) - 去掉编号、页码、点线,只保留章节名称文字 - **保留所有章节,不要过滤任何章节** ### 输出格式: ```json {{ "chapters": [ {{"numbering": "1", "type": "章节名1"}}, {{"numbering": "2", "type": "章节名2"}} ] }} ``` ### 示例: 目录内容: 1 安全警告 .............. 4 2 概述 .................. 8 2.1 主要使用用途 ....... 9 2.2 主要规格及参数 ..... 10 3 工作原理 .............. 15 4 维修工作指导 .......... 20 5 组成、技术特征及接口 .. 25 输出: {{ "chapters": [ {{"numbering": "1", "type": "安全警告"}}, {{"numbering": "2", "type": "概述"}}, {{"numbering": "3", "type": "工作原理"}}, {{"numbering": "4", "type": "维修工作指导"}}, {{"numbering": "5", "type": "组成、技术特征及接口"}} ] }} 只输出纯JSON,不要任何其他文本、解释或Markdown。 请从以下目录内容中提取一级章节: {{{text}}} """