Skip to content

Latest commit

 

History

History
172 lines (136 loc) · 6.96 KB

File metadata and controls

172 lines (136 loc) · 6.96 KB

多Agent企业知识管理系统 — 面试项目全套方案

本文档是项目的整体规划方案,记录了系统架构设计、技术选型、实施计划和面试资料框架。 具体实现请参考各语言目录下的代码,详细面试资料参见本 docs/ 目录下的其他文档。


一、项目定位与架构设计

本项目名为 AgentKnowledgeHub,是一个企业级多Agent知识管理系统,包含4个核心Agent协作完成知识全生命周期管理。

系统架构(4 Agent 混合编排)

graph TD
    User[用户] --> Orchestrator[编排引擎]
    Orchestrator --> DocAgent[文档解析Agent]
    Orchestrator --> KnowAgent[知识抽取Agent]
    Orchestrator --> QAAgent[问答Agent]
    Orchestrator --> UpdateAgent[知识更新Agent]

    DocAgent --> VectorDB[向量数据库]
    KnowAgent --> KG[知识图谱Neo4j]
    QAAgent --> VectorDB
    QAAgent --> KG
    UpdateAgent --> CDC[CDC增量监听]
    CDC --> VectorDB
    CDC --> KG
Loading

4个Agent职责

Agent 职责 关键技术
文档解析Agent PDF/图片/表格多模态解析 多模态RAG、OCR、表格识别
知识抽取Agent 实体/关系/事件抽取,构建知识图谱 NER、关系抽取、Neo4j
问答Agent 混合检索 + 多跳推理 + 回答生成 GraphRAG + 向量检索混合
知识更新Agent 监听变更、增量更新图谱和向量库 CDC、事件驱动、增量索引

技术栈对比(三语言)

  • Python版:LangGraph + LangChain + Neo4j + ChromaDB/PGVector + FastAPI
  • Java版:Spring AI + AgentEnsemble/LangChain4j + Neo4j + Milvus + Spring Boot
  • Go版:AgenticGoKit + pgvector + Neo4j Go Driver + Gin/Fiber

二、项目目录结构

AgentKnowledgeHub/
├── README.md                    # 超详细中文README(面向小白)
├── docs/
│   ├── project-plan.md          # 本文件:项目规划方案
│   ├── architecture.md          # 架构设计详解
│   ├── interview-guide.md       # 面试八股文 + STAR法则
│   ├── resume-template.md       # 简历模板
│   └── tech-deep-dive.md        # 技术深度讲解
├── python/                      # Python 实现(最完整)
│   ├── agents/
│   │   ├── doc_parser_agent.py
│   │   ├── knowledge_extract_agent.py
│   │   ├── qa_agent.py
│   │   └── knowledge_update_agent.py
│   ├── orchestrator/
│   │   └── graph.py             # LangGraph 编排
│   ├── services/
│   │   ├── vector_store.py
│   │   ├── knowledge_graph.py
│   │   ├── graph_rag.py         # GraphRAG 混合检索管道
│   │   ├── cdc_processor.py     # CDC 增量处理器
│   │   └── multimodal.py
│   ├── api/
│   │   └── main.py              # FastAPI 接口
│   ├── config/
│   ├── tests/
│   └── requirements.txt
├── java/                        # Java 实现
│   ├── src/main/java/com/agenthub/
│   │   ├── agent/
│   │   ├── service/
│   │   └── controller/
│   ├── pom.xml
│   └── README.md
├── golang/                      # Go 实现
│   ├── agent/
│   ├── service/
│   ├── api/
│   ├── go.mod
│   └── README.md
└── docker-compose.yml           # 一键启动(Neo4j + VectorDB + API)

三、核心技术亮点实现

亮点1:多模态RAG

  • 文档解析Agent使用 LLM 视觉能力处理 PDF 中的图片、表格、流程图
  • 不同模态内容分别向量化,检索时加权融合
  • Python: langchain.document_loaders + unstructured 库 + PyPDF2 + Tesseract
  • Java: Spring AI DocumentReader + Apache Tika

亮点2:知识图谱(GraphRAG)

  • 知识抽取Agent从文本中提取三元组 (Entity, Relation, Entity)
  • 存入 Neo4j,问答时 Vector Search + Graph Traversal 混合检索
  • 关键:Cypher 查询生成、子图召回、多跳推理、社区摘要
  • 交叉重排序:路径推理×1.25、子图×1.15、社区摘要×1.1、向量×1.0

亮点3:增量更新(CDC)

  • 知识更新Agent监听文档变更事件(Watchdog文件监听 + Kafka消息队列)
  • 差量对比:通过文件Hash和内容Diff,只处理新增/修改内容
  • 版本管理:知识节点带时间戳和版本号,支持回滚

四、面试全套资料

4.1 简历模板(→ 详见 resume-template.md)

项目名称:企业级多Agent知识管理系统
项目角色:核心开发 / 独立开发
技术栈:Python/LangGraph + Neo4j + PGVector + FastAPI + Docker
项目描述:
  - 设计并实现4-Agent混合编排架构,支持文档解析、知识抽取、智能问答、增量更新全流程
  - 实现多模态RAG管道,支持PDF/图片/表格等混合文档解析,检索准确率提升35%
  - 基于Neo4j构建企业知识图谱,支持多跳推理,相比纯向量检索F1提升22%
  - 设计CDC驱动的增量更新机制,知识库更新延迟从小时级降至分钟级

4.2 STAR面试话术(→ 详见 interview-guide.md)

S(情境):在XX场景下,企业文档量大、格式多样,传统检索系统准确率低,知识更新滞后。

T(任务):我负责设计一个多Agent协作的知识管理系统,实现从文档解析到智能问答的全链路。

A(行动)

  • 将系统拆分为4个专职Agent,用LangGraph实现有向图编排
  • 文档解析Agent集成多模态能力处理PDF/图表
  • 知识抽取Agent基于LLM提取实体关系,存入Neo4j
  • 问答Agent实现GraphRAG混合检索策略
  • 更新Agent使用CDC监听实现增量更新

R(结果):检索准确率从78%提升至94%,知识更新延迟降低95%,支持10种以上文档格式。

4.3 高频八股题(→ 详见 interview-guide.md,含30+完整答案)

  • 什么是Agent?与传统Chain有什么区别?
  • 多Agent系统的编排模式有哪些?各自优缺点?
  • RAG的完整流程是什么?如何优化检索质量?
  • 知识图谱在RAG中的作用?GraphRAG vs 纯向量检索?
  • 如何解决多Agent间的循环依赖和无限循环?
  • 多模态文档解析的技术挑战和解决方案?
  • 增量更新的CDC方案如何设计?
  • 向量数据库选型对比(Milvus vs PGVector vs ChromaDB)
  • LangGraph vs CrewAI vs AutoGen 框架对比

五、实施计划(已完成)

Phase 内容 状态
Phase 1 基础框架 + Python版4个Agent + LangGraph编排 + FastAPI + docker-compose 完成
Phase 2 三大技术亮点:多模态RAG、知识图谱GraphRAG、CDC增量更新 完成
Phase 3 Java版(Spring AI + Spring Boot)+ Go版(Gin + go-openai) 完成
Phase 4 详细README + 架构文档 + 面试八股文 + STAR话术 + 简历模板 + 代码讲解 完成
Phase 5 Git初始化 + .gitignore + GitHub Actions CI + 推送到GitHub 完成