Skip to content

M3 用能画像(Demo 场景 PRD) ​

项内容
文档定位08_移动端AI场景设计.md §10 中反引号标记的 demo 模块的场景 PRD。本文是 M3;模板见 公共规范.md §8
通用规范前端形态、系统提示词边界、定时任务方式、数据与输出规范见 公共规范.md;本文只写 M3 场景本身
能力来源01_能源类AI能力-现状与自有发挥.md §4 示例 2(用能画像)、02_人流密度与空间洞察.md(空间主数据与同类分组)
版本v0.1

1. 场景定义 ​

1.1 一句话 ​

管理者问「302 阶梯教室的用能画像」,Agent 按空间取数,给出总量、单位面积能耗、分项结构、同类对比和时段分布——只给能确认的指标,不做归因。

1.2 用户与价值 ​

项内容
用户管理者(demo 固定账号 M1001,数据范围全院)
价值不用打开能耗看板和 Excel,一句话看清一个空间的用能水平和结构,并能对比同类空间
频次按需,无定时推送
层级L2 数据查询

1.3 触发方式 ​

  • 被动问答,没有定时任务。
  • 典型 query:
    • 「给我看看 302 阶梯教室的用能画像。」
    • 「A 楼 3 层这个月用了多少电?分项是什么样?」
    • 「302 的能耗在同类教室里算高还是低?」
    • 「302 最近 30 天的用电趋势。」
  • 空间或时间范围不明确时,先追问;用户只给空间名时,默认「最近 30 天」。

1.4 边界 ​

不做原因
不做异常诊断和原因归因异常清单、规则命中、可能原因归 M4 异常能耗侦探
不做碳核算和月报碳排、碳目标、报告归 M5 双碳与能源月报
不做节能建议优化策略不在本期,规则诊断解释归 M6 AI 能效顾问
不做课表一致性/空置判定课表是计划、不等于有人;口径见 01 附录与 02,未定义前不输出
不通过对话下发控制只读查询,不调设备、不改参数
不展示设备级运行明细设备时段/阈值明细属于运维视角(O 系列)
不返回个人或工单处理人信息只到空间与系统维度

2. Demo 形态 ​

通用形态见 公共规范.md(小程序悬浮球打开 DeerFlow 聊天区、单会话、Markdown + Mermaid)。

本场景只约定:

  • 管理者在常驻会话里直接提问,回答落在聊天区,不写首页洞察卡片(M3 不是 L4 主动服务)。
  • 追问沿用上下文:先问「302 的画像」,再问「和同类比呢」「趋势呢」,Agent 沿用同一空间和时间范围。
  • 一次回答只处理一个空间或一组同类空间;用户一句话问多个空间时,先给汇总表,再问要不要逐个展开。

注:演示方式——登录管理者账号,点悬浮球,输入「给我看看 302 阶梯教室的用能画像」。


3. Agent 输出设计 ​

3.1 输出元素 ​

元素用途
Markdown 文字结论、口径说明、数据缺口
Markdown 表格总量与分项指标、同类对比
Mermaid pie分项用电占比
Mermaid xychart-beta(line)日用电趋势

一次回复最多 2 张图;不输出快捷按钮、不输出自定义业务卡片。

3.2 单空间画像(主场景) ​

用户

给我看看 302 阶梯教室的用能画像。

Agent

302 阶梯教室近 30 天用电 1,240 kWh,单位面积能耗 2.1 kWh/㎡;同类阶梯教室均值 2.6 kWh/㎡,偏低 19%。

指标数值说明
总用电1,240 kWh分项合计
单位面积能耗2.1 kWh/㎡建筑面积 590 ㎡
日均用电41.3 kWh30 天
峰值日10 月 21 日(68 kWh)当日有 3 场课程
同类均值2.6 kWh/㎡同类阶梯教室 5 间

注(口径):2026-10-01 至 10-31,分项计量完整度 98%;课表一致性与空置判定不在本场景,需先由应用板块定义口径。

3.3 空间树节点/系统画像 ​

用户问「A 楼 3 层这个月用了多少电」时,把空间换成空间树上的任意节点(楼、层、区域),输出结构相同:

  • 总量 + 单位面积能耗 + 分项饼图;
  • 同类对比改为「同一父节点下的同类型空间」,没有可比对象时写「暂无同类数据」,不硬比;
  • 不做节点排名(排名归 M7 空间洞察)。

