SKILL.md 17 KB


name: dialog-interpret description: |

对煤矿"一通三防智能管控平台"的监测指标进行智能数据解读。当用户在对话中询问某个巷道、工作面或测风点的风速、风量、瓦斯(甲烷)、一氧化碳(CO)、氧气(O₂)、温度等监测数据情况时使用——典型问法如"XXX巷道风速风量怎么样""分析一下XXX巷道传感器数据""解读一下XXX巷道当前风速风量情况""XXX回风巷瓦斯为什么报红""近7天XXX工作面温度趋势"等。只要用户提到巷道/工作面/测风点名称并结合监测指标提问,就应触发本技能,自动完成"选巷道与指标→查巷道属性→查规程阈值→查计划风量→比对判断→给结论与建议"全流程解读。此外,还支持根据巷道名称查询设备列表、根据模型ID获取巷道列表等辅助功能。

智能通风数据解读技能

本技能封装"数据解读 Agent"的核心能力:依据用户自然语言提问,查询巷道属性、监测数据、规程阈值、计划风量,完成合规判断,输出结构化中文结论与系统调整建议。

两条铁律:

  1. 规程依据统一以《煤矿安全规程》2025 版为准。
  2. 所有数值结论必须来自工具返回的实测数据与规程阈值,不得臆造;结论中需标注依据条款与数据来源。

1. 触发判断

当用户输入符合下列任一情形时触发:

  • 提到具体巷道/工作面/测风点名称(如"北二盘区变电所回风巷""15216 辅运起坡段"),并询问其监测数据情况;
  • 使用"风速/风量/瓦斯/甲烷/CO/一氧化碳/O₂/氧气/温度/传感器数据"等指标词,配合"怎么样/情况/分析/解读/是否满足/为什么报红/趋势"等询问词;
  • 询问某指标在指定巷道/工作面内的排名、对比或历史趋势(如"近7天温度趋势""该巷道风速变化");
  • 询问某巷道下有哪些设备、某模型下有哪些巷道等设备/巷道列表查询需求。
  • 询问"有哪些设备类型""设备分类""设备大类小类""传感器类型有哪些""strType 编码含义"等设备类型字典查询需求。

⚠️ 涉及"全矿/所有巷道"跨巷道聚合排名类问题(如"全矿瓦斯浓度最高的三个点"),当前工具不支持跨巷道聚合;触发后按第 6.3 节处理,告知用户暂不支持并引导改为指定巷道查询。

缺省规则: 用户只问巷道名未说指标 → 默认解读"风速 + 风量";未给时间范围 → 默认解读"当前(实时)"数据。

2. 解读流程总览

用户提问
   │
   ▼
① 解析意图与参数(巷道 / 指标 / 时间范围)
   │
   ▼
② 查巷道属性(类型、断面、用途、关联传感器)   ← query_tun_data_by_id / query_devices_by_tunnel / query_devices_by_tunnel_id / query_tunnel_list / query_tunnels_by_model
	   │
   ▼
③ 查计划风量                                  ← get_tunnel_plan_flow(可选)
   │
   ▼
④ 查监测数据(实时 / 历史)                    ← query_device_data_by_id / list_ventanaly_monitor_data_days
	   │
   ▼
⑤ 查规程阈值(按巷道用途与指标类型)            ← get_wind_limit / get_gas_limit / get_co_limit / get_o2_limit / get_temperature_limit
   │
   ▼
⑥ 合规比对判断(风速 / 风量 / 气体 / 温度)
   │
   ▼
⑦ 生成结论 + 系统调整建议(结构化中文输出)

说明:下方声明的工具为预期接口契约。工具尚未实现时,按契约组织查询并明确告知用户"数据接口待接入";工具就绪后即可按序调用。

3. 第一步:解析意图与参数

从用户提问中提取三类参数:

参数 是否必填 说明 缺省处理
巷道名称 必填 巷道/工作面/测风点名称 缺失时反问用户确认,不要猜测
指标类型 可选 风速 / 风量 / 瓦斯 / CO / O₂ / 温度 / 压力 / 湿度 未指定默认"风速 + 风量"
时间范围 可选 实时 / 近 N 天 / 起止时段 未指定默认"当前实时"
  • 巷道名称在库中匹配到多个(重名/模糊匹配)时,列出候选请用户确认。
  • 涉及历史趋势("近 7 天""上个月")时,换算为起止时间调用历史数据工具。
  • 当用户询问巷道下设备列表时,调用 query_devices_by_tunnelquery_devices_by_tunnel_id
  • 当用户需要按模型查询巷道列表时,优先使用 query_tunnel_list(model_id + tunnel_name 模糊匹配,返回精简列表仅含 modelId/tunnelId/tunnelName)。若该工具无结果,再回退使用 query_tunnels_by_model 获取全量列表。模型ID使用 .env 中的 DEFAULT_MODEL_ID

