anythingllm服务器部署+ollama加载本地deepseek大模型+私有知识库问答

发布于:2025-02-21 ⋅ 阅读:(13) ⋅ 点赞:(0)

本项目在ubuntu系统上利用docker部署anythingllm,服务器有网络的前提下进行。

一、docker安装anythingllm

1、拉取镜像

docker pull mintplexlabs/anythingllm:latest

2、创建db目录和配置文件并运行 anythingLLM 容器

export STORAGE_LOCATION=/data/ai/wjh_team/anythingllm && \

mkdir -p $STORAGE_LOCATION && \

touch "$STORAGE_LOCATION/.env" && \

docker run -itd -p 3001:3001 \

--cap-add SYS_ADMIN \

--add-host=host.docker.internal:192.168.100.101 \

-v ${STORAGE_LOCATION}:/app/server/storage \

-v ${STORAGE_LOCATION}/.env:/app/server/.env \

-e STORAGE_DIR="/app/server/storage" \

--name anythingllm \

--gpus all \

--memory="16g" --cpus="4" \

--privileged \

mintplexlabs/anythingllm:latest
  • /app/server/storage:容器内部路径,容器运行时会将文件存储在这个目录中。
  • /data/ai/wjh_team/anythingLLM_server/storage: 你的本地存储路径,用于存储模型、数据等。
  • /data/ai/wjh_team/anythingLLM_server/env: 配置文件路径,包含必要的环境变量。
  • 3001:3001: 将容器的 3001 端口映射到宿主机的 3001 端口。

3、查看Docker log

docker logs anythingllm -f

4、进入容器

docker exec -it anythingllm /bin/bash

5、本地运行

http://宿主机ip地址:3001/

anythinllm功能丰富,可以设置自定义的图标工具箱等。

二、docker安装ollama并运行deepseek

1、拉取镜像

docker pull ollama/ollama

2、运行容器

docker run -d --gpus=all -v /data/ai/wjh_team/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

3、直接进入容器

docker exec -it ollama /bin/bash

4、运行模型

docker exec -it ollama ollama run deepseek-r1:32b

由于32b模型文件比较大,因此可能会拉取失败,因此可以在modelscope上下载gguf格式的模型文件,网址:魔搭社区

下载完成后,首先docker exec -it ollama /bin/bash进入容器,然后进入models目录下。

并且新建一个文件夹把deepseek-r1-32b模型文件放进去。然后编写一个deepseek-r1-32b.mf配置文件,内容如下:

FROM /root/.ollama/models/DeepSeek-R1-32B/DeepSeek-R1-Distill-Qwen-32B-Q4_K_M.gguf
  
TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>{{ end }}<|im_start|>user
{{ .Prompt }}<|im_end|>
<|im_start|>assistant
"""
PARAMETER stop "<|im_start|>"
PARAMETER stop "<|im_end|>"

编辑好后就执行加载

ollama create deepseek-r1:32b -f deepseek-r1-32b.mf

提示完成后,ollama list 验证

最后再运行下面命令即可。

ollam run deepseek-r1:32b 

如果要停止某个模型的加载,可以ollama stop <model_name>

5、在anythingllm上使用

三、搭建本地知识库

最后就可以基于你上传的文档进行提问了。