一个87条消息的AI对话里,混进了一条跟研究毫无关系的支线:用户随口问了句"晚上吃什么",聊天机器人建议附近新开的餐厅。这条支线没有被删除,也没有被标记,它就那么挂在对话历史里。等到用户让AI生成研究总结时,模型把这条晚餐建议也读了进去——发送前的预览显示,这次请求要带上1284个token,三个来源里赫然多了一条"建议今晚吃火锅"。开发者删掉连接晚餐分支的那条线,token少了47个,用同样的提问重新生成,答案变回干净的两来源版本,火锅建议消失。
这是开源项目ThoughtDAG在自己主页上演示的场景。它把这个问题定性得很准:聊天界面只显示说过什么,从不显示下一次请求真正会读什么。用户能看到的是历史,模型吃进去的是上下文,这两者从来不是一回事。
聊天框天生藏得住脏东西
长对话、多分支探索、夹带PDF和网页引用的RAG式提问,这几年变得越来越常见。问题是,主流聊天界面从ChatGPT到Claude,历史记录都是一条线性时间轴,用户看不到、也管不了哪些历史片段会被塞进下一次的模型调用。分支多了、话题岔开了、无关内容混进来了,上下文就悄悄变脏,答案质量跟着掉,用户往往还不知道原因出在哪。
ThoughtDAG的解法是把对话画成一张有向无环图:每条连线代表一段历史是否进入下一次请求,用户可以在画布上继续对话、开新分支、引用某段文字、归档或删除某条路径。它是MIT开源、本地优先的项目,本地跑通只需要克隆仓库、装依赖、起一个代理端口,也提供macOS、Windows、Linux的打包应用;模型接入覆盖OpenAI、Anthropic、Google、Qwen、DeepSeek、Kimi、智谱、OpenRouter和Ollama等主流选项。这不是一张营销页面的空想,是一套能落地跑的技术栈。
- 提醒.这组87条消息、1284个token、−47个token的数字,全部来自产品自己的落地页演示,还没有第三方或独立用户复现过,能否代表真实模型的上下文计算逻辑,目前只能存疑。
这条赛道已经不只ThoughtDAG一个人在挤
把AI对话组织成可分支、可版本控制、可溯源的图结构,早就不是孤例。至少已经能数出五个直接竞品:KnowTree做消费级的可视化对话分支,Stepback主打"Git风格"的对话版本控制,ThreadWeaver做版本管理和可复用系统提示,AIbranch是开源的多模型可分支对话,BranchLM则是图原生工作区,明确区分chat节点和context节点、带上下文预算。学术圈也没闲着,ContextBranch论文提出了checkpoint、branch、switch、inject四个版本控制原语,Conversation Tree Architecture提出可合并或丢弃的volatile分支节点。
| 类型 | 代表 | 覆盖的能力片段 |
|---|---|---|
| 消费级可视化 | KnowTree、Stepback | 对话分支树、Git式版本记录 |
| 开发者工作区 | AIbranch、BranchLM | 图结构、显式来源分离、token预算 |
| 大厂功能局部覆盖 | VS Code Copilot Chat、NotebookLM、LangSmith | token用量breakdown、来源引用溯源、prompt版本回滚 |
| 学术原型 | ContextBranch、Conversation Tree Architecture | checkpoint/branch/switch/inject原语 |
值得留意的是最后一行:NotebookLM早就能让用户勾选或排除单个来源,引用能链回原文段落;VS Code的Copilot Chat已经在展示context-window的用量和分类breakdown;LangSmith支持prompt的版本、commit、回滚和token/成本追踪。这三家不是创业公司,是有现成用户基数的大厂产品,它们已经各自覆盖了ThoughtDAG声称的一部分能力。
真正的考题不是画图,是图能不能替你决定答案
ThoughtDAG把自己的定位写得很直白:"wires are context"——连线本身就是上下文协议,不是又一张笔记画布。这句话对不对,取决于它有没有做到一件比可视化更硬的事:让用户选定的路径确定性地生成下一次请求的上下文,而不只是给用户一张好看的分支导航图。目前从demo看到的删边、预览token、重新生成这一套流程,方向是对的,但产品是否已经把这套语义做扎实,还是仍停留在界面层面的操作演示,外部还缺少独立验证。
图好画,护城河难修。
- 结论.ThoughtDAG的真正价值不在"能画分支",而在于它是否把图从导航工具升级成了执行模型——这也是它和五个竞品、两篇学术论文、三类大厂功能之间唯一分得开的分界线。
对研究者和知识工作者来说,长对话里的上下文污染是真实存在的痛点,值得试用一个能让自己看清模型到底读了什么的工具。但对这类独立项目本身,风险同样具体:大厂随时可能在下一次版本更新里,把来源溯源、图分支、token编辑这三块拼到一起,直接吃掉这个还没站稳的赛道。接下来该看的信号,是它的开源社区能不能长出独立用户反馈,而不是停在一张漂亮的落地页上。