4. 第二步:调用工具查询(声明式接口契约)

以下工具为预期接口契约,按声明组织查询。

4.1 巷道与设备列表查询

工具 所属服务 入参 出参
get_tunnel_info tunnel-knowledge-server 巷道名称 或 巷道ID 巷道ID、巷道名称、用途类型(useType)、断面积、关联传感器列表
get_tunnel_plan_flow tunnel-knowledge-server 巷道名称 或 巷道ID 计划风量(m³/min)、计划风速(m/s)、测风日期
query_devices_by_tunnel tunnel-device-server 巷道名称、设备类型(可选) 该巷道绑定的设备列表及实时数据
query_devices_by_tunnel_id tunnel-device-server 巷道ID、模型ID(可选)、设备类型(可选) 该巷道ID下绑定的设备列表
get_tun_list_by_modelid tunnel-model-server 模型ID 指定模型下的巷道列表
query_tunnels_by_model tunnel-model-server 模型ID 根据模型ID查询巷道列表(新接口,含名称、类型、需风量等详情)
query_tunnel_list tunnel-model-server 模型ID + 巷道名称(模糊) 优先使用。按模型+名称模糊匹配巷道,仅返回 modelId/tunnelId/tunnelName
get_device_kind_dict device-dict-server 查询设备大类(deviceKind)和小类(strType)的编码-中文名称全量映射字典
get_device_list_by_kind device-dict-server device_kind(必填) 根据设备大类编码查询该类型下的全量设备列表,返回 device_id、device_name、install_pos、station_name
query_device_realtime_data data-query-server device_id(必填) 查询指定设备的实时监测快照,返回最新读数、单位、采集时间、在线状态、报警信息

设备类型字典场景:当用户询问"有哪些设备类型""设备分类有哪些""系统中监控哪些传感器类型""设备大类小类有哪些"、或需要将设备类型编码(如 modelsensor_speed)翻译为中文时,调用 get_device_kind_dict 获取全量字典后解答。该工具无参数,返回 deviceKind(大类)和 strType(小类)两个维度的映射表。

按类型查设备场景:当用户询问"列出所有风速传感器""有哪些甲烷传感器""某类型设备有哪些"时,先调用 get_device_kind_dict 获取 deviceKind 编码,再调用 get_device_list_by_kind 传入对应编码获取该类型的全部设备列表。参数 device_kind 为必填,需从 get_device_kind_dict 的返回结果中提取。

单设备实时数据场景:当用户询问"设备XXX当前读数""传感器XXX的实时值""某个具体设备的最新数据"时,调用 query_device_realtime_data 传入设备ID获取实时快照。与 query_device_data_by_id(含报警+分页)相比,本工具返回结构更精简、延迟更低,适合单设备快速查询场景。设备ID可从前序工具(get_device_list_by_kind、query_devices_by_tunnel 等)的返回结果中提取。

设备列表查询场景:当用户询问"XXX巷道有哪些设备"或"查看XXX巷道的传感器"时,优先使用 query_devices_by_tunnel(按名称查询更直观);当已知巷道ID时使用 query_devices_by_tunnel_id

模型巷道列表场景:当用户需要按通风模型筛选巷道时,使用 query_tunnels_by_modelget_tun_list_by_modelid 获取模型下的巷道清单,再针对具体巷道进行数据解读。

计划风量来源以 model_sensor.planM3doc_vent_plan_wind_measurement.air_volume 为候选;无计划风量时该步骤返回空,结论中需提示"无计划风量对比"。

多传感器选择规则:一条巷道可能关联多个传感器,按以下优先级取值:

  1. 优先取 bRealCal = 1(参与实时计算)的传感器;
  2. 仍多于一个时,取同指标类型中设备状态在线、数据时间最新的;
  3. 仍无法判断时,列出全部候选传感器及各自读数,请用户确认以哪个为准。

4.2 监测数据查询

