如何开启 WeKnora 知识图谱:把文档碎片连成可查询的关系网络
如何开启 WeKnora 知识图谱把文档碎片连成可查询的关系网络【免费下载链接】WeKnoraOpen-source LLM knowledge platform: turn raw documents into a queryable RAG, an autonomous reasoning agent, and a self-maintaining Wiki.项目地址: https://gitcode.com/GitHub_Trending/we/WeKnora一个 300 份文档的客服知识库有人问如何配置数据库连接池。纯关键词检索只会命中提到这三个词的那份文档而连接池的参数说明其实写在另一份文档里。开启 WeKnora 知识图谱之后系统会先从问题里抽出连接池数据库配置这样的实体再顺着图谱找到相关概念及它们各自绑定的原文片段一并交给模型做上下文——检索范围从命中一条变成命中一条带上它的 N 个关联。上传文档前先做的三个配置图谱不是打开界面就有的它是文档入库时由 LLM 顺手抽出来的副产品。所以在传文档之前先把这三件事做完在项目根目录.env里启用 Neo4jNEO4J_ENABLEtrue NEO4J_URIbolt://neo4j:7687 NEO4J_USERNAMEneo4j NEO4J_PASSWORDyour_strong_password用仓库自带的 compose 配置把 Neo4j 拉起来docker-compose --profile neo4j up -d在知识库设置里勾选启用实体抽取和启用关系抽取按提示补上模型参数。保存后后续每份文档解析完都会自动进入抽取流程。验证方式很简单登录http://localhost:7474执行MATCH (n) RETURN n LIMIT 50;能看到节点就说明图谱在生成。图谱里存了什么11 类实体关系带强度分抽取规则不是随便抽而是由一份提示词模板约束的具体定义在 抽取提示词模板 里实体限定 11 类Person、Organization、Location、Product、Event、Date、Work、Concept、Resource、Category、Operation。分不出的类型直接跳过不强行归类。关系只抽文本中明确出现的禁止编造并给每条关系打 5–10 的强度分10 分是直接创建/从属关系作者与其作品5 分是同领域但松散关联。每个节点都挂着自己来自哪些分块chunks这是图谱能反向定位到原文的依据。节点和关系的读写、删除逻辑在 Neo4j 检索仓储 中按知识库维度隔离删文档会连带清掉它对应的子图。提问时图谱如何参与检索图谱的价值在查询阶段才体现。一条问题进入对话管线后实体抽取插件 会在问题理解阶段把关键实体识别出来然后用这些实体去图里查一跳关联命中实体节点展开它的关系边收集所有节点绑定的分块 ID。这些分块随后和 BM25、向量检索的结果混在一起经过 Rerank 排序最后交给 LLM 生成答案。也就是说图谱不替代向量检索而是给混合检索补了一路沿概念边走的来源。在界面上验收点节点看摘要顺边追原文知识库的 Wiki 图谱页可以直接验收抽取质量节点颜色按类型区分摘要、实体、概念、流程、对比页面会显示节点总数点击节点右侧面板展示该实体的说明和相关页面沿连线可以确认连接池到底关联到了参数说明还是最佳实践如果答案引用了某个节点你能顺着节点回查到原文分块而不是只看到一句没来由的结论。前后对比与排查清单维度未开图谱开启图谱后检索范围命中单个分块命中分块 关联实体的分块新术语查询字面没出现就查不到通过实体边关联到相关概念答案可追溯性只有片段本身节点 → 关系 → 原文分块排查时常见三类问题参考 开启知识图谱功能连不上 Neo4j核对NEO4J_URI、账号密码看容器日志没有节点生成确认知识库开了抽取开关且文档已完成解析抽取异常会出现在后端日志查询无结果在控制台跑CALL db.schema.visualization;看 schema 是否存在必要时重新导入文档建议先用 10–20 份文档的小知识库验证节点和关系是否符合预期再推广到全量库确认抽取质量没问题后把实体抽取开关应用到其余知识库即可。 【免费下载链接】WeKnoraOpen-source LLM knowledge platform: turn raw documents into a queryable RAG, an autonomous reasoning agent, and a self-maintaining Wiki.项目地址: https://gitcode.com/GitHub_Trending/we/WeKnora创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考