DeepSeek R1打造本地化RAG知识库

本文将详细介绍如何使用OllamaDeepseek R1大语音模型Nomic-Embed-Text向量模型AnythingLLM共同搭建一个本地的私有RAG知识库。

一. 准备工作

什么是RAG?

RAG是一种结合了信息检索和大模型(LLM)的技术,在对抗大模型幻觉、高效管理用户本地文件以及数据安全保护等方面具有独到的优势。

图片


主要包括:

  • 索引:将文档库分割成较短的 Chunk,并通过编码器构建向量索引。

  • 检索:根据问题和 chunks 的相似度检索相关文档片段。

  • 生成:以检索到的上下文为条件,生成问题的回答。

在开始之前,确保我们需要使用的工具和库:

  • Ollama

  • Deepseek R1 LLM模型

  • Nomic-Embed-Text向量模型

  • AnythingLLM

二. 安装 Ollama

Ollama 是一个用于本地运行大型语言模型的工具。

可以通过以下步骤安装 Ollama:

2.1 下载 Ollama

  • 访问 Ollama 的 https://ollama.com/官方网站,下载适合你操作系统的安装包。

图片

2.2 安装 Ollama

图片

2.3 验证安装

  • 打开终端或命令提示符,输入 ollama --version,确保安装成功。

图片

2.4 Ollama常用命令

图片

三. 配置 DeepSeek R1 模型

3.1 下载 DeepSeek R1 模型

  • 从 Ollama的官方网站下载 DeepSeek R1 模型文件。
1ollama run deepseek-r1:7b

3.2 启动模型

  • 启动和下载模型是同一个命令,如果没有下载过的新模型会直接下载,以及下载过的则直接启动。
1ollama run deepseek-r1:7b

四. 配置 Nomic-Embed-Text 模型

4.1 下载 Nomic-Embed-Text 模型

  • 从 Ollama的官方网站下载 nomic-embed-text 模型文件。
1ollama pull nomic-embed-text

4.2 模型下载完成

图片

五. 安装AnythingLLM

AnythingLLM 是一个功能强大且灵活的开源平台,旨在帮助用户轻松构建和部署基于大型语言模型 (LLM) 的私有化应用程序。

图片


它提供了直观的用户界面、丰富的功能以及高度的可定制性,即使是没有任何编程经验的用户也能快速上手:

  1. https://anythingllm.com/desktop,登录官网。

  2. 下载对应的版本

图片

  1. 打开anythingllm。

图片

六. 搭建RAG本地知识库

现在已经安装并配置好了Ollama、Deepseek R1、Nomic-Embed-Text和AnythingLLM,接下来我们将它们结合起来搭建一个本地的私有RAG知识库。

6.1 数据准备

首先,你需要准备一个知识库数据集。这个数据集可以是一个包含大量文档的目录,也可以是一个预处理的JSON文件。确保每个文档都有一个唯一的ID和文本内容。

我们准备一个Deepseek Janus pro的介绍文档。

图片

6.2 构建索引

使用Nomic-Embed-Text将知识库中的文档转换为向量表示,并构建一个索引:

图片

6.3 检索相关信息

使用Deepseek R1和检索本地向量数据库:

图片

七. 总结

通过本文的介绍,你已经学会了如何搭建一个本地的私有RAG知识库。这个知识库可以帮助你高效地管理和利用知识,同时增强大模型专业应用方向的能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/17949.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka分区管理大师指南:扩容、均衡、迁移与限流全解析

#作者:孙德新 文章目录 分区分配操作(kafka-reassign-partitions.sh)1.1 分区扩容、数据均衡、迁移(kafka-reassign-partitions.sh)1.2、修改topic分区partition的副本数(扩缩容副本)1.3、Partition Reassign场景限流1.4、节点内副本移动到不…

使用右侧值现象来处理一个word导入登记表的需求

需求也简单,导word文件用户登记表,有各部门的十几个版本(为什么这么多?不知道)。这里说下谈下我的一些代码做法: 需求分析: 如果能解决java字段和各项填的值怎么配对的问题,那么就…

