当前位置: 首页 > news >正文

RAGFlow 本地知识库 环境配置

目录

  • 需求
  • ollama
    • ollama配置
    • ollama模型运行
  • RAGFlow的配置
    • docker安装
    • RAGFlow
    • RAGFlow知识库搭建
  • 平台模型api
  • 后话

需求

常用的大模型对于特定知识的问答需要提前录入数据,想试着本地搭建一套rag知识库,用于一些条例或者规则的查询回馈。目前尝试是使用RAGFlow搭一个本地的知识库,然后配合本地的语言模型或者在线大模型api来运行。
当然RAG的原理是将知识和问题都进行向量化,然后做匹配,最终结果再给大语言模型做汇总。所以其中的知识数据输入源、向量化模型、问题检索的排序模型等都会对提问结果效果差生不同程度的影响,这些也是后续优化需要去调整的。

ollama

假如想在本地跑跑ds这些模型,可以配置个ollama来运行模型,可选的替代很多xinference这些都可以。如果直接使用各大平台api的略过就ok了。

ollama配置

ollama官网
官网直接下载安装,安装完成后配置下两个环境变量就ok了,一个是OLLAMA_HOST,因为后续ragflow在docker里跑,需要让ollama监听所有的ip;一个是ollama的模型下载位置OLLAMA_MODELS,默认是在c盘。

OLLAMA_HOST:0.0.0.0
OLLAMA_MODELS:J:\ai\Ollama\model

ollama模型运行

ollama配置完成之后,直接在网站搜索对应需要的模型,复制运行指令到命令行就ok了,会自动下载完模型运行。
在这里插入图片描述
在这里插入图片描述

RAGFlow的配置

docker安装

跑RAGFlow的虚拟环境,一样也是官网安装就行了。安装完命令行跑下docker看看有没有信息就ok
docker

RAGFlow

配置也是很简单直接git文档说明照做就ok。
RAGFlow
基本就下面的图流程,拉代码,docker执行。需要注意的是,默认安装是轻量版,所以用到自带的embedding模型的话,还是需要改一下docker/.env 文件;然后使用GPU也记得区分一下对应指令。
拉镜像这部分需要可能比较长时间,可以加国内下载源。但我建议还是直接vpn方便快捷一些。
在这里插入图片描述
跑完没问题服务就启动了。打开网站注册登录就正常使用了,默认80端口,以后可以直接在docker里开关容器就行。
http://127.0.0.1/

RAGFlow知识库搭建

在这里插入图片描述
网站右上角设置里面,找到模型提供商,添加对应的ollama模型。模型名称按照ollama list的正确填写就行,ollama默认运行端口是11434。
在这里插入图片描述
添加成功之后,在模型设置里,选择需要的模型对象。聊天模型就是我们刚装的deepseek用于问答,嵌入模型选择内嵌的向量模型,之后的暂时用不到可以不管。例如img2txt是用于例如pdf等图片转文字的可以先不管,rerank则是用于答案向量检索的重排序优化等。
在这里插入图片描述
后续就可以在知识库页面建立自己的知识库了,填下关键的信息,其他的可以自己后面再去摸索研究。然后建立之后,往里面添加文本,关键记得解析文件,以解析的文件才能检索得到。
在这里插入图片描述
再往后就是在“聊天”界面构建新的聊天对象,记得选择对应的知识库,就可以进行对应的简单问答了。
在这里插入图片描述
还有很多功能和参数,就慢慢自己再去看了。

平台模型api

上面试着本地添加了ollama的模型,实际上使用时,如果需要用本地跑不了的模型,或者一些不想本地跑的,都可以直接到对应平台申请相应的api key,再到RAGFlow的模型提供商里面进行添加就ok。看说明一般都比间简单,照着添加有问题搜搜都能解决。

后话

实际上整个RAGFlow跑起来之后,对于一些复杂一些的知识库和问答,效果其实还是比较一般。需要进一步去调整对应的各阶段的解析模型,以及各种参数的调节等等。这些就是需要后续区别化去慢慢优化的地方了,这里纯当记录就不细说了。

相关文章:

  • java开发环境搭建
  • 关于weaviate的关键词和向量搜索优劣
  • react实现鼠标悬停在SVG地图上某个区域时,其上方呈现柱形图
  • docker部署jenkins并成功自动化部署微服务
  • Linux: network :创建raw socket的时候
  • [GN] sigrokdecode 模块
  • 【Java面试系列】Spring Boot中自动配置原理与自定义Starter开发实践详解 - 3-5年Java开发必备知识
  • Python第七章10:异常、模块、包的综合案例
  • 【组件封装-优化】vue+element plus:二次封装select组件,实现下拉列表有分页、自定义是否可搜索的一系列功能
  • Apache Airflow开源程序是一个以编程方式编写、计划和监控工作流程的平台
  • 苹果内购支付 Java 接口
  • 蓝桥杯:日期统计
  • 基于STM32、HAL库的CH224K 快充协议芯片简介及驱动程序设计
  • AI平台如何实现推理?数算岛是一个开源的AI平台(主要用于管理和调度分布式AI训练和推理任务。)
  • 【Java设计模式】第7章 建造者模式讲解
  • class与构造函数
  • Podman配置
  • AI在未来会不会代替人工???
  • Redis中AOF的实现方式和AOF重写
  • 运动规划实战案例 | 基于可视图的路径规划算法(附ROS C++/Python仿真)
  • 西安建设网站排名/广州google推广
  • 可以做初中地理题的网站/邵阳seo排名
  • app设计模板网站/三亚网络推广
  • 网址站/重庆网站优化
  • 大型网站开发用的技术/搜狗搜索引擎优化指南
  • 网站建设方案评审/seo优化快排