纯小白一天时间,自主部署本地知识库

现在市面上的RAG的工具有很多,自行百度,本篇选择的是Ollama+RagFlow+Docker,

在网上看过很多教程和帖子,包括本篇笔记也是借用了很多前辈的资料参考,网上很多人选择的都是最简单的部署方式,我也是看了一篇帖子开始尝试,中间遇到了很多问题,甚至都有想重装系统的冲动,镜像都下载了,觉得不能放弃又开始新的尝试,最终得以和大家见面。

并不是别的帖子不好,而是很多帖子都没有从纯小白的视角出发,一步一步手把手的教学,所以很多地方容易踩坑,我也会把踩过的坑给大家做提示。

一、目的 

1.体验本地部署的大模型

2.可自行完善多年工作积累的知识库内容

3.给新手小白一个完整的能够从0到1的搭建教程

二、前置环境+工具准备

2.1 部署思路

1、通过win系统自带的wsl构建linux虚拟环境;
2、通过docker desktop实现docker环境部署
3、通过ollama实现大模型底座下载管理;
4、将ragflow平台下载到本地linux环境进行运行部署,使用ollama中的大模型能力;
5、自己构建业务数据训练本地大模型;
6、测试训练结果。

2.2 环境要求

CPU >= 4 cores
RAM >= 16 GB
Disk >= 50 GB
Docker >= 24.0.0 & Docker Compose >= v2.26.1

2.3 前置条件(win环境设置)

2.3.1启用window子系统及虚拟化

控制面板->程序和功能->启用或关闭window功能 或者:

win + r 键入 OptionalFeatures,直接打开

提示:winver查看 windows 系统版本:

最后,重启电脑后生效

2.3.2  将wsl,升级为wsl2

什么是WSL?WSL(Windows Subsystem for Linux)是微软开发的一项技术,允许用户在Windows系统中直接运行完整的Linux环境,无需虚拟机。通过操作系统级虚拟化,WSL将Linux子系统无缝嵌入Windows,提供原生Linux命令行工具、软件包管理器及应用程序支持。它具有轻量化、文件系统集成、良好的交互性及开发效率提升等优点,消除了Windows与Linux之间的隔阂,尤其适合开发者和需在Windows平台上使用Linux工具的用户。

说明:win默认系统自带了wsl,直接管理员身份打开cmd执行相关操作

相关命令:

wsl --update #升级到最新版本(wsl2)``
wsl --list --online # 查看所有可用的发行版``
wsl --install -d Ubuntu-22.04 # 安装 Ubuntu-22.04 系统``
wsl -l -v # 显示当前安装了哪些系统``
wsl --set-default-version 2 #设置wsl默认版本为wsl2``
wsl.exe --set-version Ubuntu-22.04 2 #设置Ubuntu-22.04为 wsl2``
wsl.exe --set-version Ubuntu-22.04 1 #设置为wsl1``
wsl -d Ubuntu-22.04 #登录到Ubuntu环境`` 1

2.3.3 安装Ubuntu-22.04

更新wsl

//更新一下可以解决很多后面的问题,自己安装的时候没有更新,搞了很久。
wsl --update12

2.3.3.1 利用 wsl 安装 Ubuntu

//安装ubuntu命令
wsl --install -d ubuntu
//安装成功以后会自动提醒创建用户,按照要求创建用户、设置密码
//使用刚创建的账户登录
//因为docker一些操作需要root账户,但是这时候不知道root 密码,通过命令修改密码
sudo passwd
//输入当前登录账户的密码,然后输入新密码,这时候可以使用新密码登录root账户
su root
//至此linux环境安装成功。

提示:在那装成功后会要求输入密码,密码是不显示的,但实际上已经输入了,我在这耽误了好长时间,切记!!

2.3.3.2  Microsoft Store  搜索Ubuntu,点击免费下载,安装22.04

三、部署流程

