WeKnora 完整教程:从零搭建 RAG 智能问答与知识库管理系统
【免费下载链接】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
WeKnora 是一个开源的 LLM 知识平台:把 PDF、Word、网页等原始文档变成可检索的 RAG 知识库,同时提供一个会自己规划检索步骤的 ReAct Agent 和一个自动维护的 Wiki。如果你手头有一堆内部文档、想找答案不用翻聊天记录和文件柜,这就是一个能自己部署的知识库问答系统。
🚀 五分钟跑起来
部署只依赖 Docker 和 Docker Compose,建议 4 核 8GB 起步(文档解析容器内含 LibreOffice,比较吃内存)。
git clone https://gitcode.com/GitHub_Trending/we/WeKnora && cd WeKnora cp .env.example .env # 按注释填数据库与密钥相关项 docker compose pull docker compose up -d验证是否就绪:
curl http://localhost:8080/health # 返回 {"status":"ok"} 即后端就绪然后浏览器打开http://localhost,首次访问进入注册页,注册完自动获得一个自己的工作空间,你就是该空间的 Owner。可选组件按需加 profile,比如docker compose --profile neo4j --profile minio up -d开启知识图谱与对象存储。
它能做什么:四个真实场景
提问,答案带出处
上传几份产品手册后问"退货流程是什么",系统检索相关片段、交给大模型作答,回答里带引用角标,点一下跳回原文对应位置。这是最基础的 RAG 问答模式,默认由内置的"快速问答"Agent 完成。
会自己规划步骤的 ReAct Agent
遇到"对比这三份合同里的违约责任条款"这类多步问题,快速问答的单次检索就不够了。切到"智能推理"Agent,它会按"思考 → 检索 → 行动 → 观察"的循环自己决定查几轮、要不要联网、要不要调工具,打开 internal/agent/ 就能看到 ReAct 主循环的实现,具体工具(知识库检索、图查询、沙箱执行等)集中在 internal/agent/tools/。
让 Agent 替你写 Wiki
除了问答,WeKnora 的 Wiki 模式会把原始文档蒸馏成结构化、互相链接的 Markdown 知识库,带可视化知识图谱。页面支持在浏览器里直接编辑,每次修改留快照,可以按行看 diff、一键回滚——知识不再是一次性问答的副产品,而是持续沉淀的资产。
知识自己走进来
不想手动上传?接上飞书 Wiki / 飞书云盘、Notion、语雀或 RSS 后自动增量同步;文档解析本身支持 PDF、Word、Excel、PPT、EPUB、图片和音频等十余种格式,解析器按类型路由,代码在 docreader/parser/。问答出口也可以放在别人那里:企业微信、飞书、Slack、Telegram 等 10 个 IM 渠道,以及嵌到自家网站的挂件。
一张图看懂它为什么能跑通
整条链路分四层,每层都可以替换:
- 输入层:Web UI、REST API、CLI(
weknora命令)、IM 机器人、MCP Server,同一套后端; - 核心引擎:文档解析 → 分块(internal/infrastructure/chunker/ 里的分层标题/启发式分块策略)→ 嵌入 → 检索 → LLM 推理,检索与生成走同一条消息流水线;
- 存储层:默认 ParadeDB(PostgreSQL 17 + BM25/向量扩展)一个库同时管 BM25 和向量,也可换 Qdrant、Milvus、OpenSearch 等;Redis 管异步任务队列;
- 外部服务:20 余家 LLM 提供商、多路联网搜索、MCP 工具,模型能力统一收在 internal/models/ 下按 chat / embedding / rerank 分目录管理。
模块化意味着换向量库、换模型厂商、甚至整个搬到内网离线环境,都只动配置不动代码。
从上传文档到拿到答案
一条最常见的链路走三步:
- 入库:文档进入解析队列(状态
pending → processing → finalizing → completed),解析出的正文被分块,同时可触发实体关系抽取和预生成问题,嵌入向量与文本一起写入存储。 - 检索:问题先经查询改写,再走混合检索——BM25 关键词 + 向量语义 +(开启时的)图谱召回,融合后可加 Rerank 重排,相关逻辑在 internal/application/service/ 的
knowledgebase_search*系列文件中。 - 生成:检索片段拼进提示词交给 LLM 流式作答,引用来源随回答一起返回,答案和出处一一对应。
整个过程是异步的:解析任务走 Redis 队列,管理端有任务队列面板可以看堆积、失败任务重跑,不用盯着日志。
谁在什么情况下用得上
- 企业知识管理员:员工离职、项目交接后知识散落在飞书和网盘里,把数据源接进来自动同步,新人入职直接提问,答案带原文引用。
- 客服团队:把产品文档灌进知识库,挂到企业微信或 Slack,常见问题自动答,答不出的转人工,FAQ 库单独管理高频问答。
- 开发者 / 集成方:需要给自家产品加"文档问答"但不想自建向量管线时,用带权限范围的 API Key 调 REST 接口,或装官方 MCP 包(29 个工具)让自己的 AI 助手直接查知识库。
- 技术团队:用 Lite 单二进制版本(SQLite 内嵌,无需 Docker)在笔记本上离线跑一套完整 RAG,做原型验证。
接下来往哪看
WeKnora 的完整文档在 website-docs/ 目录,覆盖约 360 个 API 端点和 150 个环境变量,可在本地用 VitePress 预览;排查问题先看 docs/QA.md,规划定制开发前读一遍 docs/开发指南.md。把docker compose up -d跑起来、上传第一份文档,是最快的上手方式。
【免费下载链接】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),仅供参考