KAG 代表新一代基于大模型的知识服务架构,堪称当前该领域最为全面且深入的介绍。核心要点聚焦于三方面:KAG 如何突破传统框架的局限、其核心功能,以及技术架构的细节。下面逐一详细阐述。
KAG 是什么
KAG(Knowledge Augmented Generation,知识增强生成)是基于 OpenSPG 引擎与大型语言模型的逻辑推理问答框架,专为构建垂直领域知识库的逻辑推理与问答系统而设计。它有效解决了传统 RAG 向量相似度计算带来的语义歧义问题,以及 OpenIE 引入的 GraphRAG 噪声干扰——这两者长期是知识增强生成领域的主要痛点。KAG 不仅支持逻辑推理与多跳事实问答,还在多项基准测试中显著超越当前最先进的(SOTA)方法。
KAG 核心功能
面向大语言模型的语义化知识管理
在私有知识库场景中,非结构化数据、结构化信息以及业务专家经验往往同时存在。KAG 提出了一套对大语言模型(LLM)友好的知识表示框架,在 DIKW(数据、信息、知识、智慧)层次结构的基础上,将 SPG 升级为 LLMFriSPG 版本。这意味着它能够同时兼容无模式约束的信息提取和有模式约束的专业知识构建,并支持图结构与原始文本块之间的互索引表示。
这种互索引表示有助于构建基于图结构的倒排索引,进而促进逻辑形式的统一表示、推理与检索。同时,通过知识理解、语义对齐等手段,进一步降低信息抽取的噪声,提升知识的准确率与一致性。
逻辑符号引导的混合推理引擎
KAG 提出了一种由逻辑符号引导的混合求解与推理引擎。该引擎包含三种运算符:规划、推理与检索,能够将自然语言问题转化为结合语言和符号的问题求解过程。每一步均可根据需要调用不同的运算符——例如精确匹配检索、文本检索、数值计算或语义推理——从而整合四种问题求解方式:图谱推理、逻辑计算、文本块检索与 LLM 推理。
技术架构

KAG 框架包含三部分:kg-builder、kg-solver 与 kag-model。本次发布仅涉及前两部分,kag-model 将在后续陆续开源。
- kg-builder:负责知识表示与构建。它实现了对大语言模型友好的知识表示,基于 DIKW 层次结构升级 SPG 知识表示能力,兼容无模式与有模式的知识构建,支持图结构与文本块的互索引表示,为后续推理问答的高效检索奠定基础。
- kg-solver:负责推理与求解。它采用逻辑形式引导的混合求解与推理引擎,包含规划、推理与检索三种运算符,能够整合检索、知识图谱推理、语言推理与数值计算四种问题求解过程,应对复杂的逻辑推理与问答任务。
- kag-model:(后续逐步开源)当前版本未详细说明该部分功能,可能涉及模型训练、优化或其他相关组件。
使用方法
推荐系统版本
macOS User:macOS Monterey 12.6 or later Linux User:CentOS 7 / Ubuntu 20.04 or later Windows User:Windows 10 LTSC 2021 or later
软件要求
macOS / Linux User:Docker,Docker Compose Windows User:WSL 2 / Hyper-V,Docker,Docker Compose
docker 镜像安装
执行以下命令下载 docker-compose.yml 文件并启动服务:
# set the HOME environment variable (only Windows users need to execute this command)
# set HOME=%USERPROFILE%
curl -sSL https://raw.githubusercontent.com/OpenSPG/openspg/refs/heads/master/dev/release/docker-compose-west.yml -o docker-compose-west.yml
docker compose -f docker-compose-west.yml up -d
运行
在浏览器中访问 http://127.0.0.1:8887 即可使用。
