一:项目背景及简介
随着信息量的爆炸式增长,企业对复杂、异构文档的深度理解和语义检索需求日益迫切。在此背景下,WeKnora 应运而生,它是一个基于大语言模型(LLM)的框架,专注于深度文档理解、语义检索以及通过检索增强生成(RAG)范式提供上下文感知的答案。该框架采用模块化架构,整合了多模态预处理、语义向量索引、智能检索和大语言模型推理等功能。
二:目标客户
- 企业用户
:需要进行内部知识管理,如内部文档检索、政策问答、操作手册搜索等,以提高知识发现效率、降低培训成本的企业。
- 学术机构
:从事学术研究分析,需要快速进行论文检索、研究报告分析、学术资料整理,以加速文献回顾、辅助研究决策的机构。
- 产品技术支持团队
:负责产品技术支持,如产品手册问答、技术文档搜索、故障排除,以提升客户服务质量、减轻支持负担的团队。
- 法律合规部门
:开展法律与合规审查,如合同条款检索、监管政策搜索、案例分析,以提高合规效率、降低法律风险的部门。
- 医疗行业从业者
:需要医疗知识辅助,如医学文献检索、治疗指南搜索、案例分析,以支持临床决策、提高诊断质量的从业者。
三:平台定位
WeKnora 定位为一个全面的文档理解和检索平台,旨在通过整合多种先进技术,为用户提供高效、精准、智能的文档处理解决方案。它不仅支持多种文档格式的处理,还能结合大语言模型进行智能推理,满足不同用户在知识管理、学术研究、技术支持、法律合规、医疗辅助等多个领域的需求。
项目架构
四:平台技术
- 模块化架构
:采用现代模块化设计,构建完整的文档理解和检索管道,包括文档解析、向量处理、检索引擎和大模型推理等核心模块,各组件灵活可配置且可扩展。
- 多模态处理
:支持从 PDF、Word、Txt、Markdown 以及图像(通过 OCR/字幕)等多种文档格式中提取结构化内容,转化为统一的语义视图。
- 向量处理与检索
:兼容本地模型、BGE/GTE API 等多种嵌入模型,支持 PostgreSQL(pgvector)、Elasticsearch 等主流向量索引后端,采用 BM25、密集检索、GraphRAG 等混合检索策略。
- 大语言模型集成
:支持 Qwen、DeepSeek 等大语言模型,具备思考/非思考模式切换功能,可与本地模型(如通过 Ollama)或外部 API 服务灵活集成,实现智能推理。
五:平台核心功能
- 精准理解
:从多种文档格式中提取结构化内容,形成统一的语义视图。
- 智能推理
:利用大语言模型理解文档上下文和用户意图,实现准确的问答和多轮对话。
- 灵活扩展
:解析、嵌入、检索和生成等所有组件均解耦,便于自定义。
- 高效检索
:采用关键词、向量和知识图谱相结合的混合检索策略。
- 用户友好
:提供直观的 Web 界面和标准化 API,降低使用门槛。
- 安全可控
:支持本地部署和私有云,确保数据主权。
六:平台独特优势
- 全面的文档支持
:支持多种格式的文档处理,包括图像中的文本提取,满足多样化的文档处理需求。
- 先进的检索技术
:融合多种检索策略,结合知识图谱增强检索效果,提高检索的准确性和相关性。
- 智能的问答能力
:具备上下文感知、多轮对话、提示模板等高级问答功能,支持复杂语义建模和思维链问答。
- 便捷的部署与使用
:提供本地部署和 Docker 镜像支持,满足私有、离线部署和灵活运营要求;同时提供 Web UI 和 RESTful API,方便不同用户使用。
- 完善的测试与评估
:提供端到端测试工具,可对检索 + 生成过程进行可视化和指标评估,如召回命中率、答案覆盖率、BLEU/ROUGE 等指标。
七:平台配置安装与部署说明
- 先决条件
:确保系统已安装 Docker、Docker Compose 和 Git。
- 安装步骤
方法一:运行
./scripts/start_all.sh或make start-all启动所有服务(Ollama + 后端容器)。方法二(备用):先可选启动 ollama 服务
ollama serve > /dev/null 2>&1 &,再通过docker compose up -d启动服务。
克隆仓库:
git clone https://github.com/Tencent/WeKnora.git,然后进入项目目录cd WeKnora。配置环境变量:复制示例环境文件
cp .env.example .env,并根据.env.example中的注释编辑.env文件,设置所需值。启动服务:
停止服务:运行
./scripts/start_all.sh --stop或make stop-all。
- 访问服务
:服务启动后,可通过以下地址访问:
Web UI:
http://localhost后端 API:
http://localhost:8080Jaeger 追踪:
http://localhost:16686
- 初始化配置
:首次使用时,可跳过停止服务和清除数据表步骤,直接编译并启动服务,然后访问 Web UI(
http://localhost),首次访问会自动跳转到初始化配置页面,按页面指示完成模型配置。
八:应用场景及案例说明
- 企业知识管理
:实现内部文档检索、政策问答和操作手册搜索,提高知识发现效率,降低培训成本。例如,企业员工可以通过该平台快速找到所需的内部政策文件,并获取准确的问题答案。
- 学术研究分析
:加速论文检索、研究报告分析和学术资料整理,辅助研究决策。例如,研究人员可以利用平台快速筛选出相关领域的论文,并对其进行深入分析。
- 产品技术支持
:提供产品手册问答、技术文档搜索和故障排除,提升客户服务质量,减轻支持负担。例如,客户可以通过平台自助查询产品手册中的问题,快速解决使用过程中遇到的困难。
- 法律与合规审查
:提高合同条款检索、监管政策搜索和案例分析的效率,降低法律风险。例如,法律从业者可以利用平台快速查找相关法律法规和案例,为法律事务提供有力支持。
- 医疗知识辅助
:支持医学文献检索、治疗指南搜索和案例分析,辅助临床决策,提高诊断质量。例如,医生可以通过平台获取最新的医学研究成果和治疗方案,为患者提供更优质的医疗服务。
项目地址:
https://github.com/Tencent/WeKnora