腾讯开源知识库WeKnora NAS私有化部署全攻略:从零搭建你的智能文档检索系统
WeKnora是一款基于大语言模型(LLM)构建的文档理解与语义检索框架,专门针对结构复杂、内容多样的文档应用场景而设计。该框架采用了模块化的架构设计,融合了多模态文档预处理、语义向量索引、智能信息召回与大模型生成推理等多个环节,从而构建了一套高效且可控的文档智能问答流程。其核心检索机制依托于RAG(检索增强生成)技术,通过结合相关的上下文片段与大语言模型的能力,旨在生成质量更高、相关性更强的语义化回答。
架构设计与核心特性
其系统架构经过精心设计,旨在确保流程的顺畅与高效。

WeKnora具备以下一系列核心特性:
- 🔍 精准内容理解:支持对PDF、Word、图片等多种格式文档进行结构化内容提取,并统一构建为易于处理的语义视图。
- 🧠 智能语义推理:借助大语言模型深度理解文档上下文与用户查询意图,支持精准的问答交互与多轮连续对话。
- 🔧 灵活可扩展:从文档解析、向量嵌入、信息召回到最终生成的全流程均实现解耦设计,便于根据需求进行灵活集成与定制化扩展。
- ⚡ 高效混合检索:融合了关键词检索(如BM25)、稠密向量检索以及知识图谱增强检索(GraphRAG)等多种策略。
- 🎯 简单易上手:提供了直观的Web管理界面与标准化的API接口,即使是零技术基础的用户也能快速入门。
- 🔒 安全可控:全面支持本地化与私有云部署模式,确保所有数据完全自主可控,保障企业级信息安全。
适用场景与核心价值
WeKnora能够广泛应用于多个领域,其具体应用场景与核心价值如下表所示:
| 应用场景 | 具体应用 | 核心价值 |
|---|---|---|
| 企业知识管理 | 内部文档检索、规章制度问答、操作手册查询 | 极大提升知识查找与利用效率,有效降低员工培训与信息获取成本。 |
| 科研文献分析 | 学术论文检索、研究报告深度分析、领域资料系统整理 | 加速文献调研过程,为研究决策提供智能化辅助与支持。 |
| 产品技术支持 | 产品手册智能问答、技术文档精准检索、故障排查引导 | 提升客户服务响应质量与效率,减轻技术支持人员的工作负担。 |
| 法律合规审查 | 合同条款快速检索、法规政策实时查询、历史案例对比分析 | 提高法务与合规工作的审查效率,系统性降低潜在法律风险。 |
| 医疗知识辅助 | 医学文献检索、最新诊疗指南查询、典型病例分析参考 | 辅助临床医生进行决策,提升诊疗方案的质量与科学性。 |
功能模块与能力概览
框架内各功能模块的支持情况如下:
| 功能模块 | 支持情况 | 详细说明 |
|---|---|---|
| 文档格式支持 | ✅ PDF / Word / Txt / Markdown / 图片(含OCR/图像描述) | 支持解析多种结构化与非结构化文档,能够处理图文混排内容并提取图像中的文字信息。 |
| 嵌入模型支持 | ✅ 本地模型、BGE / GTE等API | 支持使用自定义的embedding模型,兼容本地部署与云端向量生成接口,灵活性高。 |
| 向量数据库接入 | ✅ PostgreSQL(pgvector)、Elasticsearch | 支持主流的向量索引后端,可根据不同检索场景和性能要求灵活切换与扩展。 |
| 检索机制 | ✅ BM25 / 稠密检索 / GraphRAG | 支持稀疏检索、稠密检索及知识图谱增强检索等多种策略,可自由组合召回、重排与生成流程。 |
| 大模型集成 | ✅ 支持Qwen、DeepSeek等,思考/非思考模式切换 | 可接入本地部署的大模型(如通过Ollama启动)或调用外部API服务,支持推理模式的灵活配置。 |
| 问答能力 | ✅ 上下文感知、多轮对话、提示词模板 | 支持复杂的语义建模与指令控制,可进行链式问答,并允许配置提示词模板与上下文窗口大小。 |
| 端到端测试 | ✅ 检索+生成过程可视化与指标评估 | 提供一体化链路测试工具,支持评估召回命中率、回答覆盖度及BLEU/ROUGE等主流评测指标。 |
| 部署模式 | ✅ 支持本地部署 / Docker镜像 | 满足私有化、离线部署及灵活运维的需求,保障数据安全与系统稳定。 |
| 用户界面 | ✅ Web UI + RESTful API | 提供交互式可视化界面供业务用户使用,同时提供标准API接口供开发者集成与二次开发。 |
在NAS上部署WeKnora的详细步骤
第一步:获取与准备项目文件
首先,从GitHub官方仓库下载WeKnora项目源代码。
将下载的ZIP压缩包解压,在解压后的目录中找到名为.env.example的环境配置文件模板。

第二步:配置环境变量
使用文本编辑器打开.env.example文件,根据您的实际环境进行配置:
- 修改Ollama服务的地址(Ollama需提前在NAS或其他服务器上独立部署)。