3.1 安装win桌面版docker( Docker

win桌面版下载完之后,按照提示,一直点就行

安装Docker成功

更改:设置–>Resourses

3.2  Ollama(Ollama )

3.2.1 Ollama环境配置

Ollama默认模型文件是存到C盘的,这一步是为了后续Ollama的模型安装可以放在我们自定义的路径里,不需要的可以跳过这一步骤。

(1)打开编辑系统环境变量(可以直接搜索找到,也可以“此电脑”右键属性——高级系统设置)

(2)点击“环境变量”,在下方的“系统变量”点击新建,新建如图系统变量后一路点总共三次确定结束(变量值可以自己选文件夹,变量名务必保持一致)

3.2.2 Ollama模型的下载安装

1、选择自己系统的版本,下载安装就可以。

2、Models的下载安装

(1)点击Ollama官网首页右上角的“Models”

(2)进入如下Ollama模型库,选择自己要下载的模型(最新的有Deepseek R1)

(3)复制运行模型的指令

(4)win+R输入cmd打开终端,运行刚刚复制的指令,Ollama开始下载模型(如果模型已下载就会直接运行模型),最终下载(运行)完成后即可开始问答,Ollama的下载安装就此完成。

3.3  安装RAGFlow

3.3.1  下载 git (  Git )为了克隆github代码使用
3.3.2  安装 RagFlow(https://github.com/infiniflow/ragflow/ )
git clone https://github.com/infiniflow/ragflow.git

1.如果没有装git,可以直接到https://github.com/infiniflow/ragflow, 把代码下载下来,解压到一个固态硬盘的文件夹内(读取速度快)。

git clone https://github.com/infiniflow/ragflow.git

如下拉取成功截图

运行

cd ragflow/docker
docker compose -f docker-compose.yml up -d12
注意:
1.这里需要启动本地docker desktop 应用,不然无法执行
2.镜像文件大约10GB,下载过程可能需要一些时间,请耐心等待。
3、确认服务器状态
docker logs -f ragflow-server

有类似下图输出并且无报错即可

此时docker中也可以看到容器正常运行起来了

在这里插入图片描述
在浏览器网址栏输入localhost/knowledge 即可访问RAGFlow开始使用或者点击

进入浏览器,注册。

3.4 RAGFLOW配置 Ollama 连接大模型

3.4.1 打开浏览器输入

http://localhost/knowledge 

界面如下图所示

注册登录账号

登录后界面,选择配置模型

添加模型

我的基础URL

http://host.docker.internal:114341

注意:模型名称对应填好,不知道的使用命令查看一下复制过来,WIN+R 输入CMD

ollama list

————————————————————————————————

关于基础URL的几点说明:

(1)Ollama和RAGFlow在同一台机器上运行,基本URL:

http://host.docker.internal:11434

(2)Ollama和RAGFlow在同一台机器上运行,并且Ollama或者RAGFLOW在Docker中,基本URL:

http://host.docker.internal:11434

(3)Ollama在与RAGFlow不同的机器上运行,基本URL:

http://<IP_OF_OLLAMA_MACHINE>:11434

注意:大家根据自己的实际情况填写基础URL

————————————————————————————————

成功连接截图

四、创建知识库

接下来我们就可以创建知识库了

接下来就是上传你的文件了,也比较简单。

文件上传并处理完成后,可以通过检索测试看一下文件有没有被正确检索。

至此,如果你上传完成全部的文件,知识库就算创建完毕了。

五、 聊天

接着就到了展示成果的时候了,我们可以根据自己的知识库与模型进行自然语言交互了。

首先注意,在聊天配置中要把 token 设置的大一些,不然回复的内容会很少!我这里把它拉到最大值了。

展示一下成果:

问题集:

1.可能会遇到下载Docker镜像失败的问题

网上收集到了能用的镜像源如下(不知道以后会不会被封):

{
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://dockerhub.azk8s.cn",
"https://mirror.ccs.tencentyun.com",
"https://registry.cn-hangzhou.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.m.daocloud.io",
"https://noohub.ru",
"https://huecker.io",
"https://dockerhub.timeweb.cloud"
]
}

‍部分镜像源说明:

  • Docker 官方镜像(中国区):https://registry.docker-cn.com
  • 网易云:http://hub-mirror.c.163.com
  • Azure 中国:https://dockerhub.azk8s.cn
  • 腾讯云公共镜像: https://mirror.ccs.tencentyun.com
  • 阿里云公共镜像: https://registry.cn-hangzhou.aliyuncs.com
  • 百度镜像:https://mirror.baidubce.com
  • 七牛云:https://reg-mirror.qiniu.com

 后面会在慢慢整理使用的问题汇总到这里。

Logo

尧米是由西云算力与CSDN联合运营的AI算力和模型开源社区品牌,为基于DaModel智算平台的AI应用企业和泛AI开发者提供技术交流与成果转化平台。

更多推荐