跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像AI 生图工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Go / GolangAI算法

基于 WeKnora 开源项目的 RAG 与知识图谱架构解析

基于腾讯开源项目 WeKnora 解析其知识库架构。该系统采用 Go 语言开发,支持 PDF、图片等多种格式文档上传,通过 MinerU 和 Markitdown 进行解析,利用 nomic-embed-text 模型进行向量化并存储于 PostgreSQL、Elasticsearch 及 Qdrant。同时提取关键信息构建知识图谱存入图数据库。在检索阶段,系统对用户问题进行改写优化,结合向量检索与图数据库检索进行双路召回,经融合排序后由大模型生成最终回答。该架构展示了 RAG 与知识图谱在企业级知识管理中的落地实践。

赛博行者发布于 2026/3/29更新于 2026/7/2053 浏览
基于 WeKnora 开源项目的 RAG 与知识图谱架构解析

腾讯 Ima 知识库架构解读

腾讯 AI 智能工作台 Ima 是腾讯推出的智能办公产品,依托混元大模型与 RAG 架构打造知识管理体系,支持 Windows/Mac 双平台,提供 AI 问答、多模态文本创作、图像生成等核心功能。其核心能力覆盖多格式文档智能整合管理、大模型驱动的精准问答交互、动态知识图谱构建与更新,以及跨部门知识协同共享等场景。

最近有机会深入了解 ima 的实现过程,由于腾讯 Ima 未开源,可通过研究其旗下另一款开源同构产品 WeKnora 间接推测其架构。二者同属腾讯知识管理类产品,定位虽有差异,但共享核心技术理念。

WeKnora 的主力开发语言为 Go,项目启动前需在本地完成 Ollama 与 Docker 的安装配置:其中 Ollama 用于部署所需大模型,Docker 则负责部署数据库等相关镜像组件。

请添加图片描述

从架构图可见,WeKnora 核心分为两大模块:左侧绿色模块聚焦用户文档的上传与解析,同步完成知识库与向量库的构建。右侧紫色模块聚焦问答交互——即基于用户问题检索知识库,整合信息后生成精准回答。

一、文件上传:多格式解析与知识库构建

首先我们来看看文件上传后的处理逻辑。从代码层面可知,WeKnora 支持多种格式文件上传,涵盖 PDF、TXT、MD、DOCX、DOC、JPG、PNG、CSV、XLSX 及 XLS 等 11 类格式。

在这里插入图片描述

按文件属性可将其归为三大类:第一类是文本类文件(含可直接解析为文本的格式),包括 TXT、MD(Markdown)、DOC/DOCX(Word)、CSV/XLSX/XLS(表格)及纯文本 PDF;第二类是无法直接解析为文本的流式文件,如 JPG/JPEG/PNG 图片及扫描件 PDF;第三类是图文混合文件(如含图文的 PDF)。由于混合文件的处理逻辑本质是'文本 + 图片'的融合处理,因此后续将聚焦文本类与图片类数据展开讨论。

WeKnora 为每种文件类型单独设计了处理类,所有处理逻辑均封装在 /docreader/parser 目录中。

在这里插入图片描述

其中 PDF 解析逻辑最为复杂(需兼顾文本与图片内容),因此框架采用责任链模式实现解析。优先使用 MinerU 工具解析,若解析失败则使用微软开源的 Markitdown 文件解析工具。

请添加图片描述

从 mineru_parser.py 文件的实现逻辑来看,WeKnora 会先将 PDF 拆分为文本与图片两部分,完成图片保存后再对两部分分别解析。(下图)

在这里插入图片描述

先来看看文本部分的处理逻辑,不同文本类型(如 TXT、DOC、Excel)的处理细节虽有差异,但核心流程保持一致。对于文本类文件,框架会先通过正则匹配识别'不可切分的整体内容'(如 MD 表格、图片占位符等)。即使此类内容体积过大,仍然会直接作为单个 chunk 保留(不进行切分)。(这种情况理论上会影响系统实际运行性能)

在这里插入图片描述

值得注意的是,Excel 的处理逻辑较为特殊。WeKnora 按'每行一个 chunk'的规则进行切分,以表头为 Key、对应列值为 Value,每行生成一组 KV 键值对。这种方式在常规场景下表现良好,但实际业务中存在大量格式复杂的 Excel 文件(如合并单元格、特殊格式等),此时该拆分方式的适配性会显著下降。

在这里插入图片描述

所有文本数据拆分为 chunk 后,将进入后续处理环节。WeKnora 默认采用 nomic-embed-text 作为嵌入模型。选择该模型的核心考量可能在于适配多数使用者的硬件配置——nomic-embed-text 在 CPU 或低配 GPU 环境下可实现更优的推理速度,降低部署门槛。

在这里插入图片描述

向量化后的数据将存储于 PostgreSQL、Elasticsearch 及 Qdrant 三种数据库中,这三类数据库的镜像会在项目启动时自动拉取并完成安装。

