DeepSeek+RAGFlow本地部署个人知识库完整教程

手把手教你用Ollama+RAGFlow在本地搭建隐私安全的DeepSeek私有知识库。
本文系统介绍了如何在个人电脑上部署本地大模型与RAG知识库的完整方案。文章首先阐明了本地部署相较网页版的两大核心优势:数据隐私保护和个性化知识库构建。随后从原理层面区分了RAG(开卷检索增强)与模型微调的差异,解释了Embedding模型如何将文本转化为向量以支撑语义检索。实操部分分三步展开:通过Ollama拉取DeepSeek模型并配置关键环境变量,用Docker一键部署RAGFlow完整版(含内置Embedding模型),最后在RAGFlow中上传文档、解析建库并发起对话。文章还提供了一条简化路径:跳过本地模型部署、直接接入在线API,以隐私换便捷。
本地大模型加RAG知识库的组合,正在成为个人和企业管理私有资料的主流方案。本文基于一份完整的实操教程,梳理如何在自己的电脑上通过 Ollama 部署 DeepSeek 模型,并借助 RAGFlow 构建可持续维护的个人知识库,让 AI 基于你的私有资料生成精准回答。
为什么需要本地部署加RAG
网页版的 DeepSeek 已经足够好用,那为什么还要折腾本地部署?核心在于两个网页版无法满足的需求:绝对的隐私保护和个性化知识库的构建。
设想一个场景:你希望大模型根据企业的规章制度回答问题,或者根据十几份往年期末试卷预测今年的考卷。直接问网页版模型,它对你的私有资料一无所知,只会基于预训练参数胡编乱造。传统做法是上传附件,但这会带来三个问题:数据全部上传到服务器无法保证隐私;文件上传数量存在限制,构建包含几百份文档的知识库时模型无力支持;每次新建对话都要重新上传附件,增删改都很繁琐。

解决思路很清晰:隐私问题通过本地部署 DeepSeek 大模型解决,请求不再发到别人的机器;个性化知识库则通过 RAG 技术实现。
RAG技术与模型微调的区别
RAG 和模型微调都是为了解决大模型的幻觉问题——模型在回答不知道的问题时会胡说八道。
两者路径不同。微调是指在预训练模型上结合特定任务数据进一步训练,让模型在某个领域表现更好;RAG 则是在生成回答之前,通过信息检索从外部知识库查找相关内容,增强生成过程的信息来源。
教程给了一个很形象的比喻:微调是考前复习,模型通过训练吸收知识后再回复你;RAG 是开卷考试,边考边抄,看到问题就疯狂翻你的知识库。 微调虽然能解决幻觉,但本地部署并微调一个大模型对个人和企业成本极高,退而求其次微调小模型效果又不好。实践证明,本地部署一个蒸馏后的模型加上 RAG 技术进行针对性检索生成,是性价比出色的方案。
RAG 的全称是 Retrieval-Augmented Generation(检索增强生成),由 Meta AI Research 在 2020 年提出。其核心思想是将"检索系统"与"生成模型"解耦:生成模型不需要把所有知识都压缩进参数里,只需要具备理解和组织语言的能力,而具体的事实性知识则在运行时动态从外部数据库中取得。这种架构带来一个关键优势——知识库可以随时更新,无需重新训练模型。对比之下,微调一次动辄需要数小时到数天的 GPU 计算,且每次更新知识都需要重新微调。RAG 的局限性在于检索质量高度依赖 Embedding 模型的精度,以及知识库中文档的覆盖度;如果知识库里没有相关内容,或检索召回的片段不准确,最终回答质量也会下降。
Embedding模型的作用
RAG 中的 Retrieval(检索)步骤是理解 Embedding 的关键。检索需要一个可供搜索的外部知识库,而上传的 PDF、Word 文件必须先经过解析。
Embedding 的作用就是将文本转换为向量表示。自然语言不利于机器直接计算相似度——机器并不知道"皮卡丘"和"比卡超"相关度高、和"深度学习"相关度低。Embedding 模型把自然语言转换成高维向量,相近语义的词被映射到相近的向量空间,从而捕捉语义关系。
可以把这个过程理解为给知识库中每个文段生成一个独一无二的"指纹"。用户提问同样会被 Embedding 成指纹,RAG 系统拿着这个指纹去知识库中匹配(通常用余弦相似度度量),找到相似文段后与用户输入结合,扩展上下文再喂给对话模型 DeepSeek。
这也解释了为什么网页版模型聊天免费、上传文件却要付费——文件解析、Embedding 处理、图表抽取都需要额外算力和存储空间。本地部署的 RAGFlow 和自带的 Embedding 模型,就是在自己电脑上完成这些工作。
值得区分的是两种模型类型:Chat 模型(如 DeepSeek、ChatGPT、通义千问)用来对话,Embedding 模型专门负责解析文件、转换向量。在 RAGFlow 配置中,这两种模型都需要单独设置。
向量相似度搜索背后有一套专门的技术体系。文档被切成若干文本块(Chunk)后,每个文本块经过 Embedding 模型转换成几百到几千维的浮点数向量,并存入向量数据库(如 ChromaDB、Milvus、Faiss)。用户提问时,问题同样被转换为向量,系统在向量数据库中计算该向量与所有文本块向量之间的余弦相似度,取出 Top-K 个最相关片段。这些片段被拼接进提示词(Prompt)里,连同原始问题一起送给 Chat 模型。整个过程的速度通常在毫秒到秒级,对用户几乎透明。文本块的切分策略(Chunk Size)对检索效果影响很大:切得太小会丢失上下文,切得太大会引入噪声,RAGFlow 提供的不同解析方法(General、Books、Papers 等)本质上就是针对不同文档类型优化了切分和提取策略。
本地部署完整流程
整个部署分三步:用 Ollama 拉取 DeepSeek 模型、用 Docker 部署 RAGFlow、在 RAGFlow 中构建知识库。