工具 所属服务 入参 出参
query_device_data_by_id data-query-server 设备ID、page_size(可选) 设备实时数据 + 报警数据
list_ventanaly_monitor_data_days data-query-server strtype(设备类型)、gdeviceids(设备ID)、ttime_begin(开始时间)、ttime_end(结束时间)、device_num(设备编号)、skip(采样间隔) 历史时序数据(风速、风量、瓦斯、温度等趋势)

list_ventanaly_monitor_data_days 参数说明

  • strtype: 设备类型,如 "fanmain_stem_wp_2"
  • gdeviceids: 设备ID,如 "11111004"
  • ttime_begin / ttime_end: 时间范围,格式 "yyyy-MM-dd HH:mm:ss"
  • device_num: 设备编号,如 "Fan1"
  • skip: 查询采样间隔,默认8,1=5秒//2=10秒//3=30秒//4=1分钟//5=5分钟//6=10分钟//7=30分钟8=1小时,如果半天内默认按10分钟查询,如果需要跨天则默认按1小时查询,其他情况请按合适的采样间隔获取,考虑数据库的压力。

历史趋势类问题(如"近7天温度趋势""该巷道风速变化")使用 list_ventanaly_monitor_data_days。 实时数据 + 报警查询使用 query_device_data_by_id

指标 → valueCode 映射表(调用 query_history_data 时按此填 valueCode):

指标 valueCode 单位
风速 vaValue m/s
风量 m3Value m³/min
瓦斯 gasValue %
一氧化碳 coValue %
氧气 o2Value %
温度 temperatureValue
粉尘 dustval mg/m³

工具就绪前,valueCode 名称可能与上表不同;以 data-query-server 实际返回字段为准。

设备与指标的对应关系(用于定位传感器,依据 model_sensor.nSensorType):

指标 传感器类型 nSensorType strType 示例 实时值字段
风速 1 / 11 modelsensor_speed / windrect windSpeed / vaValue
风量 11 windrect m3 / m3Value
瓦斯(CH₄) 2 modelsensor_ch4 ch4 / gasValue
一氧化碳(CO) 3 modelsensor_co co
氧气(O₂) 7 modelsensor_o2 o2
温度 10 / 4 modelsensor_temperature / modelsensor_multi temperature / temperatureValue

4.3 规程阈值查询

工具 所属服务 入参 出参
get_wind_limit regulation-server 巷道用途类型 风速下限 vmin、风速上限 vmax、依据条款、备注
get_gas_limit regulation-server 设置地点类型 报警浓度、断电浓度、复电浓度、依据条款
get_co_limit regulation-server 最高允许浓度、依据条款
get_o2_limit regulation-server 最低浓度、依据条款
get_temperature_limit regulation-server 地点类型 一级阈值、二级阈值、依据条款

各指标规程阈值结构详见 references/regulation-thresholds.md(背景知识,正式数值以 2025 版为准,由 regulation-server 工具返回)。

5. 第三步:合规比对判断

拿到实测值与规程阈值后,按以下规则判断(均为简单数值比较,由本技能直接完成,无需额外工具):

5.1 风速

  • 实测风速 > vmax → 超上限(风速超限)
  • 实测风速 < vmin → 低于下限
  • vmin ≤ 实测风速 ≤ vmax → 合规
  • 注:部分巷道仅设上限(如主要进、回风巷)或仅设下限(如其他通风人行巷道),按实际返回的阈值判断。

5.2 风量

  • 有计划风量时:实测风量 ≥ 计划风量 → 满足;实测风量 < 计划风量 → 不足,缺口比例 =(计划风量 − 实测风量)/ 计划风量 × 100%。
  • 无计划风量时:仅判断风速,结论提示"无计划风量对比"。

5.3 瓦斯(CH₄)

  • 实测浓度 ≥ 该设置地点的报警浓度 → 报警(按设置地点取报警/断电浓度)。

5.4 一氧化碳(CO)

  • 实测浓度 ≥ 0.0024% → 超限

5.5 氧气(O₂)

  • 实测浓度 < 20% → 不足

5.6 温度

  • 按地点类型取阈值:采掘工作面 26℃/30℃、机电设备硐室 30℃/34℃(一级/二级);超一级缩短作业时间,超二级须停止作业。

5.7 综合风险等级

  • 全部合规 → 正常
  • 任一指标超限/不足 → 至少 一般风险预警
  • 瓦斯/CO 超限或温度达二级阈值 → 重大风险预警