3.4 同类对比 ​

用户问「302 在同类里算高还是低」时:

  • 只和中台节点类型相同 + 相近面积/容量的空间比,列出同类空间数与均值;能源侧不新增类型定义,也不依赖多标签。
  • 差异只陈述数值,不说「因为课程多/设备老」——归因归 M4;
  • 同类样本少于 3 个时写「同类样本不足,暂不比较」。

3.5 异常与降级 ​

情况输出
空间名无法解析列出候选空间让用户选,不猜
分项计量缺失只出总量与单位面积能耗,分项图省略并标注「分项数据缺失」
建筑面积缺失单位面积能耗写「暂无(面积未维护)」,总量照常
同类样本 < 3不输出同类对比,写明原因
数据完整度 < 90%首位标注完整度与缺失日期
时间范围超过 1 年提示按需缩短范围,或按月聚合后再给
越权空间拒绝并说明授权范围,给申请路径

3.6 输出模板(开发参考) ​

本节给 Skill 组装输出用,业务评审可跳过。

单空间画像:

{空间名}近 {N} 天用电 **{总量} kWh**,单位面积能耗 **{强度} kWh/㎡**;同类{空间类型}均值 **{同类均值}**,{偏高/偏低/持平}。

| 指标 | 数值 | 说明 |
|---|---|---|
| 总用电 | … kWh | 含分项合计 |
| 单位面积能耗 | … kWh/㎡ | 总用电 ÷ 建筑面积 |
| 日均用电 | … kWh | |
| 峰值日 | …(… kWh) | |
| 同类均值 | … kWh/㎡ | 同类型 {M} 个空间 |

(Mermaid 饼图:分项占比)

(Mermaid 折线图:近 N 天日用电)

口径:{时间范围};{分项完整度};课表一致性与空置判定不在本场景。

4. MCP 设计 ​

4.1 空间树 MCP ​

Tool:query_space_tree

项内容
作用查询空间树节点及其子节点,把用户说的空间名解析成树上的节点
入参node_id(可选,空则从根节点开始)、query(可选,节点名/别名/房间号)、depth(默认 1)
返回node:node_id、node_name、node_type、parent_id、level、path、area_m2;children[] 同上;matches[] 为 query 命中的候选节点

注:空间主数据以空间树为唯一来源,节点可以是校区/楼/层/房间/区域任意层级,不单独引入楼层范围参数。节点类型是单选,直接取中台空间树的类型;能源侧不新增类型定义。同类对比按「同节点类型 + 相近面积/容量」分组。置信度不足或候选多个时,Skill 必须先让用户选,不自行选一个。

4.2 用能画像 MCP ​

Tool:query_usage_profile

项内容
作用查空间树上某个节点在时间窗内的用能画像与同类对比
入参node_id(空间树节点,任意层级)、start_date、end_date、granularity(day/month)

返回:

字段类型说明
total_kwhnumber总用电
area_m2number建筑面积,可能为空
intensity_kwh_per_m2number单位面积能耗;面积为空时 null
daily_avg_kwhnumber日均用电
peakobjectdate、kwh
breakdownarray{system, kwh, share_pct},系统为空调/照明/插座/动力
peerobjectpeer_group(同节点类型 + 面积段)、peer_count、avg_intensity、diff_pct;样本不足时 null
data_qualityobjectcompleteness_pct、missing_dates[]

注:单位面积能耗、分项占比、同类差异都由 MCP 算好,避免模型做除法;空值返回 null,不给 0。

4.3 能耗时序 MCP ​

Tool:query_energy_series

项内容
作用查日/月粒度的用电曲线,供趋势图
入参node_id(空间树节点,任意层级)、start_date、end_date、granularity(day/week/month)
返回series[]:{bucket, kwh};data_quality

5. Skill 设计 ​

5.1 职责 ​

Skill 把「解析空间 → 取画像 → 取趋势 → 按模板输出」写死,保证同类问题的口径和结构一致。

画像和同类对比放在同一个 Skill 里,不拆成两个 Skill:两者共用同一次画像取数,拆分只会多一次调用,没有独立流程;同类对比是画像回答里的一个附加段落,没有同类数据时省略即可。

5.2 流程 ​

5.3 Skill 提示词草稿 ​

你是上海交通大学新院区 IBMS 的管理者助手,负责回答空间用能画像。

