【环境配置】KAG - Windows 安装部署
前言
本博客将介绍如何在 Windows 系统上 部署运行 KAG 项目,将使用 WSL 和 Docker 和 Vscode 帮助我们之后利用 KAG 开发个人知识库问答项目。
KAG(Knowledge-Augmented Generation)知识增强生成系统 是一个融合知识图谱与大语言模型能力的智能问答与内容生成平台。该系统通过将结构化知识(如实体、关系、属性等)与自然语言生成技术相结合,实现对复杂问题的理解与精准回答,广泛应用于智能客服、企业知识库、垂直领域问答助手等场景。
基础环境配置
为部署 KAG 项目,需先完成:
- WSL 的部署
- Docker 的部署
WSL 安装部署
WSL 安装部署参考 WSL 安装部署详解 中的方法,写的非常详细,亲测有效。
安装 WSL 后,为方便我们后续的代码开发,推荐使用 Vscode 连接 安装的 WSL, 连接参考博客 WSL + Vscode
安装好后,为了后续开发的环境管理,我们下载安装 Miniconda 。参考这篇博客即可 WSL Minicona 安装
常见问题说明
WSL 安装完成后,可能会遇到下面的提示:
wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理
如果是 Windows 11 用户,打开 wsl settings
进入网络栏,网络模式选择 修改 Nat 为 Mirrored。保存即可解决。
Docker Desktop 安装部署
前往官网下载 Docker Desktop
安装后需要启用 Docker Desktop 的 WSL 集成,步骤如下:
-
打开设置(⚙️ 图标)→ General
-
确保勾选:✅ Use the WSL 2 based engine
-
打开 Resources → WSL Integration
-
看到 WSL 的发行版列表
-
✅ 勾选你要使用的发行版(比如
Ubuntu-20.04
) -
点击 Apply & Restart
Docker 换源: 由于 KAG 的 Docker 镜像存在阿里云的镜像仓库中所以需要配置镜像源才能够拉取,换源流程参考 博客 WSL 自定义 Docker 并换源
KAG 部署
需要提前说明,KAG 项目 与 OpenSPG 项目是二者有着紧密联系
- OpenSPG: 蚂蚁集团结合多年金融领域多元场景知识图谱构建与应用业务经验的总结并与OpenKG联合推出的基于SPG框架研发的知识图谱引擎。
- KAG: KAG(Knowledge-Augmented Generation)知识增强生成系统 是一个融合知识图谱与大语言模型能力的智能问答与内容生成平台。
简单来说,KAG 是基于 OpenSPG 这一知识图谱引擎 开发的知识增强生成系统。也就是说 KAG 是建立在 OpenSPG 上的。所以在部署 KAG 时,我们需要先 部署 OpenSPG 然后再去使用 KAG。
部署 OpenSPG
完成上述操作后,进入 WSL ,选择一个合适的存储位置。拉取 OpenSPG 镜像并运行。过程大概 3-5 min 。
curl -sSL https://raw.githubusercontent.com/OpenSPG/openspg/refs/heads/master/dev/release/docker-compose.yml -o docker-compose.yml
docker compose -f docker-compose.yml up -d
拉取完成后,访问 http://127.0.0.1:8887
即可进入 KAG 的用户界面
初始账密如下,登录后需更新密码。
Default Username: openspg
Default password: openspg@kag
登录后如下图所示。
后续使用时的相关配置,点击右上角标即可自行配置。
KAG 使用(开发者模式)
在 官方说明文档中,KAG 使用分为 产品模式和开发者模式,这里不对产品模式进行阐述,仅对开发者模式进行讲解,原因有三:
- 产品模式是使用 OpenSPG 的 WebUI 界面进行 知识库,模型等的配置和使用,虽然操作简单,但是 该项目的前后端并不完善存在许多 bug。
- OpenSPG 的许多接口 与 WebUI 界面 的许多接口并不是一一对应的关系,拓展性差。
- WebUI 界面的使用不易于我们去理解 KAG 与 OpenSPG的关系,及相关的运行原理等,不利于我们进行开发。
开发者模式安装过程
拉取 KAG 的代码库
git clone https://github.com/OpenSPG/KAG.git
创建 conda 环境,安装前置依赖。
# 安装python 虚拟环境:
conda create -n kag-demo python=3.10 && conda activate kag-demo
# 进入项目根目录即./KAG,进行KAG安装:
cd ./KAG && pip install -e .
验证安装是否成功。
# 验证是否安装成功
$ knext --version
$ knext --help
显示如下所示的结果即安装成功。
参考资料
[1] 【【KAG】1-概念讲解和安装部署】
[2] 全网最全Win10/11系统下WSL2+Ubuntu20.04的全流程安装指南(两种支持安装至 D 盘方式)_win10安装wsl2-CSDN博客
[3] (26 封私信 / 80 条消息) win11快速解决“wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理” - 知乎
[4] wsl 安装 Miniconda 和 Anaconda_wsl安装miniconda-CSDN博客
[5] 建议立刻将 WSL + VSCode 作为你的最强生产力环境,起飞吧_wsl vscode-CSDN博客
[6] Windows子系统(WSL2)中自定义安装docker并换源 - 悠悠明月 - 博客园