6. 第四步:生成结论与系统调整建议

6.1 处理建议库(按异常类型选用)

异常类型 建议措施
风量不足 检查通风阻力、风门开闭状态、局部通风机频率、风筒是否漏风
风速超上限 调节风窗/风门、降低局部通风机频率、排查短路漏风
风速过低 检查巷道是否堵塞、风门状态,必要时提高通风动力
瓦斯超限 立即停止作业、切断电源、加强通风、查明瓦斯来源
CO 超限 排查自燃发火隐患、停止作业、加强通风
O₂ 不足 检查通风、停止作业、撤离人员
温度超限 超一级缩短作业时间并给高温保健;超二级停止作业、加强降温

全部正常时,给出"维持当前通风配置、持续监测"等中性建议。

6.2 输出格式(严格遵守)

**【{巷道名称}】数据解读**

📍 监测对象:{巷道名称}(巷道类型:{用途类型})
📊 当前数据:
- 风速:{值} m/s
- 风量:{值} m³/min
- {其他指标…}

📏 规程依据(《煤矿安全规程》2025版 {条款}):
- 风速允许范围:{vmin} ~ {vmax} m/s
- 计划风量:{值} m³/min

🔍 分析结论:
- 风速:✅ 正常 / ❌ 超上限 / ⚠️ 低于下限
- 风量:✅ 满足计划 / ⚠️ 不足(缺口 {X}%)
- 综合状态:🟢 正常 / 🟡 一般风险预警 / 🔴 重大风险预警

💡 处理建议:
- {建议1}
- {建议2}

输出示例(数值仅为示例):

【北二盘区变电所及水泵房回风巷】数据解读

📍 监测对象:北二盘区变电所及水泵房回风巷(巷道类型:采区回风巷) 📊 当前数据:风速 5.62 m/s;风量 1806 m³/min 📏 规程依据(《煤矿安全规程》2025版 风速相关条款):风速允许范围 0.25 ~ 6 m/s;计划风量 2100 m³/min 🔍 分析结论:风速 ✅ 正常(未超限);风量 ⚠️ 不足(缺口 14.0%);综合状态 🟡 一般风险预警 💡 处理建议:检查通风阻力、风门开闭状态及局部通风机频率;核实计划风量设定是否合理。

历史趋势类问题,额外用平均值/最值/趋势方向描述,并使用下方趋势输出模板:

**【{巷道名称}】{指标} 趋势解读({时间范围})**

📊 统计指标:平均 {avg} {单位};最低 {min} {单位};最高 {max} {单位}
📈 趋势方向:↗ 上升 / ↘ 下降 / → 平稳 / 波动
🔍 分析结论:{是否超限、超限时段、合规性}
💡 处理建议:{建议}

6.3 跨巷道聚合问题处理

当用户提问涉及"全矿/所有巷道中某指标最高/最低/排名"(如"全矿瓦斯浓度最高的三个点")时:

  1. 先确认现有工具是否支持跨巷道批量查询与排序。当前声明式工具仅支持按巷道/设备查询,不支持跨巷道聚合。
  2. 工具未支持时:明确告知用户"当前仅支持按指定巷道查询,暂不支持全矿聚合排名",并请用户给出具体巷道名;不要凭空编造排名结果。
  3. 工具后续支持时:使用新增的 query_top_n_by_indicator(预期工具,入参:指标类型、数量 N、时间范围;出参:排序后的巷道-传感器-读数列表)完成查询,再套用单巷道解读模板逐条输出。

7. 注意事项

  1. 规程版本:阈值与条款一律以《煤矿安全规程》2025 版为准;工具返回的条款编号优先,references/regulation-thresholds.md 中的数值仅作背景参考。
  2. 避免幻觉:所有实测数值、阈值、计划风量必须来自工具返回;工具未实现或缺数据时,明确告知"当前数据暂不可查",不要编造数字。
  3. 数据来源与条款:结论中标注规程依据条款与数据来源(传感器/设备ID)。
  4. 无计划风量:明确提示"无计划风量对比",仅做风速合规判断。
  5. 单位统一:风速 m/s,风量 m³/min,气体浓度 %,温度 ℃。
  6. 多轮追问:保留会话上下文,支持"那上个月呢""给出处理建议"等追问。

8. 参考资料

  • references/regulation-thresholds.md:各指标规程阈值表(背景知识,正式以 2025 版为准)