ubuntu本地部署deepseek r1

张开发
2026/4/7 6:05:15 15 分钟阅读

分享文章

ubuntu本地部署deepseek r1
通过 Ollama 本地部署 DeepSeek-R1 并集成 Open WebUI 的完整指南目录环境要求与准备安装 Ollama部署 DeepSeek-R1 模型安装 Open WebUI配置与使用优化与调试常见问题解答1. 环境要求与准备硬件要求GPU: 至少 24GB 显存如 RTX 4090/A100需支持 CUDA 11.8CPU: 推荐 8 核以上如 Intel i7 或 AMD Ryzen 7内存: 32GB模型加载后占用约 20GB 内存存储: 50GB 可用空间模型文件约 20~30GB软件要求操作系统: Linux (Ubuntu 22.04)、macOS 12.3 或 Windows 11WSL2依赖项:Docker 24.0用于 Open WebUINVIDIA 驱动 535Linux/WindowsCUDA Toolkit 11.8Linux/WindowsPython 3.10可选用于脚本管理我的配置GPU: NVIDIA RTX 4090CPU: Intel Core i9-13900K内存: 64GB DDR5存储: 1TB NVMe SSD操作系统: Ubuntu 24.04.3 LTS2. 安装 OllamaLinux/macOS# 一键安装脚本默认安装到 ~/.ollamacurl-fsSLhttps://ollama.com/install.sh|sh# 手动安装指定安装路径 20260403 可用wget-chttps://gh-proxy.org/https://github.com/ollama/ollama/releases/download/v0.20.0/ollama-linux-amd64.tar.zstsudoaptupdatesudoaptinstallzstdtarsudotar-xzfollama-linux-amd64.tar.zst-C/usr# 启动服务后台运行ollama serve验证安装ollama--version# 应输出类似 ollama version 0.1.25ollama环境变量OLLAMA_HOST : 这个变量定义了Ollama监听的网络接口。通过设置OLLAMA_HOST0.0.0.0, 我们可以让Ollama监听所有可用的网络接口, 从而允许外部网络访问。OLLAMA_MODELS : 这个变量指定了模型镜像的存储路径。通过设置OLLAMA_MODELSF:\OllamaCache, 我们可以将模型镜像存储在E盘, 避免C盘空间不足的问题。OLLAMA_KEEP_ALIVE : 这个变量控制模型在内存中的存活时间。设置OLLAMA_KEEP_ALIVE24h可以让模型在内存中保持24小时, 提高访问速度。OLLAMA_PORT : 这个变量允许我们更改Ollama的默认端口。例如, 设置OLLAMA_PORT8080可以将服务端口从默认的11434更改为8080。OLLAMA_NUM_PARALLEL : 这个变量决定了Ollama可以同时处理的用户请求数量。设置OLLAMA_NUM_PARALLEL4可以让Ollama同时处理两个并发请求。OLLAMA_MAX_LOADED_MODELS : 这个变量限制了Ollama可以同时加载的模型数量。设置OLLAMA_MAX_LOADED_MODELS4可以确保系统资源得到合理分配。OLLAMA_ORIGINS: 允许的源列表, 星号*或使用逗号分隔。ollama常见命令安装Ollama在Linux系统上可以通过以下命令安装Ollamacurl-fsSLhttps://ollama.ai/install.sh|sh启动Ollama服务手动启动ollama服务安装完成后可以使用以下命令启动Ollama服务ollama serve添加ollama 系统服务sudo vim /etc/systemd/system/ollama.service 添加如下内容[Unit]DescriptionOllama ServiceAfternetwork-online.target[Service]ExecStart/usr/bin/ollama serveUserollamaGroupollamaRestartalwaysRestartSec3EnvironmentPATH$PATHOLLAMA_NUM_PARALLEL32EnvironmentOLLAMA_DEBUG1EnvironmentOLLAMA_ACCELERATE1[Install]WantedBydefault.target重新加载systemd配置并重启服务sudosystemctl daemon-reload启动服务sudosystemctl start ollama查看ollama服务状态sudosystemctl status ollama设置开机自启动sudosystemctlenableollama停止开机自启动sudosystemctl disable ollama查看ollama服务日志# 使用 -o 参数可以改变输出格式例如使用 verbose 格式来查看详细信息journalctl-uollama-overbose# 要实时查看日志可以使用 -f 或 --follow 参数journalctl-uollama-overbose-f拉取模型Ollama支持从Docker Hub拉取模型。例如拉取一个名为llama2的模型ollama pull llama2运行模型拉取模型后可以通过以下命令运行模型ollama run llama2# 显示模型输出速度 token速度ollama run llama--verbose查看已安装的模型要查看本地已安装的模型可以使用以下命令ollama list删除模型如果需要删除本地已安装的模型可以使用以下命令ollamarmllama2更新模型Ollama支持更新本地模型。例如更新llama2模型ollama update llama2查看帮助信息要查看Ollama的所有命令及其使用方法可以使用以下命令ollama--help查看版本信息要查看Ollama的版本信息可以使用以下命令ollama--version自定义模型配置Ollama允许用户自定义模型配置。例如创建一个自定义的Modelfileollama create mymodel-fModelfile导出模型如果需要将模型导出为文件可以使用以下命令ollamaexportmymodel mymodel.tar导入模型从外部文件导入模型可以使用以下命令ollamaimportmymodel.tar停止Ollama服务停止Ollama服务可以使用以下命令ollama stop重启Ollama服务重启Ollama服务可以使用以下命令ollama restart查看日志查看Ollama服务的日志可以使用以下命令ollama logs这些命令涵盖了Ollama的常见操作帮助用户有效地管理和使用Ollama服务。3. 部署 DeepSeek-R1 模型3.1 模型选择参数类型 : deepseek-r1 模型参数# 下载 DeepSeek-R1 32B 4-bit 量化版约 20GBollama pull deepseek-r1:32b3.2 启动模型服务# 运行模型自动分配 GPUollama run deepseek-r1:32b# 后台服务模式暴露 API 端口 11434ollama serve--port114344. 安装 Open WebUI4.1 Python部署Open WebUI使用 Conda 安装创建Conda Environment:conda create-nopen-webuipython3.11激活Environment:conda activate open-webui安装 Open WebUI:pipinstallopen-webui启动服务:open-webui serve通过Python更新open-webuipipinstall-Uopen-webui4.2 验证服务访问http://localhost:8080/, 完成以下步骤创建管理员账户首次访问, 并登录在设置中确认OLLAMA_API_BASE_URL指向正确地址5. 配置与使用5.1 连接 Ollama 与 Open WebUIWebUI 界面操作:登录后进入Settings Model Settings填写OLLAMA API URL为http://[OLLAMA_HOST]:11434本地为http://localhost:11434点击Verify Connection确认状态为绿色模型选择:在聊天页面点击Select Model, 输入deepseek-r1:32b调整参数如 Temperature0.7, Max Tokens20485.2 使用示例**用户输入**: 请用中文解释量子计算的基本原理。 **DeepSeek-R1 响应**: 量子计算利用量子比特qubit的叠加和纠缠特性, 通过量子门操作实现并行计算...5.3 通过API使用创建test.py文件输入以下内容from openaiimportOpenAI# 初始化客户端指向 Ollama 的本地服务clientOpenAI(base_urlhttp://localhost:11434/v1,# Ollama API 地址api_keyollama# Ollama 默认无需真实 API Key填任意值即可)# 发送请求responseclient.chat.completions.create(modelqwen3:32b,# 指定模型messages[{role:system,content:你是一个有帮助的助手。},{role:user,content:你好什么是大模型}],temperature0.7,# 控制生成多样性max_tokens4096# 最大生成 token 数)# 打印结果print(response.choices[0].message.content)运行命令python test.py参考链接https://ollama.readthedocs.io/api/6. 优化与调试6.1 显存优化量化级别调整:# 重新拉取更低精度的模型如 3-bitollama pull deepseek-r1:32b-q3_K多卡分配:修改Modelfile添加PARAMETER num_gpu 2需 2 张 GPU6.2 网络加速Docker 镜像加速:json// 修改 /etc/docker/daemon.json{registry-mirrors: [https://ghcr.nju.edu.cn]}Ollama 代理设置:export HTTP_PROXYhttp://127.0.0.1:7890ollama serve 6.3 监控工具GPU 监控:watch -n 1 nvidia-smi # 实时显存占用API 测试:curl http://localhost:11434/api/generate -d {model: deepseek-r1:32b,prompt: 你好}’7. 常见问题解答Q1: 模型加载时报显存不足解决方案:使用更低量化版本如q2_K减少num_ctx参数如从 4096 改为 2048升级 GPU 硬件至少需 24GB 显存Q2: Open WebUI 无法连接 Ollama检查步骤:确认docker ps显示容器正常运行执行curl http://localhost:11434测试 Ollama API 是否响应检查防火墙是否开放 11434 和 3000 端口Q3: 生成速度过慢优化方法:升级至 A100/A800 等高性能 GPU在Modelfile中设置PARAMETER num_thread 16利用多核 CPU附录命令速查表功能命令列出已下载模型ollama list删除模型ollama rm deepseek-r1:32b-q4_0重启 Open WebUIdocker restart open-webui通过本指南, 您可以在本地高效部署 DeepSeek-R1 并利用 Open WebUI 实现交互式对话。建议定期检查 Ollama 官方文档 和 Open WebUI GitHub 获取更新。

更多文章