【C语言 】C语言 桌游开发数字竞拍(源码)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 【C语言 】C语言 桌游开发数字竞拍(源码…

数据结构——红黑树的实现

目录 1 红黑树的概念 1.1 红黑树的规则 1.2 红黑树是如何确保最长路径不超过最短路径的2倍的? 1.3 红黑树的效率 2 红黑树的实现 2.1 红黑树的结构 2.2 红黑树的插入 2.2.1 红黑树插入节点的大概过程 2.2.2 情况1:只变色,不旋转 2.2.3 情况…

Spring Boot中使用Flyway进行数据库迁移

文章目录 概要Spring Boot 集成 FlywayFlyway 其他用法bug错误Flyway版本不兼容数据库存在表了Flyway 的校验和(Checksum)不匹配 概要 在 Spring Boot 项目开发中,数据库的变更不可避免。手动执行 SQL 脚本不仅容易出错,也难以维…

多态、虚函数、动态绑定、虚指针加虚表是同一件事情。

编译会自动加红色代码 左边拥有右边。由内而外构造、由外到内进行析构。 虚指针跟虚表。当一个类有虚函数的时候,对象里面就会多一个指针。从内存角度思考继承。 静态绑定。现在如果通过指针去调用虚函数,编译器就不会进行静态绑定,而做动态绑…

深入了解Text2SQL开源项目(Chat2DB、SQL Chat 、Wren AI 、Vanna)

深入了解Text2SQL开源项目(Chat2DB、SQL Chat 、Wren AI 、Vanna) 前言1.Chat2DB2.SQL Chat3.Wren AI4.Vanna 前言 在数据驱动决策的时代,将自然语言查询转化为结构化查询语言(SQL)的能力变得日益重要。无论是小型创业…

Qwen2-VL 的重大省级,Qwen 发布新旗舰视觉语言模型 Qwen2.5-VL

Qwen2.5-VL 是 Qwen 的新旗舰视觉语言模型,也是上一代 Qwen2-VL 的重大飞跃。 Qwen2.5-VL主要特点 视觉理解事物:Qwen2.5-VL不仅能够熟练识别花、鸟、鱼、昆虫等常见物体,而且还能够分析图像中的文本、图表、图标、图形和布局。 代理性&…

2. grafana插件安装并接入zabbix

一、在线安装 如果不指定安装位置,则默认安装位置为/var/lib/grafana/plugins 插件安装完成之后需要重启grafana 命令在上一篇讲到过 //查看相关帮助 [rootlocalhost ~]# grafana-cli plugins --help //从列举中的插件过滤zabbix插件 [rootlocalhost ~]# grafana…

【Linux】Ubuntu Linux 系统——Node.js 开发环境

ℹ️大家好,我是练小杰,今天星期五了,同时也是2025年的情人节,今晚又是一个人的举个爪子!! 🙂 本文是有关Linux 操作系统中 Node.js 开发环境基础知识,后续我将添加更多相关知识噢&a…

DeepSeek全方位解读:模型介绍,优势及应用场景

DeepSeek全方位解读:领先科技背后的革新力量 前言1.DeepSeek整体介绍2.DeepSeek-R13.DeepSeek-V34.DeepSeek系列模型之间的关系5.Deepseek优势及应用场景6.模型参数与量化精度的关系7.行业部署Deepseek及应用情况 前言 在当今快速发展的科技世界里,人工…

电脑端调用摄像头拍照:从基础到实现

文章目录 1. 了解navigator.mediaDevices.getUserMedia API2. 创建 HTML 结构3. 编写 JavaScript 代码3.1 打开摄像头3.2 拍照 4. 完整代码5. 测试6. 注意事项及部署 在现代 Web 开发中,调用摄像头进行拍照是一个常见的功能,尤其是在需要用户上传头像、进…

windows平台上 oracle简单操作手册

一 环境描述 Oracle 11g单机环境 二 基本操作 2.1 数据库的启动与停止 启动: C:\Users\Administrator>sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on 星期五 7月 31 12:19:51 2020 Copyright (c) 1982, 2013, Oracle. All rights reserved. 连接到:…

Java面试——Tomcat

优质博文:IT_BLOG_CN 一、Tomcat 顶层架构 Tomcat中最顶层的容器是Server,代表着整个服务器,从上图中可以看出,一个Server可以包含至少一个Service,用于具体提供服务。Service主要包含两个部分:Connector和…

3. 导入官方dashboard

官方dashboard:https://grafana.com/grafana/dashboards 1. 点击仪表板 - 新建 - 导入 注:有网络的情况想可以使用ID,无网络情况下使用仪表板josn文件 2. 在官方dashboard网页上选择符合你现在数据源的dashboard - 点击进入 3. 下拉网页选…

你如何利用SIMD(如SSE/AVX)优化图像处理的性能?

SIMD优化问题 1. SIMD 在图像处理中的优化方式2. 典型应用场景3. SIMD 的常见优化技巧4. 总结 利用 SIMD(Single Instruction, Multiple Data) 指令集(如 SSE/AVX/AVX2/AVX-512)优化图像处理的性能,可以极大地提升计算…

高并发场景下,如何用无锁实现高性能LRU缓存?

《百万人高并发场景下,我如何用无锁实现高性能LRU缓存?》 LRU算法核心原理 LRU(Least Recently Used)算法是缓存系统的核心淘汰策略,其核心逻辑可以用一张流程图描述: (图:访问数…

HAL库框架学习总结

概述:HAL库为各种外设基本都配了三套 API,查询,中断和 DMA。 一、HAL库为外设初始化提供了一套框架,这里以串口为例进行说明,调用函数 HAL_UART_Init初始化串口,此函数就会调用 HAL_UART_MspInit&#xff0…

LAWS是典型的人机环境系统

致命性自主武器系统(Lethal Autonomous Weapons Systems,LAWS)是一种典型的人机环境系统,它通过高度集成的传感器、算法和武器平台,在复杂的战场环境中自主执行任务。LAWS能够自主感知环境、识别目标、做出决策并实施攻…

【16届蓝桥杯寒假刷题营】第1期DAY4

4.可达岛屿的个数 - 蓝桥云课 题目背景 在一个神奇的魔法世界中,有一座古老的迷幻之城。迷幻之城被分成 n 个鸟屿,编号从 1 到 n,共有 m 座桥。迷幻之城的居民们希望能够建立起紧密的联系,每个岛屿上的居民都想知道自己最多能到…