【保姆级教程】Windows系统+ollama+Docker+Anythingllm部署deepseek本地知识库问答大模型,可局域网多用户访问

目录

1.Ollama 本地化部署 DeepSeek R1

1.1下载Ollama

1.2安装Ollama

1.3安装DeepSeek R1大模型

 2.系统环境配置

2.1开启系统功能

2.2安装wsl

3.安装 Docker Desktop并拉取Anythingllm镜像

3.1从 Docker 官网 下载并安装。

3.2拉取镜像

3.3运行 Docker 命令

4.anythingLLM环境配置

5.创建知识库

5.1创建个人知识库

5.2测试知识库


1.Ollama 本地化部署 DeepSeek R1

1.1下载Ollama

访问Ollama官网:Ollama

点击Download,根据你的操作系统(Windows、MacOS 或 Linux)选择对应的安装包进行下载。

1.2安装Ollama

下载完成后,运行安装程序,按照提示完成安装。

Windows:直接安装.exe文件,一步一步安装完毕即可。

Mac:将文件下载后,直接将Ollama程序拉到应有程序文件夹即可。

安装完成后,

打开终端或命令提示符(win键+R键,输入cmd回车),

输入以下命令来检查 Ollama 是否安装成功:

ollama --version

如果显示版本信息,说明安装成功。

1.3安装DeepSeek R1大模型

目前常用版本以及推荐硬件配置

入门级:1.5B版本(4GB内存+核显可运行)

进阶推荐:8B版本(8GB内存+4GB显存)

高性能设备:32B版本(32GB内存+12GB显存)

我选择的是8B版本

在cmd中输入

ollama run deepseek-r1:8b

过程较长,耐心等待即可

成功之后输入ollama list,出现模型信息即可。

ollama list

常用 Ollama 命令 列出本地可用的模型列表:ollama list

​ 启动模型:ollama run model_name

​ 查看模型信息:ollama show model_name

​ 删除指定模型:ollama rm model_name

 2.系统环境配置

2.1开启系统功能

通过控制面板,进入到“程序与功能”→“启用或关闭Windows功能”,下图中红色框框的选择框选中,然后点击确定进行安装。

  

2.2安装wsl

win+R,输入cmd回车,打开命令提示符窗口

在命令提示符中输入

wsl --install

微软官方教程:https://learn.microsoft.com/en-us/windows/wsl/setup/environment

3.安装 Docker Desktop拉取Anythingllm镜像

3.1从 Docker 官网 下载并安装。

Docker官方网址:Docker Desktop: The #1 Containerization Tool for Developers | DockerDocker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.https://www.docker.com/products/docker-desktop/

安装完成之后

3.2拉取镜像

命令提示符中输入

docker pull mintplexlabs/anythingllm

如果使用报错,可以改为国内镜像

改为使用国内镜像

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mintplexlabs/anythingllm:latest

改名

docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mintplexlabs/anythingllm mintplexlabs/anythingllm

拉取完成之后输入docker images,可以看到电脑中存在Anythingllm这个镜像了

  1. 设置 STORAGE_LOCATION 路径

在 CMD 中,你可以使用 set 命令来设置环境变量。假设你希望将 STORAGE_LOCATION 设置为 Windows 的文档目录,可以按以下步骤操作

设置存储目录

set STORAGE_LOCATION=%USERPROFILE%\Documents\anythingllm

 创建存储目录(如果目录不存在):

if not exist "%STORAGE_LOCATION%" mkdir "%STORAGE_LOCATION%"

创建 .env 文件(如果文件不存在):

if not exist "%STORAGE_LOCATION%\.env" echo. > "%STORAGE_LOCATION%\.env"

此时会在电脑文档的文件夹下,存在一个anythingllm文件夹该文件夹下存在一个.env文件,存放一些配置如下所示

.env 文件的作用

.env 文件是用于存储容器配置的环境文件,通常包含敏感信息和应用的配置参数。例如,配置大语言模型(LLM)、API 密钥、数据库连接等。容器运行时,它会读取 .env 文件并使用其中的配置信息。

关键配置项

在 .env 文件中,常见的配置项包括:

SERVER_PORT:指定服务器运行的端口。

JWT_SECRET:用于生成和验证 JWT(JSON Web Token)的密钥。

STORAGE_DIR:指定存储数据的路径。

LLM_PROVIDER:配置大语言模型提供者。

OLLAMA_BASE_PATH:配置 Ollama 服务的基础 URL 地址。

OPEN_AI_KEY:用于访问 OpenAI API 的密钥。

.env 文件中配置的内容会根据你的需求和使用的服务不同而有所变化。

3.3运行 Docker 命令

在 CMD 中,你可以使用单行命令运行 Docker:

