3
浏览本地部署 DeepSeek 模型主要有两种常见方法,一种是使用 Ollama 这样的工具,另一种是更底层的手动部署(例如结合 vLLM、SGLang 等推理框架或直接使用 DeepSeek 提供的官方代码)。
方法一:使用 Ollama(推荐,适合大多数用户)
Ollama 是一个简化大型语言模型本地运行和管理的工具,它支持 DeepSeek 模型,并且部署过程相对简单。
优点:
易于安装和使用: 几步操作即可完成模型的下载和运行。
跨平台支持: 提供 Windows, macOS, Linux 版本的安装包。
提供 API 接口: 可以方便地通过 API 调用模型,集成到其他应用中。
支持 Web UI: 可以结合 Open WebUI 等工具,获得类似 ChatGPT 的交互界面。
部署步骤:
1.安装 Ollama:
访问 Ollama 官方网站 (https://ollama.com/),下载对应操作系统的安装包并进行安装。
安装完成后,可以通过在终端或命令行中运行 ollama -v 来验证是否安装成功。
2.选择 DeepSeek 模型:
DeepSeek 有不同参数量的模型版本(例如 DeepSeek-R1 1.5B, 7B, 14B, 32B, 70B, 671B 等)。
根据你的硬件配置(主要是显存)选择合适的模型。参数量越大,模型能力越强,但对硬件要求也越高。推荐从较小的模型开始尝试,例如 DeepSeek-R1-1.5B 或 7B。
3.下载 DeepSeek 模型:
打开终端或命令行,使用 ollama pull 命令下载 DeepSeek 模型。
例如,下载 DeepSeek-R1 7B 模型: Bash
ollama pull deepseek-r1:7b
下载过程需要稳定的网络连接,可能需要一些时间。
4.运行 DeepSeek 模型:
模型下载完成后,可以直接在终端中与 DeepSeek 进行交互: Bash
ollama run deepseek-r1:7b
此时,你就可以开始输入问题并获得 DeepSeek 的回答了。
5.通过 API 或 Web UI 调用(可选):
API 调用: Ollama 会在本地启动一个服务(通常在 http://localhost:11434),你可以通过 HTTP 请求调用 DeepSeek API。例如: Bash
curl http://localhost:11434/api/chat -d '{ "model": "deepseek-r1", "messages": [{ "role": "user", "content": "你好,DeepSeek!" }], "stream": false }'
Web UI 界面: 可以结合如 Open WebUI (https://github.com/open-webui/open-webui) 这样的开源项目,通过 Docker 等方式部署一个图形化界面来与 DeepSeek 交互。这通常需要先安装 Docker,然后运行 Open WebUI 的 Docker 镜像,并将其配置为连接到你的 Ollama 服务。
方法二:更底层的手动部署(适合开发者或有特定需求的用户)
这种方法通常涉及直接使用 DeepSeek 模型的 PyTorch/Transformers 库,结合高效的推理框架(如 vLLM, SGLang, 或 llama.cpp 等)来部署。这需要更深入的了解和配置。
基本流程:
1.准备环境:
安装 Python 及必要的深度学习库(如 PyTorch, Transformers, Accelerate 等)。
如果使用 GPU,确保安装了对应版本的 NVIDIA CUDA 和 cuDNN。
推荐使用虚拟环境(如 conda 或 venv)来管理依赖。
2.下载模型权重:
从 Hugging Face 模型 Hub (https://huggingface.co/deepseek-ai) 下载 DeepSeek 模型的权重文件。
3.选择推理框架(例如 vLLM 或 SGLang):
vLLM: 一个流行的、用于 LLM 高效推理的库,支持 OpenAI API 兼容的部署。
安装 vLLM:pip install vllm
使用 vLLM 启动 DeepSeek 服务(具体命令可能需要参考 vLLM 官方文档和 DeepSeek 模型的配置): Bash
python -m vllm.entrypoints.api_server --model deepseek-ai/deepseek-r1-7b --host 0.0.0.0 --port 8000
(deepseek-ai/deepseek-r1-7b 是模型在 Hugging Face 上的路径,根据你下载的模型进行调整)
SGLang: 专注于高效的语言生成推理框架。阿里云曾介绍如何利用 SGLang 作为 DeepSeek 模型的推理框架进行部署。
llama.cpp: 如果你希望在 CPU 上运行或者对资源要求极低的环境,可以考虑使用 llama.cpp。这需要将模型转换为 GGUF 格式。
4.编写推理代码:
如果你不使用 vLLM 或 SGLang 提供的服务模式,也可以直接编写 Python 脚本,使用 Hugging Face transformers 库加载模型并进行推理。
这通常涉及:
加载 AutoTokenizer 和 AutoModelForCausalLM。
将模型移动到 GPU (如果可用)。
准备输入数据。
调用 model.generate() 进行生成。
硬件要求:
DeepSeek 模型,特别是参数量较大的版本,对硬件要求较高。
GPU: 强烈推荐使用 NVIDIA GPU,并具备足够的显存。例如,7B 模型可能需要 16GB 或更多显存,70B 模型则需要 80GB 甚至更多。
内存: 同样需要足够的系统内存来加载模型和处理数据。
磁盘空间: 模型文件本身较大,需要预留足够的存储空间。