【大模型工具使用学习】RAGFlow构建个人知识库

Get started | RAGFlow

学习视频:

※ 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

【RAGFlow】“提示 : 102 Fail to access model(qwen2.5:14b).**ERROR**: [Errno 111] Connection refused” 的解决_服务器_LegendNoTitle-ModelScope魔搭社区

首先确认ollama可以正常访问

问题应该是出在我一开始没有配置环境变量路径:

过程:

添加到文件的最后一行

保存

退出:按下回车键

退出Ollama:右下角Ollama→quit

然后重新打开。

还是不行

输入:echo $OLLAMA_HOST 无法正确输出

调整了半天,最后解决办法是重新加载~/.zshrc 文件:

source ~/.zshrc

还是报错102 无法找到模型

先找到我mac里面ollama下载的模型位置

啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊解决了!!!!!!!!

RAGFlow】“提示 : 102 Fail to access model(deepseek-r1).**ERROR**: [Errno 111] Connection refused” 的解决_fail to access model(deepseek-r1:1.5b).**error**: -优快云博客

先这样吧 累了 

构建知识库

使用视觉模型进行 PDF 布局分析,以更好地识别文档结构,找到标题、文本块、图像和表格的位置。如果选择Naive 选项,则只能获取 PDF 的纯文本。请注意该功能只适用于 PDF 文档,对其他文档不生效。

### 使用Ollama和RAGFlow创建本地知识库 #### 准备工作 为了成功部署并运行基于Ollama与RAGFlow知识库,在开始之前需确认已安装必要的软件环境以及获取相应的资源文件。这通常涉及到配置Python开发环境、安装依赖包以及其他预备条件[^1]。 #### 部署Ollama模型 对于Ollama模型而言,其部署过程主要围绕着准备训练好的DeepSeek-R1模型权重文件及其配套脚本展开。具体操作包括但不限于下载官方发布的预训练模型版本至本地服务器上;调整参数设置以适应特定应用场景需求;编写启动命令来加载模型实例以便后续调用接口访问等功能实现。 ```bash # 下载 DeepSeek-R1 模型到指定目录下 wget https://example.com/path/to/deepseek-r1-model.tar.gz -P /path/to/models/ tar zxvf /path/to/models/deepseek-r1-model.tar.gz -C /path/to/models/ # 安装 Python 库和其他依赖项 pip install torch transformers datasets ragflow ollama-sdk # 启动 Ollama API 服务 ollama serve --model-path=/path/to/models/DeepSeek-R1 ``` #### 构建RAGFlow索引数据库 针对RAGFlow部分,则侧重于建立高效的检索机制——即文档向量化处理流程加上倒排列表结构优化方案的设计实施。此环节要求收集目标领域内的高质量语料作为输入源材料,并利用自然语言处理技术对其进行清洗标注转换等一系列前期准备工作之后再导入系统内部形成可供查询使用的索引表单。 ```python from ragflow import RagIndexBuilder, DocumentLoader loader = DocumentLoader() documents = loader.load_from_directory("/path/to/corpus") builder = RagIndexBuilder(index_path="/path/to/index") for doc in documents: builder.add_document(doc) builder.build_index() ``` #### 整合两套系统的交互逻辑 最后一步就是定义好两者之间沟通协作的方式方法论了。这里可以考虑采用RESTful风格API设计模式或者gRPC远程过程调用来达成目的。当用户提交一个问题请求给前端界面时,后台会先经过初步解析判断属于哪一类问题类别进而决定转发给哪个组件负责解答;而无论是哪一个模块产生的最终回复都会统一由网关层返回给客户端展示出来完成整个问答闭环体验。 ```json { "apiVersion": "v1", "paths": { "/query": { "post": { "summary": "Submit a query to the knowledge base.", "operationId": "submitQuery", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryRequest" } } } }, "responses": { "200": { "description": "Successful response with answer." } } } } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值