docker run -d --name anythingllm --add-host=host.docker.internal:host-gateway --env STORAGE_DIR=/app/server/storage --health-cmd "/bin/bash /usr/local/bin/docker-healthcheck.sh || exit 1" --health-interval 60s --health-start-period 60s --health-timeout 10s -p 3001:3001/tcp --restart=always --user anythingllm -v %STORAGE_LOCATION%:/app/server/storage -v %STORAGE_LOCATION%\.env:/app/server/.env -w /app mintplexlabs/anythingllm

运行之后如下图,会启动一个容器,用一大串字母表示,该字母是Docker 为该容器分配一个唯一的 ID,这个 ID 主要用于在 Docker 系统中管理容器。你可以用这个 ID 来执行不同的 Docker 命令,比如停止容器、查看容器日志、查看容器状态等。

查看当前所有的容器,命令如下:

docker ps

可以看到我们已经成功启动一个容器

这条 Docker 命令启动了一个 AnythingLLM 容器,并通过挂载宿主机的存储目录和 .env 文件,使得容器能够持续存储数据并加载配置。容器以后台运行,并提供 Web 服务,可以通过 http://localhost:3001 访问应用。

4.anythingLLM环境配置

访问 http://localhost:3001 后,进行相关配置,如配置大语言模型(LLM)、向量数据库等。根据需要更新 .env 文件中的配置参数,如 SERVER_PORT、OPEN_AI_KEY 等。

点击左下角扳手,即可进行设置

5.创建知识库

5.1创建个人知识库

进入到AnythingLLM界面

在左侧工作区找到上传按钮,上传你的文档(如 PDF、TXT、Excel 、DOCX(DOC文件不行)等),选中上传的文档,点击“移动到工作区”。

步骤1

步骤2

步骤3

点击“Save and Embed”,对文档进行切分和词向量化

步骤4:点击图钉按钮,将这篇文档设置为当前对话的背景文

5.2测试知识库

测试知识库,下面显示引用了那个文件的内容,完成。

遵循上述步骤,你将能够迅速搭建一个局域网可访问专属的知识库,并借助DeepSeek、Ollama与AnythingLLM的强劲能力,达成高效的知识管理与问答功能。无论是对个人学习而言,还是企业办公场景,这样的本地知识库都将成为你的得力助手,带来显著便利。

若在部署环节遇到任何难题,欢迎随时在评论区留言探讨。

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

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

相关文章

Sensodrive机器人力控关节模组SensoJoint在海洋垃圾清理机器人中的拓展应用

海洋污染已成为全球性的环境挑战,其中海底垃圾的清理尤为困难。据研究,海洋中约有2600万至6600万吨垃圾,超过90%沉积在海底。传统上,潜水员收集海底垃圾不仅成本高昂,而且充满风险。为解决这一问题,欧盟资助…

【redis】AOF 的基本工作机制,顺序写入,文件同步,重写机制

RDB 最大的问题,就是不能实时的持久化保存数据,在两次生成快照之间,实时的数据可能会随着重启而丢失 基本工作机制 AOF:append only file,类似于 MySQL 的 binlog,会把每个用户的每个操作,都记…

【C++】动态规划从入门到精通

一、动态规划基础概念详解 什么是动态规划 动态规划(Dynamic Programming,DP)是一种通过将复杂问题分解为重叠子问题,并存储子问题解以避免重复计算的优化算法。它适用于具有以下两个关键性质的问题: 最优子结构&…

数据可视化(matplotlib)-------辅助图标的设置

目录 一、认识图表常用的辅助元素 坐标轴 二、设置坐标轴的标签、刻度范围和刻度标签 (一)、设置坐标轴的标签 1、xlabel()------设置x轴标签 2、ylabel()------设置y轴标签 (二) 、设置刻度范围和刻度标签 1、xlim()和ylim()函数分别可…

CSS 用于图片的样式属性

