https://github.com/1517005260/graph-rag-agent/tree/master
这个项目看到的,有一个deep research agent
GPT5的评价:
结论先给:区别不只“是不是用图”。普通 DeepResearchAgent(标准模式=DeepResearchTool
)是“多轮思考+双通道检索(KB+KG)+答案验证”的工作流;DeeperResearchTool 把“图”升级为决策与表示的中枢,并叠加社区感知、CoE 探索、证据链与矛盾检测等全链路能力。
- 核心差异
- 图的参与方式
- 普通:有KG通道,但不做动态子图建模;KG更多当内容来源。
- Deeper:为查询动态构建并增量更新子图、计算中心实体、用社区结构规划搜索路径、把证据锚到节点/边上,驱动后续决策。
- 检索策略
- 普通:子查询/跟进查询 → DualPathSearcher(KB+KG)合并 → 提取要点。
- Deeper:社区感知增强(找相关社区与策略)+ Chain of Exploration 在图上多步探索,结果与KB检索融合后再提取信息。
- 推理形态
- 普通:线性迭代(必要时生成跟进查询)。
- Deeper:复杂度门控的多假设分支;分支生长/裁剪参考图结构与证据密度。
- 证据与质量控制
- 普通:AnswerValidator 规则验证,execution_logs。
- Deeper:EvidenceChainTracker 记录“步骤→证据→来源”,内置矛盾检测与影响分析,必要时答案修复。
- 缓存与工程化
- 普通:关键词/结果基础缓存。
- Deeper:思考/子查询/搜索/提取/图谱/矛盾/分支等细粒度多类缓存,降低重复代价。
- 可解释性
- 普通:展示思考过程与引用chunk。
- Deeper:补充“探索路径、社区摘要、中心实体、证据链”,解释维度更丰富。
- 代码直观佐证
- Deeper 构建查询子图与中心实体:
```575:606:search/tool/deeper_research_tool.py
self.knowledge_builder.build_query_graph(query, graph_entities, depth=2)
central_entities = self.knowledge_builder.get_central_entities(limit=5)
self.evidence_tracker.add_reasoning_step(
query_id, "knowledge_graph_analysis",
f"构建了初始知识图谱,识别出核心实体: {central_entity_ids}"
)
</li>
</ul></li>
</ul><pre><code class="line-numbers"> - 普通最终答案(不做子图建模):
```369:382:search/tool/deep_research_tool.py
response = self.llm.invoke(FINAL_ANSWER_PROMPT.format(...))
formatted_answer = f"<think>{thinking_process}</think>\n\n{answer}"
- Deeper 将 CoE 结果与 KB 检索融合(不是简单替换):
```910:934:search/tool/deeper_research_tool.py
enhanced_search_context = self._enhance_search_with_coe(search_query, search_keywords)
kbinfos = self.deep_research.dual_searcher.search(search_query)
if exploration_content:
kbinfos.setdefault("chunks", []).extend(exploration_content)
```- 一句话总结
- 普通 DeepResearchAgent:强在“多轮检索+生成+验证”的通用深研流程。
- DeeperResearchTool:把图变成“研究骨架”,以社区/中心实体/探索路径来组织检索与证据,面向复杂、多跳、跨实体问题的系统性与可解释性显著更强,但代价是更高的复杂度与成本。
核心点是使用Graph进行reason,这里有一个直观联系的思路就是把Agent对话的memory转化成知识图谱,然后通过这个知识图谱来进行推理,生成下一步问题,以及总结答案。
这里让我感觉有两个改变点可以尝试:
* 尝试一下上面说的,把Agent memory转化成知识图谱,来强化reason
* 更多的关注一下利用知识图谱进行Reason的工作。尝试和DeepResearch等agent进行融合拓展一点,就是把知识图谱放到问答链路中,而非只是作为一个索引
- Deeper 将 CoE 结果与 KB 检索融合(不是简单替换):
- Deeper 构建查询子图与中心实体:
文章评论