1. KAG 是什么

KAG 是基于 OpenSPG 引擎和大型语言模型的逻辑推理问答框架,用于构建垂直领域知识库的逻辑推理问答解决方案。KAG 可以有效克服传统 RAG 向量相似度计算的歧义性和 OpenIE 引入的 GraphRAG 的噪声问题。KAG 支持逻辑推理、多跳事实问答等,并且明显优于目前的 SOTA 方法。

KAG 的目标是在专业领域构建知识增强的 LLM 服务框架,支持逻辑推理、事实问答等。KAG 充分融合了 KG 的逻辑性和事实性特点,其核心功能包括:

  • 知识与 Chunk 互索引结构,以整合更丰富的上下文文本信息
  • 利用概念语义推理进行知识对齐,缓解 OpenIE 引入的噪音问题
  • 支持 Schema-Constraint 知识构建,支持领域专家知识的表示与构建
  • 逻辑符号引导的混合推理与检索,实现逻辑推理和多跳推理问答

2. OpenSPG-KAG与其他框架的对比

image-qugg.png

3. OpenSPG-KAG使用的中间件

  • MySQL 关系型数据库
  • minio 对象存储
  • neo4j 图数据库

4. OpenSPG-KAG的部署

请参考如下内容:

官方GithubKAG/README_cn.md at master · OpenSPG/KAG

官方文档用户手册

应用入口:http://127.0.0.1:8887/#/home

5. OpenSPG-KAG的示例使用

5.1 在Ollama部署Embdding以及对话模型

C:\Users\18171>ollama list
NAME             ID              SIZE      MODIFIED
qwen2.5:3b       357c53fb659c    1.9 GB    About an hour ago
bge-m3:latest    790764642607    1.2 GB    About an hour ago
ollama run qwen2.5:3b

注意:若您的电脑性能较高,建议使用更好的Embdding模型进行切分,qwen2.5:3b用于对话测试。(如果Embdding模型一般,切分出的语料的质量也会较差)

5.2 在OpenSPG本地网页端配置模型参数

image-euda.png

image-lqhs.png

5.3 准备文档

选择你曾经写过的一个Markdown文档,此处文档:(暂未提供)

5.4 创建知识库并添加知识

image-cflg.png

5.5 等待任务完成

image-pjwy.png

5.6 执行完成后即可看到处理完的图结构

image-lrea.png

5.7 测试

执行完成后即可在可视化界面测试KAG。

6. OpenSPG的API使用

6.1 API文档

HTTP API Reference

6.2 搜索实体

image-pffi.png

:发起者错误是因为Embdding模型较差

6.3 实体详情

image-faoc.png

其他API待测试

7. 思考

考虑实现OpenSPG-API-SDK用于KAG与Langchain4j的集成