您现在的位置是:首页 >学无止境 >Ubuntu从零到一本地部署DeepSeek-R1教程(ollama+open-webui)网站首页学无止境

Ubuntu从零到一本地部署DeepSeek-R1教程(ollama+open-webui)

拉卡尼休的小火苗 2025-02-14 12:01:03
简介Ubuntu从零到一本地部署DeepSeek-R1教程(ollama+open-webui)

DeepSeek-R1 git地址

DeepSeek如今的火爆是现象级的。本文使用ollama+open-webui,教你从零到一在自己的本地环境部署DeepSeek-R1模型。
安装前需确保显卡驱动以及cuda安装正确。

1. 安装ollama

这里建议直接使用官方脚本安装

 curl -fsSL https://ollama.com/install.sh | sh

国内网速受限,博主大概花了3个小时才安装成功。

2. 下载DeepSeek-R1:14b模型

这一步比较简单,只需

ollama run deepseek-r1:14b

就可以在命令行使用
在这里插入图片描述

看了一下nvidia-smi,DeepSeek-R1大概占用10G显存。如果电脑显存更小,可尝试其他版本
https://ollama.com/library/deepseek-r1/blobs/96c415656d37
在这里插入图片描述

3. 安装open-webui

注意在开始安装open-webui前,请先检查python版本,这里建议使用3.11,如果不是这个版本,建议使用conda创建虚拟环境。

3.1 conda创建虚拟环境

conda create -n deepseek-r1 python=3.11

3.2 pip安装open-webui

pip install open-webui -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/

国内加上清华源会更快。

3.3 启动open-webui

conda activate deepseek-r1
open-webui serve

这样浏览器打开http://0.0.0.0:8080就可以看到
在这里插入图片描述
如果想在其他电脑也可以访问该网址,如下脚本可用做参考。

#!/bin/bash

# 配置默认的 IP 和端口
DEFAULT_IP="0.0.0.0"
DEFAULT_PORT="8080"
COMMAND_TO_RUN="echo 'Open-WebUI 已启动'"

# 允许用户传入自定义 IP 和端口
IP=${1:-$DEFAULT_IP}
PORT=${2:-$DEFAULT_PORT}

# 定义清理函数,在脚本退出时执行
cleanup() {
    echo "正在停止 deepseek-r1:14b..."
    ollama stop deepseek-r1:14b
    echo "清理完成,脚本退出。"
    exit 0
}
ollama stop deepseek-r1:14b
# 监听 SIGINT(Ctrl+C)和 SIGTERM(kill)信号,触发 cleanup 函数
trap cleanup SIGINT SIGTERM

# 运行 deepseek-r1:14b
nohup ollama run deepseek-r1:14b > deepseek.log 2>&1 &

# 激活 conda 环境
if [ -f ~/anaconda3/etc/profile.d/conda.sh ]; then
    source ~/anaconda3/etc/profile.d/conda.sh
    conda activate deepseek-r1
else
    echo "Conda 未安装或路径不正确,请检查 conda 安装。"
    exit 1
fi

# 启动 Open-WebUI
nohup open-webui serve --host $IP --port $PORT > open-webui.log 2>&1 &

echo "Open-WebUI 运行在 http://$IP:$PORT"

# 运行指定的指令
eval "$COMMAND_TO_RUN"

# 阻塞脚本,保持运行
while true; do
    sleep 1
done

脚本运行后,会配置open-webui的IP和端口;且结束脚本后会自动关闭ollama服务,确保显存释放。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。