示例源数据
1. 项目定位
- 这是一个面向运营的、基于结构化知识数据构建的预生成互动导览系统。
- 它继承了类 Flipbook 的交互体验,但不继承“用户任意发问、任意点击、运行时即时生成”的开放生成模式。
- 它的核心目标是:
- 让运营提供树状或网状的结构化知识数据。
- 系统根据这份数据预生成节点图片、边转场视频和热点坐标。
- 前端以有限探索的方式向终端用户提供互动体验。
2. 核心设计思想
2.1 预生成优先
- 当前项目的运行时职责应尽量轻量,只负责资源加载、热点反馈、转场播放和节点切换。
- 重逻辑应放在构建期完成,包括:
- 知识结构校验
- 节点页面编排
- 节点图片生成
- 热点标注
- 边视频生成
- 产物打包
2.2 Node + Edge + Hotspot 模型
Node表示一个可展示的视觉页面。Edge表示从一个页面进入另一个页面的探索关系,以及这次跳转对应的转场资源。Hotspot表示用户在当前页面上的可点击入口,也是Edge的视觉锚点。
这种设计统一了三件事:
- 知识结构关系
- 页面间导航逻辑
- 视觉交互入口
2.3 人工干预可插拔
虽然系统强调自动生成,但没有走“全自动黑盒”路线,而是保留了多个运营干预点:
- 修改知识包元信息和全局风格
- 编辑节点内容、摘要、视觉意图
- 编辑边关系与转场描述
- 重新推荐热点
- 手动拖拽校准热点
- 单节点重跑、单边重跑、整包重跑
这让系统更适合生产环境,而不是只适合演示。
3. 总体架构
flowchart LR
Ops[运营输入]
Schema[结构化知识层]
Builder[构建编排层]
NodeGen[节点资源生成]
Anchor[热点标注层]
EdgeGen[边资源生成]
Publish[发布产物层]
Runtime[前端运行时]
Ops --> Schema
Schema --> Builder
Builder --> NodeGen
Builder --> Anchor
Builder --> EdgeGen
NodeGen --> Publish
Anchor --> Publish
EdgeGen --> Publish
Publish --> Runtime
3.1 三层职责
A. 结构化知识层
- 定义知识包、节点、边、全局分辨率、全局画面风格和全局转场风格。
- 为了让热点可定位,节点需要显式定义
hotspots.label,并在生图时强调这些 label 对应的对象要被画面着重表现。 - 在当前管理端编排模式下,节点和边允许直接挂接图片、视频、热点与状态字段。
B. 构建编排层
- 从知识结构生成最终资源。
- 负责构建任务、缓存、失败重试、断点续跑和发布产物输出。
C. 前端运行时
- 负责加载
manifest与静态资源。 - 负责渲染当前页面、白点热点、转场视频和切换逻辑。
- 不依赖运行时多模型编排。
4. 与flipbook的主要差异
| 维度 | flipbook | 新项目 |
|---|---|---|
| 根节点来源 | 用户输入主题 | 知识包固定 root 节点 |
| 子节点生成 | 点击后在线生成 | 发布前预生成 |
| 点击方式 | 整图任意点击 | 预定义白点热点 |
| 运行时职责 | 生成 + 播放 + 切换 | 播放 + 切换 |
| 模型依赖 | 强在线依赖 | 主要在构建期使用 |
| 资源形态 | 会话态资源 | 可发布资源包 |