分支画布让非线性思维落地
习惯像发短信那样跟 AI 单线拉扯,遇到复杂议题时负担会直线上升。想深挖某个术语,往往得另开标签页,事后还得靠脑子拼凑上下文,思路容易碎。把对话变成画布上的节点,用分支结构重组流程,才是解决碎片化的正解。
节点如何承接上下文
这套方案把每轮交互看作画布上的一个独立节点。对某段回复的细节感兴趣时,不用在输入框重新复述背景,直接点那个细节旁边的「分支」按钮,新线程就能自动继承父级所有上下文。
比如主线先问「World Model 目前的 SOTA 是什么」,拿到综述后,不必继续在主线里堆砌追问。可以从提到「JEPA」的那段拉出分支,专门问「LeCun 团队的具体训练机制」;同时从「DreamerV3」那段再拉一条线,深挖「它在 Atari 上的跑分细节」。
三条线索在画布上平行铺开,鼠标悬停就能扫一眼摘要,不用来回切标签页,整个思维链直接摊在同一张图上。
可视化 Block 取代纯文本
回复不限于纯文字或简单 Markdown 表格,能直接嵌可交互的 React 组件。架构图可以拖拽缩放,训练曲线悬停看数值,注意力热力图甚至能在节点里播动画。
底层调度上,文本推理交给 Gemini 3.5 Flash Lite,图片由 GPT Image 2 生成,并行处理后延迟基本压在 1 秒内。
React Flow 管拓扑
方案底子是 @xyflow/react(也就是原来的 React Flow),节点间的拓扑关系全靠它管。开发者能自定 React 组件,把可视化功能直接塞进消息流,让前端组件库变成模型的「工具箱」。
为了保主线干净,分支只读父级上下文,不往回写。在分支里搞发散性实验,不会污染主线的记忆,核心路径因此更清晰。
系统把「思考过程」当一等资产,支持把整个画布状态导出为 JSON 文件。下次打开能无损恢复所有分支和批注。跟导 Markdown 比,JSON 不光存静态文本,还记着动态拓扑关系。
Demo 阶段的局限与下一步
当前这个 Demo 还没账号系统和协作功能,也跑不了离线。不过「分支对话 + 可视化画布 + 组件化渲染」这组合,比市面上多数简单套壳产品要深一层。
想搭类似界面,得死磕 React Flow 的自定义节点类型(Custom Node Types)和边的交互事件处理,这是非线性对话系统的命门。当你在画布里同时维护多条逻辑线时,如果忘记配置边的方向属性,分支可能会错误地反向继承上下文,导致后续推理偏离主线;此时只需检查 onConnect 回调中的源节点 ID 是否正确映射到父级节点,即可确保拓扑关系的单向纯洁性。
全部回复 (4)
想当场把话说完?进全球 AI 聊天室,登录就能开口。
看着很高级,但上下文窗口要是被画布撑爆了,Token 账单得多少钱?如果想尝试类似交互界面,可以重点研究 React Flow 的自定义节点类型(Custom Node Types)和边的交互事件处理,这是实现类似非线性对话系统的关键点。
直接上 React Flow 吧,自带的状态管理能省掉大半写逻辑的时间,D3 渲染万级节点太累了。比如,当你在对话中遇到某个专用名词时,可以直接点击「分支」按钮,新线程会自动继承父级的所有上下文,这样就不用在输入框重复背景描述了。