第一步:Ollama部署DeepSeek
Ollama 是一个本地运行和管理大语言模型的工具,直接访问 ollama.com/download 下载即可。安装后有一个极易被忽略却非常重要的步骤——配置环境变量。
第一个环境变量必须配置:新建变量名 OLLAMA_HOST,值为 0.0.0.0:11434。默认情况下 Ollama 只监听 localhost,虚拟机里的 RAGFlow 无法访问,配置后 Ollama 才会监听所有 IP。如果配置后虚拟机仍无法访问,可能是本机防火墙拦截了 11434 端口,需要放行。
第二个环境变量建议配置:修改模型下载的默认位置,因为模型动辄几十 GB。教程作者分享了一个教训——改完配置下载了一小时模型,第二天重启后模型列表为空,最后才发现自定义位置需要重启电脑后才生效。所以配置完两个环境变量务必重启。
重启后在命令行执行模型下载命令。教程推荐从 DeepSeek-R1 1.5B 起步,完整原始模型达到 671B、404GB,个人电脑根本带不动。有外接 GPU 的话可以试试 14B、32B,据说 32B 已能达到非常好的效果。模型能正常回复消息,就说明部署成功。
第二步:Docker部署RAGFlow
先从 GitHub 下载 RAGFlow 源代码(可直接 Download ZIP 解压),再下载 Docker。

Docker 的作用是提供封装好的运行环境。RAGFlow 需要 ChromaDB、MySQL、Redis 等数据库支持,手动配置极其复杂,而 Docker 镜像相当于在你电脑里装了一台小电脑,把所有依赖和配置都打包好了。
关键配置:进入源代码的 docker 文件夹,找到环境文件,在大约 84 行位置把轻量版注释掉、取消完整版的注释。轻量版不含 Embedding 模型,完整版自带 Embedding,可以直接使用,省去额外部署的麻烦。
修改保存后,在 RAGFlow 文件夹打开命令行运行启动命令,Docker 会自动拉取镜像并启动服务。成功后在浏览器访问 localhost:80(默认 80 端口),看到页面即表示部署成功,注册账户登录即可。
Docker 的核心概念是"容器化":将应用及其所有依赖(运行时、库、配置文件)打包成一个标准镜像(Image),在任何安装了 Docker 引擎的机器上都能以完全一致的方式运行,避免了"在我电脑上能跑"的经典问题。对于 RAGFlow 这类依赖链复杂的应用,Docker Compose 会读取一份 docker-compose.yml 配置文件,自动拉取并编排 RAGFlow 主服务、MySQL、Redis、ChromaDB 等多个容器,使它们组成一个内部可互通的网络。首次运行时 Docker 需要从网络拉取镜像,RAGFlow 完整版镜像体积较大(约 9GB),在网络较慢时耗时可能超过半小时,这期间命令行无明显进度提示,属正常现象,耐心等待即可。
第三步:构建知识库并问答

首先在模型提供商页面添加本地 DeepSeek。注意模型类型选 chat,模型名称要严格复制(用 ollama list 查看完整名称)。基础 URL 用 http 协议加本机 IP(通过 ipconfig 查 IPv4 地址)加端口 11434。本地部署无需 API key。
在系统模型设置中,聊天模型选刚添加的 DeepSeek,嵌入模型选完整版自带的中文 Embedding 模型(性能优于 Small 版本)。
接着创建知识库,语言选中文,解析方法一般选 General 即可(另有针对书籍、论文、简历的专门解析方法)。上传文件后务必点击解析——不解析大模型无法理解自然语言,解析会耗费一定时间。
最后新建助理,绑定知识库。提示引擎有个细节:默认设置下若知识库没有相关内容,模型会回答"不知道";如果希望模型基于自身能力生成回答,需要修改提示词。配置完成后即可对话,回答会明确标注引用来源。
不想本地部署的简化方案
如果你只想快速搭建知识库、不介意隐私损失,可以跳过第一步,直接部署 RAGFlow(目前 RAGFlow 还没有官方网页版,必须自己跑起来),然后在模型提供商中配置任意在线模型。
添加在线模型只需填写 API key,这个 key 是服务方标识调用者、控制频率和计费的凭证,需要在对应平台(如通义千问、DeepSeek)申请。
两种方案各有取舍。在线模型更简单、性能更强——本地部署的模型参数量无法与云端媲美。但在线方案有两个缺陷:无法保证数据绝对隐私,为机密程度高的企业文档搭建知识库时绝不能用;免费 API 额度用着用着往往开始收费。
无论哪种方式,核心价值都是构建一个长期有效的个人知识库,让 AI 基于你的私有资料生成回答,这在很多实际场景中都非常实用。
相关推荐

一个月为M4 Mac Mini开发Linux GPU驱动的技术挑战
开发者Cody Ho用一个月时间为M4 Mac Mini构建Linux GPU驱动,本文解析Apple Silicon GPU逆向工程的核心难点、开源社区协作价值及其对Linux硬件生态的意义。

SEO Page Builder Enhanced:让AI生成的SEO内容摆脱套路味
开发者基于octelens原版seo-page-builder打造的增强版开源工具,通过引入编辑审校、一手经验、事实与时效校验及写作风格护栏,专门解决AI生成SEO内容套路化、缺乏原创洞见的问题。

分层RAG架构研究求助:独立开发者如何叩开学术研究之门
一位独立开发者在Reddit求助信息检索领域教授,指导其分层RAG架构研究。本文剖析异构文档检索的技术背景,探讨独立AI研究者面临的学术门槛困境,并给出公开成果、社区协作等实用建议。