学习视频:
※ Deepseek+RAGFlow本地构建个人知识库全流程(小红书)
※【保姆级教程】DeepSeek + RAGFlow 十分钟构建本地知识库系统_bilibili
另一个图文版:简话 RAG 本地部署(DeepSeek + RAGFlow)
内容概览:
1.为什么不直接使用网页版DeepSeek?
2.如何实现网页版Deepseek不能实现的需求?
3.目标效果预览
4.为什么要使用RAG技术? RAG和模型微调的区别?5.什么是Embedding?为什么需要“Embedding模型'
6.本地部署全流程
7.只想迅速搭建个人知识库,可以不本地部署吗?
网页版是基于对话的,所以要上传附件或者基于对话框提供领域知识(上传文件有限制、繁琐且操作有限);隐私无法保障;
三、目标效果预览
why?:模型在回答不知道的问题的时候,会乱编(微调和RAG都要解决这个问题)
微调(考前复习):将知识库作为模型train数据集,训练好的模型用于回答领域问题;缺点是本地部署和微调一个大模型的成本非常高,如果微调小一点的,效果不佳。
RAG(开卷考试 ):在生成回答之前,通过信息检索从外部知识库中査找与问题相关的知识,增强生成过程中的信息来源,从而提升生成的质量和准确性(考试带小抄)。
=>本地部署蒸馏后的大模型+RAG技术针对性检索生成
RAG=Retrieval检索+Augmantation增强+Generation生成
大模型分类:chat模型(对话)、embedding(解析,将文本转为高维向量)
本地部署全流程
1.借助ollama,下载大模型
过程记录:下载ollama:之前 部署 DeepSeek 本地模型 下载过了,复习一下
配置变量路径+重启电脑(mac我直接采用默认的了 没有改):
OLLANA_HOST 0.0.0.0:11434
OLLAMA_MODELS 设置下载模型存放的位置
查看可用的模型列表:ollama list 令模型的名称为NAME_X 下载模型:ollama pull NAME_X 运行模型:ollama run NAME_X
2.下载RAGFlow源码,通过docker本地部署RAGFlow
下载github-RAGFlow:https://github.com/infiniflow/ragflow
下载Docker:因为上面的源码并不包含RAGFlow的运行环境和依赖;Docker的镜像是很好的封装环境,包含它运行所需要的所有环境配置。(下载最新4.38.0要求macOS 12.0版本)去找了历史版的网址:Release notes | Docker Docs(要4.24.0 看到版本但没找到下载扣)
好心博主:Docker desktop for mac 历史版本下载大全os10.15/11/12-优快云博客
我、big sur、11.7.10、intel支持版本v4.24.2:链接 提取码: s4vj
(看到这里 小红书视频无了orz 拖延症患者活该!去B站找)
下载并逐步操作,在terminal运行 docker后显示详细信息
Docker配置(默认下载轻量版,无embedding模型还要本地部署):/ragflow-main/docker/.env
进入docker目录:
cd /Users/apple/Documents/0_Project/ragflow-main/docker
运行命令:
docker compose -f docker-compose.yml up -d
有报错/解决过程记录:
Mac本地部署deepseek➕RAGflow知识库搭建流程分享(附问题解决方法)
简话 RAG 本地部署(DeepSeek + RAGFlow)_rag部署-优快云博客
原内容:
{ "builder": { "gc": { "defaultKeepStorage": "20GB", "enabled": true } }, "experimental": false }
更新为内容1(点击apply之后一直加载转圈):
{ "builder": { "gc": {"defaultKeepStorage": "20GB","enabled": true} }, "experimental": false, "http-client-timeout": 60, "registry-mirrors": [ "https://docker.m.daocloud.io/","https://huecker.io/","https://dockerhub.timeweb.cloud","https://noohub.ru/","https://dockerproxy.com", "https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn","https://xx4bwyg2.mirror.aliyuncs.com","http://f1361db2.m.daocloud.io", "https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn"] }
换成更新为内容2(可以apply但是总是意外退出):
{ "builder": { "gc": { "defaultKeepStorage": "20GB", "enabled": true } }, "experimental": false, "registry-mirrors": [ "http://docker.m.daocloud.io/", "http://huecker.io/", "http://dockerhub.timeweb.cloub", "http://noohub.ru/", "http://dockerproxy.com", "http://docker.mirrors.ustc.edu.cn", "http://docker.nju.edu.cn", "http://xx4bwyg2.mirror.aliyuncs.com", "http://f1361db2.m.daocloud.io", "http://registry.docker-cn.com", "http://hub-mirror.c.163.com" ] }
改完总是意外退出:
更新为内容3(可以了 先拉镜像时间有点长|然后启动):
{ "builder": { "gc": { "defaultKeepStorage": "20GB", "enabled": true } }, "experimental": false, "registry-mirrors": [ "https://docker.hpcloud.cloud", "https://docker.m.daocloud.io", "https://docker.unsee.tech", "https://docker.1panel.live", "http://mirrors.ustc.edu.cn", "https://docker.chenby.cn", "http://mirror.azure.cn", "https://dockerpull.org", "https://dockerhub.icu", "https://hub.rat.dev" ] }
拉镜像Pulling-启动
浏览器输入localhost:80,进入主页面则说明RAGFlow部署成功
localhost:80
注册账号
3、构建知识库,创建对话
点击创建知识库=>模型提供商,把本地部署的deepseek模型添加进来
前面五中提到,大模型分chat模型(对话)、embedding模型(解析,将文本转为高维向量)
模型类型:这里deepseek是chat模型
模型名称:在terminal中使用ollama list命令查看准确的模型名称
基础Url:找IPv4地址
terminal下,windows系统:ipconfig macOS系统:ifconfig
en0是WIFI接口,我无inet字段,但是en1和en2中有
netstat -rn | grep default
直接选en1的ip了
新报错:
提示:102 Fail to access model(deepseek-r1:7b).**ERROR**: [Errno 111]Connectionrefused
首先确认ollama可以正常访问
问题应该是出在我一开始没有配置环境变量路径:
过程:
添加到文件的最后一行
保存
退出:按下回车键
退出Ollama:右下角Ollama→quit
然后重新打开。
还是不行
输入:echo $OLLAMA_HOST 无法正确输出
调整了半天,最后解决办法是重新加载
~/.zshrc
文件:source ~/.zshrc
还是报错102 无法找到模型
先找到我mac里面ollama下载的模型位置
啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊解决了!!!!!!!!
先这样吧 累了
构建知识库
使用视觉模型进行 PDF 布局分析,以更好地识别文档结构,找到标题、文本块、图像和表格的位置。如果选择Naive 选项,则只能获取 PDF 的纯文本。请注意该功能只适用于 PDF 文档,对其他文档不生效。