输入:
- 管理者 ID:demo 固定 M1001
- 默认时间范围:最近 30 天;用户指定时以用户为准

步骤:
1. 解析空间。空间名不明确或候选多个时,列出候选让用户选,不自行选择。
2. 调 query_usage_profile(node_id, start_date, end_date, granularity=day)。
3. 调 query_energy_series,取同一空间同一时间范围的日用电。
4. 按模板输出:总量与单位面积能耗 → 指标表 → 分项饼图 → 日趋势 → 口径注。

输出要求:
- 只用 Markdown 和 Mermaid,不输出 JSON、不用 HTML。
- 一次回复最多 2 张图:一张分项 pie、一张日趋势 line。
- 只输出能确认的指标;分项缺失就省略饼图,面积缺失就不算单位面积能耗。
- 同类对比只在样本 ≥3 时输出,且只比同节点类型的空间。
- 不做归因,不推荐节能措施,不判断课表一致性和空置。
- 空值写「暂无」,不按 0 处理。
- 末尾写明时间范围、分项完整度与缺失日期。

5.4 工具调用顺序与失败策略 ​

步骤调用失败时
1query_space_tree返回候选让用户选;无法解析则请用户给楼栋/房间号
2query_usage_profile不出画像,说明失败原因
3query_energy_series省略趋势图,其余照常输出

注:画像是主数据,拿不到就不出;趋势是附加信息,失败不影响主结论。


6. 定时任务配置 ​

无。

M3 是被动问答,不配置 DeerFlow 定时任务。能源类的主动推送由 M10 月度报告承担。


7. 权限与数据范围 ​

  • 管理者账号 M1001,demo 数据范围「全院」;生产按授权空间树节点裁剪。
  • 数据裁剪在 MCP 层按 node_id/范围校验,不靠提示词约束。
  • 只返回空间与系统维度的聚合值,不返回设备运行明细、个人数据、工单处理人。
  • 越权查询直接拒绝并说明当前范围。

8. 验收要点 ​

#验收项标准
1空间解析空间不明确时列候选让用户选,不猜
2画像指标总量、单位面积能耗、日均、峰值日齐全,数值与 MCP 一致
3分项饼图分项与表格一致;分项缺失时省略并标注
4同类对比只比同类型、样本 ≥3;样本不足时明确说「暂不比较」
5图表最多 2 张;趋势图不横向溢出
6边界不做归因、不给节能建议、不做课表/空置判定
7空值缺失数据显示「暂无」,不显示 0
8口径回复中写明时间范围与分项完整度

9. 已确认与待确认 ​

9.1 已确认 ​

#事项结论
1交互形态被动问答,无定时任务
2默认范围最近 30 天;用户指定时以用户为准
3输出画像 + 分项饼图 + 日趋势,最多 2 张图
4同类对比只比同类型、样本 ≥3
5边界不做归因、不推荐节能措施、不判定空置
6空间主数据以空间树为唯一来源;节点类型只用中台单一类型,能源侧不新增类型定义

9.2 待确认 ​

  1. 分项计量粒度与完整度:能否到 15 分钟~1 小时;分项是否按空调/照明/插座/动力拆全。
  2. 空间树与地点映射:空间树节点由谁维护;表计、设备、能耗数据是否都能挂到树节点;MCP 能否按父节点聚合子节点。
  3. 同类分组规则:同类对比拟按「同节点类型 + 相近面积/容量」分组;中台类型是否足够细分、面积/容量字段是否齐全待确认。能源侧不新增类型定义,也不做多标签。
  4. 父节点/系统口径:公共区是否计入父节点;系统画像是否跨节点聚合。
  5. 课表一致性与空置判定:口径未定,M3 暂不输出;需 01 附录与 02 先定义。
  6. 历史长度:是否已有 ≥1 年数据;不足时同比不做,只做环比或绝对值。

10. 关联文档 ​

文档关联内容
01_能源类AI能力-现状与自有发挥.md §2、§4 示例 2用能画像口径、现有能耗与指标能力
02_人流密度与空间洞察.md §2、§3空间主数据、location_id ↔ 空间 映射、空间类型
08_移动端AI场景设计.md §7、§10管理者时间线、M3 模块定义
公共规范.md前端形态、常驻会话、智能体边界、输出规范、场景 PRD 模板

注:上述文档与本文保持一致。如有差异,以本文为准,回写更新对应文档。

内部方案材料,请勿外传