- 默认使用Qwen2.5-7B-Instruct模型,您可以根据需要切换为其他已部署的模型(注意:启用配置需移除行首的
#注释符号)。
- 可以按需修改前端Web服务的访问端口。

- 重要提示:如果您的NAS系统(如飞牛FnOS)中已有服务占用了PostgreSQL的默认端口5432,则必须修改此处配置以避免冲突。
完成所有修改后,将该文件重命名为.env。
第三步:上传文件并启动容器
将整个项目文件夹上传到您的NAS设备中。
在NAS的容器管理界面(如Docker或Portainer)中,创建一个新项目或应用,选择上传的项目文件夹路径,系统通常会自动识别并导入其中的Docker Compose配置。
启动项目,等待所有Docker容器构建并启动完成,此过程可能需要一些时间,具体取决于网络速度和NAS性能。
特别注意:由于服务涉及多个容器,启动后务必在日志中检查所有容器是否都正常运行,确认没有报错信息。
您也可以通过SSH连接到NAS,在项目目录下使用以下脚本命令管理服务:
# 启动所有服务
sudo bash ./scripts/start_all.sh
# 停止所有服务
sudo bash ./scripts/start_all.sh --stop
# 清理数据库(谨慎使用,会清空数据)
sudo make clean-db
初始化配置与基本使用
访问与注册
在浏览器地址栏中输入 http://你的NAS的IP地址:8081 即可访问WeKnora的Web界面。
首次使用需要注册一个管理员账户,点击登录界面上的“立即注册”按钮。
填写用户名、邮箱和密码完成注册。
注册成功后,使用邮箱和密码登录系统。

创建与配置知识库
登录后的管理面板界面设计较为清爽。点击右上角的“新建知识库”按钮开始创建。
为知识库设定一个易于识别的名称。

⚠️ 常见问题解决:知识库创建失败
在创建过程中,可能会遇到因数据库表缺失而导致失败的情况。
此时,需要通过SSH连接到NAS,执行以下步骤进行修复:
- 首先,检查PostgreSQL容器内的数据表数量,如果数量过少,说明初始化不完整。
docker exec -it WeKnora-postgres psql -U postgres -d WeKnora -c "\dt"
- 执行初始化SQL脚本,自动创建缺失的数据表。
docker exec -i WeKnora-postgres psql -U postgres -d WeKnora -f /docker-entrypoint-initdb.d/00-init-db.sql
- 再次检查数据表,确认已全部创建成功。
docker exec -it WeKnora-postgres psql -U postgres -d WeKnora -c "\dt"
知识库创建成功后,需要对其进行基础配置。

- 模型端点配置:选择已部署的Ollama服务,界面会列出当前Ollama中已拉取的所有模型。

- LLM大语言模型配置:选择一个用于问答生成的大模型。考虑到响应速度,可以选择参数量较小的模型(如7B),若追求更高的回答质量,可选择更大的模型。

- Embedding嵌入模型配置:选择用于将文档转换为向量的模型。此处最好选择专门的嵌入模型(如
nomic-embed-text),其效果通常优于通用的大语言模型。
- 其他参数(如温度、上下文长度等)可暂时保持默认,完成所有配置后,务必点击“保存”按钮。

上传文档与测试问答
配置完成后,即可进入知识库管理界面。点击“上传文件”按钮,将需要学习的文档(如PDF、Word等)上传至该知识库。
上传后,系统会自动进行解析、分块和向量化处理。处理完成后,即可在右侧的问答框中针对文档内容进行提问测试。
系统能够基于文档内容返回相关的答案片段,并注明来源,表明检索功能运行正常。
您可以根据不同的主题或项目,创建多个独立的知识库进行管理。

系统管理与资源占用
在系统信息页面,官方提供了完整的API接口文档,方便开发者进行二次开发和集成。
关于资源消耗(不包括独立运行的Ollama服务),WeKnora主体服务的CPU占用率通常较低,内存占用根据文档量和并发情况,大致在1.3GB左右,对于NAS设备而言负担尚可。

总结与评价
本次部署过程中遇到的主要挑战是知识库创建失败的问题,该问题通常由数据库初始化不完整导致。通过网络搜索获取的解决方案往往流于表面,未能触及根本。最终通过加入开发者交流群获得了有效的解决方法。
WeKnora本质上是一个基于大语言模型的智能文档理解与检索系统,即一个可私有化部署的“知识库”。用户通过对接大模型,并将文档上传至知识库,即可实现与文档内容的智能对话与精准检索。无论是企业内部用于知识沉淀与管理,还是科研人员用于文献调研,抑或是技术支持团队用于手册查询,它都能提供有效的助力。
- 综合推荐指数:⭐⭐⭐(适合有私有化知识库需求、注重数据隐私的个人用户或中小企业)
- 使用体验评价:⭐⭐⭐(Web界面友好,基础配置流程清晰,学习成本较低)
- 部署难度评估:⭐⭐⭐(需具备基础的Docker和NAS操作知识,遇到问题需要一定的排查能力)