CSS 设置图像样式 CSS中用于图片的样式属性主要包括以下几个方面: ‌边框和背景‌: ‌border‌:可以设置图片的边框样式、宽度和颜色。例如,img { border: 1px solid #ddd; } 会给图片添加1像素的实线边框,颜色为灰色…

Redis解决缓存击穿问题——两种方法

目录 引言 解决办法 互斥锁(强一致,性能差) 逻辑过期(高可用,性能优) 设计逻辑过期时间 引言 缓存击穿:给某一个key设置了过期时间,当key过期的时候,恰好这个时间点对…

Object 转 JSONObject 并排除null和““字符串

public static JSONObject objToJSONObject(Object obj) throws Exception{//创建一个 HashMap 对象 map&#xff0c;用于存储对象的属性名和属性值。//key 是属性名&#xff08;String 类型&#xff09;&#xff0c;value 是属性值&#xff08;Object 类型&#xff09;Map<…

python实现接口自动化

代码实现自动化相关理论 代码编写脚本和工具实现脚本区别是啥? 代码&#xff1a; 优点&#xff1a;代码灵活方便缺点&#xff1a;学习成本高 工具&#xff1a; 优点&#xff1a;易上手缺点&#xff1a;灵活度低&#xff0c;有局限性。 总结&#xff1a; 功能脚本&#xff1a;工…

C++特性——RAII、智能指针

RAII 就像new一个需要delete&#xff0c;fopen之后需要fclose&#xff0c;但这样会有隐形问题&#xff08;忘记释放&#xff09;。RAII即用对象把这个过程给包起来&#xff0c;对象构造的时候&#xff0c;new或者fopen&#xff0c;析构的时候delete. 为什么需要智能指针 对于…

算法系列——有监督学习——4.支持向量机

一、概述 支持向量机&#xff08;Support Vector Machine&#xff0c;SVM&#xff09;是一种应用范围非常广泛的算法&#xff0c;既可以用于分类&#xff0c;也可以用于回归。 本文将介绍如何将线性支持向量机应用于二元分类问题&#xff0c;以间隔&#xff08;margin&#x…

网络安全之前端学习(HTML篇)

前言&#xff1a;网络安全中有一个漏洞叫xss漏洞&#xff0c;就是利用网页引发弹窗&#xff0c;这就要求我们看得懂源码&#xff0c;所以我会持续更新前端学习&#xff0c;可以不精通&#xff0c;但是一定要会&#xff0c;主要掌握HTML&#xff0c;css&#xff0c;js这三项技术…

大华HTTP协议在智联视频超融合平台中的接入方法

一. 大华HTTP协议介绍 大华HTTP协议是大华股份&#xff08;Dahua Technology&#xff09;为其安防监控设备开发的一套基于HTTP/HTTPS的通信协议&#xff0c;主要用于设备与客户端&#xff08;如PC、手机、服务器&#xff09;之间的数据交互。该协议支持设备管理、视频流获取、…

介绍一下TiDB、RocksDb、levelDB、LSM 树、SSTable。

LSM 树&#xff08;Log-Structured Merge-Tree&#xff09; 核心原理&#xff1a;通过将随机写转换为顺序写优化写入性能&#xff0c;适用于写密集型场景。数据首先写入内存中的 MemTable&#xff08;有序结构&#xff0c;如跳表&#xff09;&#xff0c;当达到阈值后转为 Imm…

Powershell WSL导出导入ubuntu22.04.5子系统

导出Linux子系统 导出位置在C盘下,根据自己的实际情况更改即可Write-Host "export ubuntu22.04.5" -ForegroundColor Green wsl --export Ubuntu-22.04 c:\Ubuntu-22.04.tar 导入Linux子系统 好处是目录可用在任意磁盘路径,便于迁移不同的设备之间Write-Host &quo…

Jmeter

Jmeter 官网地址 https://jmeter.apache.org/ 下载安装包 系统环境变量 变量值JMETER_HOMEG:\Application\apache-jmeter-5.6.3 修改成自己的安装目录CLASSPATH;%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar; %JMETER_HOME%\lib\jorphan.jar;Path%JMETER_HOME%\bin 中文界…

碰一碰发视频saas系统技术源头一站式开发文档

碰一碰发视频系统技术源头一站式开发文档 一、引言 在数字化信息传播高速发展的当下&#xff0c;如何让视频分享更便捷、高效&#xff0c;成为商家和开发者们关注的焦点。“碰一碰发视频”系统以其独特的交互方式和强大的功能优势&#xff0c;为视频分享领域带来了革命性变革。…

Execution failed for task ‘:path_provider_android:compileDebugJavaWithJavac‘.

What went wrong: Execution failed for task ‘:path_provider_android:compileDebugJavaWithJavac’. Could not resolve all files for configuration ‘:path_provider_android:androidJdkImage’. Failed to transform core-for-system-modules.jar to match attributes {…

学习笔记 ASP.NET Core Web API 8.0部署到iis

一.修改配置文件 修改Program.cs配置文件将 if (app.Environment.IsDevelopment()) {app.UseSwagger();app.UseSwaggerUI(); }修改为 app.UseSwagger(); app.UseSwaggerUI(); 二.安装ASP.NET Core Runtime 8.0.14 文件位置https://dotnet.microsoft.com/en-us/download/do…

一、小雅自带tutorial文件教程

下载压缩包 这是elegantrl的开源地址: ElegantRL 我使用的是云服务器平台&#xff0c;上传压缩包之后&#xff0c;使用Linux解压缩命令&#xff0c;将压缩包解压。 使用conda新建一个虚拟环境 conda create -n ElegantRL conda activate ElegantRL安装elegantrl包 pip ins…

海康ISAPI协议在智联视频超融合平台中的接入方法

一. 海康ISAPI协议详解 海康ISAPI协议原理 海康ISAPI&#xff08;Internet Server Application Programming Interface&#xff09;协议是海康威视设备提供的一种基于HTTP/HTTPS的高级通信协议&#xff0c;用于实现客户端与设备之间的数据交互。其核心原理包括&#xff1a; 基…