基于Linux本地部署Deepseek R1大模型
官网:https://www.deepseek.com/DeepSeek是一款由国内团队开发的智能对话模型,专注于通用人工智能(AGI)领域的研发。它基于深度学习技术和大规模数据训练,能够完成对话生成、信息分析、任务执行等多种功能。深度学习技术DeepSeek利用深度神经网络(DNN)对数据进行建模,能够自动提取数据的特征,并理解数据之间的复杂关系。多模态能力:支持文本、代码、文件解析(如PDF
基于Centos9/Rocky9本地部署Deepseek R1大模型
文章目录
一、Deepseek简介
官网:https://www.deepseek.com/
介绍:DeepSeek是一款由国内团队开发的智能对话模型,专注于通用人工智能(AGI)领域的研发。它基于深度学习技术和大规模数据训练,能够完成对话生成、信息分析、任务执行等多种功能。
- 深度学习技术:
DeepSeek利用深度神经网络(DNN)对数据进行建模,能够自动提取数据的特征,并理解数据之间的复杂关系。 - 多模态能力:支持文本、代码、文件解析(如
PDF、Excel等)的交互,满足用户在各种场景下的需求。 - 多语言支持:可处理中、英、日、韩等多种语言,便于国际交流。
- 长上下文理解:部分版本支持超长文本的连贯对话,有助于深入理解用户意图。
二、ollama简介
官网:https://ollama.com/
介绍:Ollama是一款专为本地化部署和运行大型语言模型(LLM)设计的开源工具,旨在降低技术门槛并提升开发效率。通过简化模型管理、提供多样化交互方式及支持跨平台操作,帮助用户无需依赖云端服务即可高效利用LLM。Ollama的核心功能聚焦于模型管理与本地化运行。其内置预构建模型库(如Llama 3、Mistral等),支持一键下载和部署,同时允许用户从HuggingFace等平台导入自定义模型。通过编写Modelfile配置文件,用户可灵活调整模型参数或整合多模型组件。此外,Ollama提供命令行工具和RESTful API接口,便于开发者在本地环境中直接调用模型服务,例如通过ollama run命令启动交互对话,或集成到自动化流程中。
三、ollama部署
二进制安装包地址:https://github.com/ollama/ollama/blob/main/docs/linux.md
注意事项:需保证宿主机具有100G左右的磁盘空间。
# Step 1:下载ollama二进制安装包
curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz
# Step 2:解压安装包到指定目录
sudo tar -C /usr -xzf ollama-linux-amd64.tgz
# Step 3:创建用户及用户组
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
sudo usermod -a -G ollama $(whoami)
# Step 4:配置ollama启动systemd文件
vim /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=$PATH"
[Install]
WantedBy=default.target
# Step 5:重新加载配置
systemctl daemon-reload
# Step 6:启动ollama
systemctl enable --now ollama
# Step 7:查看ollama启动状态
systemctl status ollama

四、安装deepseek
ollama pull deepseek-r1:1.5b

五、运行deepseek
ollama run deepseek

六、安装open-webui
Open WebUI 是一个开源的、可自托管的 Web用户界面工具,专为与本地或私有化部署的大语言模型(LLM,如 LLaMA、GPT 等)交互而设计。它类似于 Ollama WebUI,但更加灵活和可定制,允许用户通过浏览器界面便捷地管理和调用 AI 模型,适用于个人开发者、企业或研究团队构建私有化 AI 应用。
# step 1: 安装必要的一些系统工具
dnf install -y yum-utils
# Step 2: 添加软件源信息
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 安装Docker
dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
# Step 4: 开启Docker服务
systemctl enable --now docker
# Step 5:配置镜像加速器
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [ "http://hub-mirror.c.163.com",
"https://kr1xs9ba.mirror.aliyuncs.com",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn",
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc",
"https://noohub.run",
"https://huecker.io",
"https://dockerhub.timeweb.cloud",
"https://registry.docker-cn.com",
"https://yfw3r2c6.mirror.aliyuncs.com",
"http://hub-mirror.c.163.com",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn"]
}
EOF
# Step 6:重新加载systemd配置文件
systemctl daemon-reload
# Step 7:重启docker-ce
systemctl restart docker
# Step 8:查看镜像加速器是否生效
docker info |grep -A 5 'Registry Mirrors'
Registry Mirrors:
http://hub-mirror.c.163.com/
https://kr1xs9ba.mirror.aliyuncs.com/
https://docker.m.daocloud.io/
https://dockerproxy.com/
https://docker.mirrors.ustc.edu.cn/
# Step 9:安装open-webui
docker run -d --net=host -e OLLAMA_BASE_URL=http://127.0.0.1:11434 -v open-webui:/app/backend/data --name open-webui --restart always --security-opt seccomp:unconfined swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/open-webui/open-webui:ollama
Unable to find image 'swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/open-webui/open-webui:ollama' locally
ollama: Pulling from ddn-k8s/ghcr.io/open-webui/open-webui
f11c1adaa26e: Pull complete
4ad0c7422f5c: Pull complete
f2bf536a1e4f: Pull complete
3bdbfec22900: Pull complete
83396b6ad4cc: Pull complete
9eb3b417f851: Pull complete
4f4fb700ef54: Pull complete
b3c84eccfcb3: Pull complete
dc20de3bcc53: Pull complete
e68feed0a84a: Pull complete
fdce77ab3f4b: Pull complete
b3c200d9083e: Pull complete
78a81954bb26: Pull complete
b9e3e3e2603b: Pull complete
0c5f861fc2ed: Pull complete
9cca9cdd6842: Pull complete
Digest: sha256:8863c2f304916096c2f665290b02fdbfc21a41a45d2fc129a62fece71c1f12b8
Status: Downloaded newer image for swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/open-webui/open-webui:ollama
2c78244e34822ea3a7ebb7c11b9c855315637d9079b73ba88ec366fa3983fad7
七、使用open-webui
八、deepseek关键词使用
官网:https://api-docs.deepseek.com/zh-cn/prompt-library/
提示语是用户输入给AI系统的指令或信息,引导AI生成特定的输出或执行特定的任务。简单来说,提示语就是我们与AI“对话”时所使用的语言,它可以是一个简单的问题,一段详细的指令,也可以是一个复杂的任务描述。提示语的基本结构包括指令、上下文和期望
- 指令:提示语的核心,明确告诉
AI你希望它执行什么任务。 - 上下文:为
AI提供背景信息,帮助它更准确地理解和执行任务。 - 期望:明确或隐含地表达对
AI输出的要求。
8.1 代码改写使用
示例代码如下:
下面这段的代码的效率很低,且没有处理边界情况。请先解释这段代码的问题与解决方法,然后进行优化:
```
def fib(n):
if n <= 2:
return n
return fib(n-1) + fib(n-2)
```
8.2 代码解释使用
示例代码如下:
请解释下面这段代码的逻辑,并说明完成了什么功能:
```
// weight数组的大小 就是物品个数
for(int i = 1; i < weight.size(); i++) { // 遍历物品
for(int j = 0; j <= bagweight; j++) { // 遍历背包容量
if (j < weight[i]) dp[i][j] = dp[i - 1][j];
else dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]);
}
}
```
8.3 代码生成使用
示例代码如下:
请帮我用 HTML 生成一个五子棋游戏,所有代码都保存在一个 HTML 中。
if (j < weight[i]) dp[i][j] = dp[i - 1][j];
else dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]);
}
}
8.3 代码生成使用
示例代码如下:
请帮我用 HTML 生成一个五子棋游戏,所有代码都保存在一个 HTML 中。

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)