在这里插入图片描述

同时,每个 chunk 除了进行向量嵌入,还会同步开展关键信息提取,用于知识图谱构建。WeKnora 直接借助大模型完成信息提取与图谱构建,并将最终生成的知识图谱存入图数据库。

在这里插入图片描述

在这里插入图片描述

从实现细节可见,WeKnora 默认仅支持 11 种实体类别,若这些类别无法覆盖实际业务场景,需用户自行调整 prompt 以适配新的实体类型。

而在文档整体处理流程中,图片部分的处理逻辑同样关键。如前文所述,PDF 会被拆分为文本与图片两部分,文本部分按上述逻辑处理,图片部分则先通过 OCR 识别转换为文本,再沿用文本的处理流程完成后续操作。WeKnora OCR 识别采用的是行业广泛应用的 PaddleOCR 工具。

在这里插入图片描述

二、知识获取:精准检索与智能交互实现

知识获取是用户与系统交互的核心环节,WeKnora 通过'问题优化 - 双渠道检索 - 信息融合 - 智能生成'的全流程设计,确保用户能快速获取精准、全面的知识答案。其核心逻辑是依托前文构建的向量库与知识图谱,通过大模型驱动的检索与整合,实现从问题到答案的高效转化。

当用户提出问题时,WeKnora 会先利用大模型对问题进行改写优化,将原始问题调整为更契合检索需求的自然语言问句(如补充上下文信息、优化表述逻辑、明确核心诉求等)。

在这里插入图片描述

随后进入核心的信息检索与召回环节,具体流程可分为两步并行推进。

  • 第一步是向量检索,基于改写后的问题生成对应的向量表示,然后在已构建的向量库(存储于 PostgreSQL、Elasticsearch 及 Qdrant 中的向量化 chunk 数据)中进行相似性匹配,召回与问题语义相关的知识片段;
  • 第二步是图数据库检索,同步提取问题中的核心实体、关键词及语义关系,依据这些信息在图数据库的知识图谱中检索关联的实体节点、属性及关系链路,获取结构化的知识关联信息。

在这里插入图片描述

检索完成后,框架会对两类渠道召回的信息进行融合处理。

  • 先分别对向量检索结果按语义相似度得分排序、对图数据库检索结果按关联紧密程度排序。
  • 再结合信息的可信度、时效性等维度进行二次筛选与权重分配,最终整合形成一份精准、全面的候选信息集合,提交给大模型生成符合用户需求的最终回答。

三、结语

WeKnora 以'多格式文档解析 - 双库构建'为基础,以'智能问题优化 - 双渠道检索 - 信息融合生成'为交互核心,借助 Go 语言生态、Ollama 大模型部署、PaddleOCR 等技术工具,实现了知识的高效管理与精准输出。

尽管 WeKnora 在复杂格式文档适配、实体类别扩展性等方面仍有优化空间,但其展现的'大模型 + RAG + 知识图谱'的融合思路,精准契合了企业级知识管理对高效整合、智能交互、协同共享的核心需求。未来,随着大模型技术的迭代与行业需求的深化,这类知识管理产品在处理复杂度、检索精准度、场景适配性等方面的能力有望进一步提升,为企业数字化转型中的知识沉淀与价值释放提供更坚实的支撑。

目录

  1. 腾讯 Ima 知识库架构解读
  2. 一、文件上传:多格式解析与知识库构建
  3. 二、知识获取:精准检索与智能交互实现
  4. 三、结语
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • IDEA 修改 Git 用户配置全流程
  • Spring Bean 管理与 Spring Boot 自动配置原理
  • 6 款主流国产大模型功能对比与使用指南
  • C++ 模板与 string 类使用指南
  • Enterprise Architect 16 软件介绍与安装教程
  • QGIS 插件获取 Maxar 全球高分辨率遥感影像(0.3-0.5 米)
  • AutoDL 深度学习服务器使用教程与 Linux 常用命令
  • Python 数据科学工具链入门:NumPy、Pandas、Matplotlib 实战
  • Python 数据统计分析与清洗实战指南
  • 求职面试总挂一面?如何优化自我介绍与履历解释
  • 期刊论文智能写作:从“难产”到“高产”的破局之道
  • Milvus 实战:Attu 可视化安装与 Python 整合指南
  • AI 魔术师:基于视觉的增强现实特效
  • 医疗 AI 中的 k-均值算法:患者分群与精准医疗实战
  • DeepSeek 结合通义万相制作 AI 视频实战指南
  • 春晚 AI 背后的工程真相:从实验室到亿级并发基础设施
  • 10 款常用 AIGC 降重工具对比与选择指南
  • GitHub Copilot 接入 Figma MCP 还原设计稿生成前端代码
  • OSCP 实战:破解 SSH 私钥的密码短语
  • 计算机网络与网络安全核心概念及技术综述

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online