作品 / 知祖AI
AI 应用 · AI2025NO.05个人项目

知祖AI

基于 RAG 的族谱知识问答与世系可视化系统

Vue3PythonFastAPIChromaDBECharts
05
AI  2025

缘起

过年回家翻到家里那本族谱:竖排、手抄,有几页已经受潮糊了。我想查一个人名下有几房,得用手指顺着世系里的线走一遍。长辈们说得清自己往上三代,第四代开始就得翻书。

那天惦记的是一句很普通的话——这东西要是能问,会省多少事。

背景

族谱的难点在结构而不在文字。世系是一棵树,可记录方式是散的:同一代人名字相邻,字号与别名并存,配偶和「几房所出」挂在版面的不同位置,还有过继、入赘这类会打断树形的例外。纸上是手绘的连线,电子化之后多半也只是一篇篇散文式的记录,机器读不懂,人查一次也得会读。要做的是把文档里的世系解析成可查询的结构,在结构之上支持「某人是谁的后代」「某人名下几房」这类问法,并且每条回答都能落回原文那句。

方案

构建了一套完整的 RAG(检索增强生成)流水线,从文档上传到智能问答形成闭环:

  • 文档解析:支持 PDF/TXT 族谱文档上传,自动分块、向量化
  • 结构化提取:异步任务机制自动提取祖先概览、人物档案、关系网络、历史事件
  • 智能问答:多轮对话支持问题改写,基于向量检索的精准回答
  • 可视化:家谱树形图、关系网络图、时间线三种展示方式

技术架构

模块技术选型
前端Vue3 + Vite + Element Plus + ECharts
后端Python + FastAPI + SQLAlchemy + SQLite
AI/RAGChromaDB 向量库 + 智谱 GLM-4 + LangChain
认证JWT + bcrypt

系统采用 merge/overwrite 两种模式处理文档解析结果,支持增量更新和全量覆盖。

成果

实现了垂直领域的 RAG 应用,用户上传族谱文档后,系统自动完成从文本到结构化知识的转换。多轮对话支持上下文理解和问题改写,可视化模块直观呈现家族脉络。

有类似的事要管?

说说现在是怎么做的——Excel、微信群、纸质单子都行。我判断能不能做、大概怎么做。

聊聊你的需求