KAG:基于OpenSPG引擎和LLM的逻辑推理问答框架
KAG是什么?
KAG(Knowledge Augmented Generation)是蚂蚁集团推出的专业领域知识服务框架,基于OpenSPG引擎和LLM,目的在构建垂直领域知识库的逻辑推理问答解决方案。它通过结合知识图谱和向量检索的优势,有效克服传统RAG向量相似度计算的歧义性和OpenIE引入的GraphRAG的噪声问题,支持逻辑推理、多跳事实问答等,优于当前最先进的SOTA。
KAG核心功能
专业领域问答增强:结合知识图谱和向量检索,提升大型语言模型在特定领域的问答能力,生成更准确、专业和逻辑性强的答案。
知识表示与检索优化:采用LLM友好的知识表示框架,实现知识图谱与原始文本块的互索引,优化知识的表示、推理和检索过程,提高检索结果的准确性和相关性。
混合推理与问题解决:基于逻辑形式引导的混合推理引擎,将自然语言问题转化为结合语言和符号的问题解决过程,集成检索、知识图谱推理、语言推理和数值计算,有效处理复杂问题。
知识对齐与语义增强:基于语义推理进行知识对齐,定义领域知识为各种语义关系,提高知识的标准化和连通性,增强知识表示的准确性和一致性。
KAG技术架构
kg-builder:负责知识表示和构建。实现对LLM友好的知识表示,基于DIKW层次结构升级SPG知识表示能力,兼容无模式和有模式的知识构建,并支持图结构和文本块的互索引表示,为后续推理问答阶段的高效检索提供支持。
kg-solver:负责推理和求解。采用逻辑形式引导的混合求解和推理引擎,包含规划、推理和检索三种运算符,能够集成检索、知识图谱推理、语言推理和数值计算四种问题求解过程,从而处理复杂的逻辑推理和问答任务。
kag-model:将在后续逐步开源,其功能在当前版本中未详细说明。
KAG使用教程
产品版(面向普通用户)
系统要求:推荐系统版本为macOS Monterey 12.6或更新版本、CentOS 7/Ubuntu 20.04或更新版本、Windows 10 LTSC 2021或更新版本。
软件要求:macOS/Linux用户需要Docker和Docker Compose,Windows用户需要WSL 2/Hyper-V、Docker和Docker Compose。
安装步骤:使用以下命令下载docker-compose.yml并用Docker Compose启动服务:
curl-sSLhttps://raw.githubusercontent.com/OpenSPG/openspg/refs/heads/master/dev/release/docker-compose.yml-odocker-compose.ymldockercompose-fdocker-compose.ymlup-d使用方法:浏览器打开KAG产品默认链接http://127.0.0.1:8887,使用默认用户名openspg和密码openspg@kag登录。
工具包版(面向开发者)
安装步骤:
安装Python虚拟环境,克隆代码并安装KAG。
macOS/Linux开发者:
condacreate-nkag-demopython=3.10&&condaactivatekag-demogitclonehttps://github.com/OpenSPG/KAG.gitcdKAG&&pipinstall-e.Windows开发者:
py-mvenvkag-demo&&kag-demoScriptsactivategitclonehttps://github.com/OpenSPG/KAG.gitcdKAG&&pipinstall-e.使用方法:开发者可以基于KAG内置的各种组件,实现内置数据集的效果复现+新场景的落地。
GitHub: https://github.com/OpenSPG/KAG
OpenSPG: https://spg.openkg.cn/