保姆级AI开发环境搭建

devtools/2025/2/9 10:38:46/

目录

  • windows下环境搭建
    • 1. Python环境搭建
    • 2. 下载vLLM
      • 2.1 安装CUDA
      • 2.2 安装Pytorch
      • 2.3 安装vllm
    • 3. 部署Deepseek(huggingface)
      • 3.1 DeepSeek的优化建议
    • 4. ollama快速部署Deepseek
      • 4.1 下载Ollama
      • 4.2 配置Ollma
      • 4.2 运行模型
      • 4.3 其他Ollama命令
  • linux下环境搭建
    • 1. 安装OpenSSL 1.1.x
    • 2. Python环境搭建
    • 3. 安装显卡驱动
    • 4. 其他操作
  • DeepSeek模型名称中的数字含义(例如 1.5b、7b、8b、14b、32b、70b和671b 等)
    • 本地部署DeepSeek的硬件配置「最低」要求(按模型规模分类)

随着 DeepSeek 模型的发布,它在全球范围内引起了极大的关注。

为了让更多开发者能够迅速进入AI领域并参与到这一革新性技术的应用中,本文将提供一份详尽的“保姆级”开发环境搭建指南。针对 Windows 和 Linux 两大操作系统,文章将逐步介绍如何搭建适用于 DeepSeek 模型的 AI 开发环境。内容涵盖了从基础工具安装到高级配置,包括 Python、PyTorch、TensorFlow 等 AI 框架的安装方法,CUDA 与 GPU 配置步骤,以及如何通过优化开发工具提高开发效率。

本指南旨在帮助初学者和开发者快速配置高效、稳定的 AI 开发环境,抓住 DeepSeek 模型带来的机会。

windows下环境搭建

1. Python环境搭建

我们可以去Python官网:https://www.python.org/ 下载Python对应的版本

在这里插入图片描述
下载安装完成后,打开cmd键入python即可查看python版本:

在这里插入图片描述

2. 下载vLLM

vLLM是伯克利大学LMSYS组织开源的大语言模型高速推理框架,旨在极大地提升实时场景下的语言模型服务的吞吐与内存使用效率。vLLM是一个快速且易于使用的库,用于 LLM 推理和服务,可以和HuggingFace 无缝集成。vLLM利用了全新的注意力算法「PagedAttention」,有效地管理注意力键和值。

在这里插入图片描述
首先去hugging face的官网找到DeepSeek模型:https://huggingface.co/deepseek-ai/DeepSeek-R1

在这里插入图片描述
在这里插入图片描述
可以看到vllm是可以通过pip命令安装的,但由于其依赖了pytorch等库,如果直接安装会报错。。。QAQ

因此我们先手动处理可能会导致报错的点!

2.1 安装CUDA

CUDA(Compute Unified Device Architecture)是由NVIDIA开发的一个并行计算平台和编程模型。它允许软件开发人员和研究人员利用NVIDIA的GPU(图形处理单元)进行高性能计算。CUDA提供了一系列API和工具,使得开发者能够编写和优化在GPU上运行的计算密集型任务。

在这里插入图片描述

CUDA与PyTorch、GPU之间的关系可以这样理解:

  1. CUDA与GPU:
    • GPU:是一种专门用于图像处理的微处理器,能够处理复杂的数学和图形计算。近年来,GPU也被广泛应用于通用计算,特别是深度学习和科学计算。
    • CUDA:允许开发者直接使用GPU进行计算。通过CUDA,开发者可以编写特定的程序,这些程序在GPU上并行执行,从而加速计算。
  2. CUDA与PyTorch:
    • PyTorch:是一个开源的机器学习库,广泛用于深度学习应用。PyTorch支持动态计算图(称为autograd),这使得它在研究和开发中非常灵活和受欢迎。
    • CUDA与PyTorch的关系:PyTorch通过CUDA与GPU紧密集成。当PyTorch检测到系统中有可用的GPU时,它可以自动使用CUDA来加速计算。这意味着,如果你在PyTorch中定义了一个张量(tensor)并将其移动到GPU上,PyTorch将使用CUDA来执行相关的计算。这使得深度学习模型训练和推理的速度大大提高,因为GPU比CPU更适合执行并行计算任务。

总结来说,CUDA是一个编程模型,它允许开发者利用GPU的高性能进行计算。PyTorch作为一个深度学习库,通过CUDA与GPU集成,使得其能够高效地利用GPU资源进行深度学习相关的计算任务。

怎么通俗解释它们三者的用途和关系?

  1. GPU(图形处理单元):

    • 用途:GPU就像一个超级快的数学计算器。它特别擅长同时处理很多相同的计算任务,比如在视频游戏中渲染成千上万的像素点,或者在深度学习中同时更新成千上万的神经网络参数。
    • 比喻:想象一下你有一个非常擅长做加减乘除的大脑,而GPU就像是很多这样的大脑同时工作,一起解决数学问题。
  2. CUDA(计算统一设备架构):

    • 用途:CUDA是一个帮助程序员使用GPU的工具。它允许程序员编写代码,然后这些代码可以被GPU理解并执行。没有CUDA,程序员就需要用更复杂的方式来指挥GPU工作。
    • 比喻:CUDA就像是GPU的语言翻译器。程序员用一种语言写代码,CUDA把它翻译成GPU能理解的语言。
  3. PyTorch(一个深度学习库):

    • 用途:PyTorch是一个帮助人们轻松创建和训练深度学习模型的工具。深度学习模型是用于图像识别、语音识别、语言翻译等复杂任务的计算机程序。
    • 比喻:PyTorch就像是一个高级的“积木箱”,里面有很多现成的积木(代码)。你可以用这些积木来搭建复杂的模型,比如一个可以识别猫和狗的模型。

废话不多说,我们先到老黄的老家:https://developer.nvidia.com/cuda-downloads 安装cuda Toolkit!

  • CUDA(Compute Unified Device Architecture):CUDA是NVIDIA推出的一种并行计算平台和编程模型,它允许开发者使用C/C++等高级语言编写程序,直接在NVIDIA GPU上运行,从而利用GPU的并行计算能力加速计算过程。CUDA为开发者提供了一个与GPU进行交互的接口,使得GPU的并行计算能力得以充分发挥。

  • CUDA Toolkit:CUDA Toolkit是NVIDIA提供的一套开发工具集,包含了CUDA编译器(如NVCC)、调试器、库等,用于开发CUDA应用程序。它为开发者提供了完整的开发环境,使得CUDA编程更加便捷。CUDA Toolkit是CUDA编程不可或缺的一部分,它包含了开发CUDA程序所需的所有工具和库文件。

注意我们需要先了解电脑显卡支持的cuda版本,如果安装了不支持的cuda驱动,可能会导致电脑一直蓝屏死机!!

我们可以在NVIDIA控制面板那找到显卡信息,可以看到作者的CUDA版本最高只支持12.7,而官网目前是12.8!!

在这里插入图片描述
在这里插入图片描述
点击下面的Archive of Previous CUDA Releases可以安装之前版本的CUDA,我这里选择12.5 < 12.7

在这里插入图片描述
下载好后,运行安装程序即可进入安装,主要要选择自定义安装,并且仅安装CUDA,其他组件比如显卡驱动等相信电脑上已经存在了,如果你安装了多个驱动,恭喜你喜提蓝屏!!

在这里插入图片描述
可以自由选择安装到其他盘,但需要记住安装位置,后期会使用到!

Win + R 打开命令行窗口,输入 nvcc -V,输出 CUDA 版本即为安装成功,如下图:

在这里插入图片描述

2.2 安装Pytorch

安装完CUDA驱动后,我们前往Pytorch官网安装Pytorch:

在这里插入图片描述
执行命令安装:pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124

请一定确认好自己的机器支持的CUDA版本:nvidia-smi,安装应该小于等于最大版本!

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
安装好后使用下方代码验证 PyTorch 是否能识别 CUDA:

import torch
print(torch.cuda.is_available())  # 如果返回 True,说明 CUDA 可用
print(torch.cuda.current_device())  # 输出当前使用的 CUDA 设备编号
print(torch.cuda.get_device_name(0))  # 输出当前设备名称

在这里插入图片描述

2.3 安装vllm

这里还有一个小问题:路径长度,如果不允许超长路径,vllm会报如下错误:

error: could not create 'build\bdist.win-amd64\wheel\.\vllm\model_executor\layers\quantization\utils\configs\N=1536,K=1536,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json': No such file or directory[end of output]note: This error originates from a subprocess, and is likely not a problem with pip.ERROR: Failed building wheel for vllm
Failed to build vllm

这个错误通常是由于文件路径过长或某些路径中的特殊字符导致的问题,尤其是在 Windows 上,文件路径的长度有限制(默认限制为 260 个字符)。在你的错误日志中,路径似乎非常长,特别是 configs 目录中的文件路径。

Windows 默认会限制文件路径长度,然而,在 Windows 10 及更高版本中,你可以通过修改注册表或组策略来启用更长的路径支持。

  1. Win + R 打开运行对话框,输入 regedit 并回车,打开注册表编辑器。
  2. 导航到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
  3. 在右侧窗格中,找到 LongPathsEnabled 键。如果没有,右键点击空白区域,选择 新建 > DWORD (32 位) 值,命名为 LongPathsEnabled
  4. 双击 LongPathsEnabled,将其值设置为 1
  5. 重启电脑。

然后重新安装:

# Install vLLM from pip:
pip install vllm

在这里插入图片描述

3. 部署Deepseek(huggingface)

由于Deepseek及其吃显卡,因此我们只部署基于千问蒸馏的1.5B版本:deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B

在这里插入图片描述

这里我们使用git拉取模型,并且提前配置好魔法:

# 配置
git config --global http.proxy 127.0.0.1:7890
git config --global https.proxy 127.0.0.1:7890# 查看
git config --global --get http.proxy
git config --global --get https.proxy# 删除
git config --global --unset http.proxy
git config --global --unset https.proxy

在这里插入图片描述

下载好后,执行vllm serve "G:\Model\DeepSeek-R1-Distill-Qwen-1.5B"

在这里插入图片描述
结果吃了个闭门羹:
在这里插入图片描述
查询github issue:https://github.com/vllm-project/vllm/issues/12858发现:

在这里插入图片描述
由于本文是作者边部署边写的,因此提前并不知道Deepseek在windows上无法进行加速推断运行,但其他模型可以通过hugging face提供的hugging_face库,transformers库都可以正常执行!

# Use a pipeline as a high-level helper
from transformers import pipelinemessages = [{"role": "user", "content": "Who are you?"},
]
# 注意模型的路径格式
pipe = pipeline("text-generation", model="G:\\Model\\DeepSeek-R1-Distill-Qwen-1.5B")
# 输出
output = pipe(messages)
print(output)

在这里插入图片描述
看到如图的输出就证明Deepseek模型已经可以在本地基本使用了!

哪怕是1.5B个参数已经把我的3060占满了,所以7B等较大的模型在个人电脑上基本不用想了,下面给出LLM参数估计和deepseek配置要求:

  1. 模型显存占用(估算):每 1B 参数约需 1.5-2GB 显存(FP16 精度)或 0.75-1GB 显存(INT8/4-bit 量化)。例如:32B 模型在 FP16 下需约 48-64GB 显存,量化后可能降至 24-32GB。
  2. 内存需求:至少为模型大小的 2 倍(用于加载和计算缓冲)。
  3. 存储:建议 NVMe SSD,模型文件大小从 1.5B(约 3GB)到 32B(约 64GB)不等。

Deepseek 1.5B配置需求

平台

最低配置

推荐配置

Windows

- CPU: Intel i5 / Ryzen 5

- CPU: Intel i7 / Ryzen 7

- RAM: 8GB

- RAM: 16GB

- GPU: NVIDIA GTX 1650 (4GB)

- GPU: RTX 3060 (12GB)

macOS

- M1/M2 芯片(8GB 统一内存)

- M1 Pro/Max 或 M3 芯片(16GB+)

Linux

- CPU: 4 核

- CPU: 8 核

- RAM: 8GB

- RAM: 16GB

- GPU: NVIDIA T4 (16GB)

- GPU: RTX 3090 (24GB)

Deepseek 7B配置需求

平台

最低配置

推荐配置

Windows

- CPU: Intel i7 / Ryzen 7

- CPU: Intel i9 / Ryzen 9

- RAM: 16GB

- RAM: 32GB

- GPU: RTX 3060 (12GB)

- GPU: RTX 4090 (24GB)

macOS

- M2 Pro/Max(32GB 统一内存)

- M3 Max(64GB+ 统一内存)

Linux

- CPU: 8 核

- CPU: 12 核

- RAM: 32GB

- RAM: 64GB

- GPU: RTX 3090 (24GB)

- 多卡(如 2x RTX 4090)

Deepseek 14B配置需求

平台

最低配置

推荐配置

Windows

- GPU: RTX 3090 (24GB)

- GPU: RTX 4090 + 量化优化

- RAM: 32GB

- RAM: 64GB

macOS

- M3 Max(64GB+ 统一内存)

- 仅限量化版本,性能受限

Linux

- GPU: 2x RTX 3090(通过 NVLink)

- 多卡(如 2x RTX 4090 48GB)

- RAM: 64GB

- RAM: 128GB

Deepseek 32B配置需求

平台

最低配置

推荐配置

Windows

- 不推荐(显存不足)

- 需企业级 GPU(如 RTX 6000 Ada)

macOS

- 无法本地部署(硬件限制)

- 云 API 调用

Linux

- GPU: 4x RTX 4090(48GB 显存)

- 专业卡(如 NVIDIA A100 80GB)

- RAM: 128GB

- RAM: 256GB + PCIe 4.0 SSD

平台差异说明:

  1. Windows
    • 依赖 CUDA 和 NVIDIA 驱动,推荐使用 RTX 30/40 系列。
    • 大模型(14B+)需借助量化或模型分片技术。
  2. macOS
    • 仅限 Apple Silicon 芯片(M1/M2/M3),依赖 Metal 加速。
    • 模型规模超过 14B 时性能显著下降,建议量化或云端部署。
  3. Linux
    • 支持多 GPU 扩展和高效资源管理(如 NVIDIA Docker)。
    • 适合部署大型模型(14B+),需专业级硬件。

3.1 DeepSeek的优化建议

  1. 缩小模型加载内存

    model = AutoModelForCausalLM.from_pretrained(model_path,device_map="cpu",torch_dtype=torch.float32,  # 必须用float32low_cpu_mem_usage=True      # 内存优化模式
    )
    
  2. 使用量化技术

    # 8-bit量化(减少30%内存)
    model = AutoModelForCausalLM.from_pretrained(model_path,load_in_8bit=True,device_map="cpu"
    )# 4-bit量化(减少50%内存,但效果可能下降)
    model = AutoModelForCausalLM.from_pretrained(model_path,load_in_4bit=True,device_map="cpu"
    )
    
  3. 限制生成长度

    outputs = model.generate(inputs, max_new_tokens=100)  # 生成内容越短越好
    

4. ollama快速部署Deepseek

Ollama 和 vLLM,都是在本地电脑部署和运行DeepSeek等AI大模型的工具,性能强大,开源免费。但是,二者在技术路线上有显著的差异,这决定了它们在不同场景下的表现和适用范围。

Ollama 的技术核心在于其便捷的本地部署能力,而 vLLM 则专注于推理加速,采用了一系列先进的技术来提升推理性能。

以下是 Ollama 与 vLLM 的详细对比表格,以及针对本地部署 DeepSeek 的推荐方案:

对比维度OllamavLLM
核心定位轻量级本地大模型运行工具(适合个人开发/实验)生产级大模型推理框架(适合企业/高并发场景)
部署难度简单:一键安装,支持 Mac/Linux/Windows(WSL)较复杂:依赖 Python 环境,需手动配置 GPU 驱动和 CUDA
硬件要求低:CPU 可用(推荐 16GB+ 内存),可选 GPU 加速高:必须 NVIDIA GPU(显存越大越好),依赖 CUDA 计算
模型支持内置主流开源模型(Llama2、Mistral、DeepSeek 等),自动下载预训练模型支持 HuggingFace 格式模型,需手动下载和转换模型文件
运行性能中等:适合单次问答、小规模交互极高:优化了显存管理和批处理,支持千级别并发请求
使用场景个人学习、本地测试、快速原型开发企业级 API 服务、高并发推理、云端部署
交互方式命令行直接对话,支持类似 ChatGPT 的交互界面需通过 API 调用(OpenAI 兼容接口),无内置对话界面
资源占用灵活:可调整 CPU/内存占用,适合低配电脑固定:显存占用量大,需预留资源应对峰值负载
扩展性有限:专注于单机本地化运行强:支持分布式部署、动态批处理、多 GPU 并行
新手友好度极高:开箱即用,无需代码基础中等:需了解 Python 和 API 开发基础
社区支持活跃的开发者社区,文档清晰学术团队维护,更新频繁但偏向技术文档
典型用途写代码、翻译、文案生成等个人任务构建智能客服、批量文档处理、AI 赋能业务系统

本地电脑部署 DeepSeek 推荐方案:

  1. 选择 Ollama 的场景:

    • 新手友好:安装只需一行命令(如 curl -fsSL https://ollama.com/install.sh | sh),无需配置环境。
    • 低配电脑可用:即使只有 CPU 和 16GB 内存,也能运行 7B 参数的 DeepSeek 模型。
    • 快速验证需求:直接输入 ollama run deepseek 即可开始对话,适合测试模型基础能力。
  2. 选择 vLLM 的场景:

    • 需要 API 服务:计划将 DeepSeek 集成到其他应用(如开发智能助手)。
    • 高性能需求:本地有高端 GPU(如 RTX 4090),需处理大量并发请求(如批量生成内容)。
    • 定制化需求:需修改模型参数或添加业务逻辑(通过 Python 代码调用)。

4.1 下载Ollama

前往Ollama官网:https://ollama.com/download

在这里插入图片描述
可以看到Ollama是支持多个平台的,这里我们下载windows平台,当看到右下角的小羊驼就证明安装成功了。

4.2 配置Ollma

安装时,Ollma直接被安装到了C盘,而模型目录自然也被指定到了C盘,现在我们来更改它。

打开windows的环境变量窗口,点击【系统变量】下的新建,然后又弹出一个窗口,然后填写:

变量名:OLLAMA_MODELS变量值:你的绝对路径(注意windows路径格式与linux不一样)

在这里插入图片描述
然后我们打开 cmd,执行一个命令 set ,它会输出所有的环境变量,找找看有没有我们刚才添加的OLLAMA_MODELS。

在这里插入图片描述
这时候再执行 run 或者 pull 命令来拉去模型,就会存放在指定盘了。

4.2 运行模型

Ollama 主要用于运行 GGUF 格式 的模型,而 Hugging Face 下载的模型通常是 PyTorch (.bin) 或 Safetensors (.safetensors) 格式,直接用 Ollama 运行它们是不行的,需要 转换格式

  1. 安装 llama.cpp

    git clone https://github.com/ggerganov/llama.cpp.git
    cd llama.cpp
    make
    

    在 Windows 上,可以使用 CMake 进行编译,或者用 WSL(Windows Subsystem for Linux)。

  2. 安装转换工具

    pip install torch transformers sentencepiece
    
  3. 转换 Hugging Face 模型
    假设你的模型在 G:\Model\DeepSeek-R1-Distill-Qwen-1.5B,可以运行:

    python convert-hf-to-gguf.py --model G:\Model\DeepSeek-R1-Distill-Qwen-1.5B --outdir G:\Model\DeepSeek-R1-Distill-Qwen-1.5B.gguf
    

    这将模型转换为 GGUF 格式。

还不如直接下载一个方便,前往Ollama模型库:https://ollama.org.cn/library

在这里插入图片描述
复制命令直接键入到CMD:
在这里插入图片描述
待其下载完后,会自动运行,然后就可以正常对话啦

在这里插入图片描述
键入/bye即可退出聊天,后续也可以通过ollama去重新打开聊天:

在这里插入图片描述
是不是非常方便!

4.3 其他Ollama命令

核心命令

命令作用示例
ollama serve启动 Ollama 服务器,使其在后台运行ollama serve
ollama create创建一个新模型,基于 Modelfile 生成一个可运行的 LLMollama create my_model -f Modelfile
ollama show查看模型信息(包括大小、参数等)ollama show my_model
ollama run运行一个模型,用于生成文本ollama run my_model
ollama stop停止正在运行的模型ollama stop my_model

管理模型

命令作用示例
ollama pull下载模型(从远程 registry)ollama pull mistral
ollama push上传模型(到远程 registry)ollama push my_model
ollama list列出所有可用模型ollama list
ollama ps查看正在运行的模型ollama ps
ollama cp复制一个模型ollama cp old_model new_model
ollama rm删除一个模型ollama rm my_model

其他

命令作用示例
ollama -v查看 Ollama 版本ollama -v
ollama help查看帮助信息ollama help
ollama [command] --help查看具体命令的帮助ollama run --help

常见用法

  1. 运行一个远程模型

    ollama run mistral
    

    这会自动下载 mistral 模型并运行它。

  2. 下载一个 Hugging Face 兼容模型

    ollama pull llama2
    

    这会从官方模型库下载 llama2

  3. 加载本地自定义模型

    ollama create my_model -f Modelfile
    ollama run my_model
    

    创建模型,然后 运行它

  4. 查看模型信息

    ollama show my_model
    
  5. 列出本地所有模型

    ollama list
    

总结

  • 运行模型 👉 ollama run
  • 下载模型 👉 ollama pull
  • 列出模型 👉 ollama list
  • 创建模型 👉 ollama create
  • 删除模型 👉 ollama rm
  • 查看正在运行的模型 👉 ollama ps

这些命令让你可以像 Docker 一样管理 LLM,并且支持 本地模型运行,不需要 GPU 也能跑!🚀

linux下环境搭建

1. 安装OpenSSL 1.1.x

OpenSSL 是一个开源软件库,由用于实现传输层安全 (TLS) 和安全套接字层 (SSL) 协议以及其他加密功能(如签名、加密、解密和验证)的工具和库组成。操作系统和许多应用程序使用 OpenSSL 通过 Internet 提供安全通信。

CentOS 7 / RHEL 7 操作系统上可用的 OpenSSL 版本有点旧,如果需要较新的版本,某些应用程序(如python3.11)会在编译时出错。

sudo yum -y install openssl openssl-devel
openssl version

从输出中可以看出,可用版本是1.0.2。如果已安装,请在继续之前将其删除。

sudo yum -y remove openssl openssl-devel

安装构建 OpenSSL 所需的依赖项

sudo yum -y groupinstall "Development Tools"

下载 OpenSSL 1.1.x 的源代码,其中x替换为所需的实际版本

wget https://www.openssl.org/source/openssl-1.1.1t.tar.gz --no-check-certificate

解包下载的文件

tar xvf openssl-1.1.1t.tar.gz

进入安装目录

cd openssl-1.1*/

配置ssl,指定安装位置

./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl

使用make命令构建 OpenSSL 1.1.x

make -j $(nproc)

安装 OpenSSL 1.1.1

sudo make install

更新共享库缓存

sudo ldconfig

更新系统范围的 OpenSSL 配置

sudo tee /etc/profile.d/openssl.sh<<EOF
export PATH=/usr/local/openssl/bin:\$PATH
export LD_LIBRARY_PATH=/usr/local/openssl/lib:\$LD_LIBRARY_PATH
EOF

重新加载shell环境

source /etc/profile.d/openssl.sh

注销当前的 shell 会话

logout

重新登录并验证 CentOS 7 / RHEL 7 上是否安装了 OpenSSL 1.1.1

$ which openssl
/usr/local/openssl/bin/openssl$ openssl version
OpenSSL 1.1.1t  7 Feb 2025

2. Python环境搭建

更新所有软件包

sudo yum -y update

重启系统

reboot

安装 Python 3.11 构建工具

sudo yum -y install epel-release
sudo yum install wget make cmake gcc bzip2-devel libffi-devel zlib-devel

安装所有开发工具

sudo yum -y groupinstall "Development Tools"

确认 GCC 版本

$ gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

下载 Python 3.11 源代码

wget https://www.python.org/ftp/python/3.11.2/Python-3.11.2.tgz

解压

tar xvf Python-3.11.2.tgz

进入安装目录

cd Python-3.11*/

配置构建项

LDFLAGS="${LDFLAGS} -Wl,-rpath=/usr/local/openssl/lib" ./configure --with-openssl=/usr/local/openssl 
make

安装 Python 3.11

sudo make altinstall

验证 OpenSSL 库是否正常工作

$ python3.11
Python 3.11.2 (main, Feb 24 2023, 12:20:28) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> ssl.OPENSSL_VERSION
'OpenSSL 1.1.1t  7 Feb 2023'
Use exit() or Ctrl-D (i.e. EOF) to exit
>>> Ctrl-D

使用 Pip3.11 安装 Python 模块,先升级pip到最新版本

pip3 install --upgrade pip

3. 安装显卡驱动

在 Linux 上使用主机的 GPU,需要正确安装 驱动程序、CUDA、cuDNN,并确保 用户权限 和 环境变量 配置正确。

检查显卡信息

lspci | grep -i nvidia

如果输出类似:

01:00.0 VGA compatible controller: NVIDIA Corporation TU104 [GeForce RTX 2080 SUPER] (rev a1)

说明 Linux 已经检测到显卡!

检查 GPU 驱动状态

nvidia-smi

如果 nvidia-smi 报错,说明没有安装或加载 NVIDIA 驱动,禁用开源 Nouveau 驱动

sudo bash -c "echo 'blacklist nouveau' > /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
echo 'options nouveau modeset=0' | sudo tee -a /etc/modprobe.d/blacklist-nvidia-nouveau.conf
sudo dracut --force
sudo reboot

安装 NVIDIA 驱动

# 通过官方 .run 安装包
wget https://us.download.nvidia.com/XFree86/Linux-x86_64/XXX/NVIDIA-Linux-x86_64-XXX.run
chmod +x NVIDIA-Linux-x86_64-XXX.run
sudo ./NVIDIA-Linux-x86_64-XXX.run或sudo yum install -y nvidia-driver-XXX

安装 CUDA

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-repo-ubuntu2204_12.3.0-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204_12.3.0-1_amd64.deb
sudo apt update
sudo apt install -y cuda
// 验证安装
nvcc --version

安装 cuDNN

sudo apt install -y libcudnn8
// 验证
cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

配置环境变量

// 在 ~/.bashrc 或 ~/.profile 里添加:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
// 使之生效
source ~/.bashrc

赋予用户权限(如果 nvidia-smi 只能在 root 下运行并且普通用户无权限,否则跳过)

sudo usermod -aG video $USER
sudo usermod -aG render $USER
newgrp video

运行测试

nvidia-smi

4. 其他操作

其余操作与windows上相同,不再赘述。

另外,在 VMware 虚拟机中使用主机的 GPU(NVIDIA 显卡),需要 开启 PCI 直通(PCI Passthrough,或 DirectPath I/O)。但是,VMware 的 Workstation 版本不支持 GPU 直通,只能在 ESXi 上使用。

如果你使用的是 VMware Workstation,只能通过 虚拟 GPU(vGPU) 或 CUDA 软件模拟,但无法让虚拟机直接控制物理 GPU。

在 VMware Workstation 里,“虚拟 GPU(vGPU)” 指的是 VMware 提供的 3D 加速功能,它允许虚拟机利用 主机的显卡 进行基本的 OpenGL 或 DirectX 加速,但 不能直接访问 NVIDIA GPU 的计算能力,即 不能运行 CUDA、深度学习、AI 训练等任务。

DeepSeek模型名称中的数字含义(例如 1.5b、7b、8b、14b、32b、70b和671b 等)

这些数字代表模型的参数量(Parameters),单位为 「B」(Billion,十亿)。例如:

  • 1.5B:15 亿参数
  • 7B:70 亿参数
  • 671B:6710 亿参数(接近万亿规模)

参数量的意义:

  • 模型能力:参数量越大,模型就有更强的理解和生成能力,但是需要更多计算资源。
  • 硬件需求:参数越多,对内存(RAM)和显存(VRAM)的需求就越高。
  • 运行速度:参数量大的模型,推理速度更慢,尤其是资源不足的时候。

可见,在本地电脑部署DeepSeek,一定要根据硬件配置来选择合适的模型版本。

本地部署DeepSeek的硬件配置「最低」要求(按模型规模分类)

需要说明的是,没有显卡、显存的低配置电脑,也是可以部署本地 DeepSeek 的,也可以正常运行,只是需要 14B 及以下的模型就可以了。

1.3B、1.5B 模型

  • 适用场景:简单文本生成、问答、轻量级任务
  • CPU:4 核以上(需支持 AVX2 指令集)
  • 内存(RAM):8GB 以上
  • GPU(可选):显存 ≥ 4GB(如 NVIDIA GTX 1650)
  • 存储:需 3~5GB 硬盘空间(模型文件 + 依赖库)
  • 说明:可在纯 CPU 环境下运行,但速度较慢(约 1~2 秒/词)。

6.7B、7B、8B 模型

  • 适用场景:复杂文本生成、代码生成、多轮对话
  • CPU:8 核以上(推荐 Intel i7 或 AMD Ryzen 7)
  • 内存(RAM):32GB 以上(纯 CPU 运行时需更高内存)
  • GPU(推荐):显存 ≥ 16GB(如 RTX 4090 或 Tesla T4)
  • 存储:需 15~20GB 硬盘空间
  • 优化建议
    • 使用 4-bit 量化 可将显存需求降至 8GB。
    • 使用 vLLM 或 HuggingFace TGI 框架 提升推理速度。

14B 模型

  • 适用场景:专业领域问答、长文本生成
  • CPU:不推荐纯 CPU 运行(速度极慢)
  • 内存(RAM):≥ 64GB(若需 CPU 回退)
  • GPU:显存 ≥ 24GB(如 RTX 3090 x2 或 A5000)
  • 存储:需 30~40GB 硬盘空间
  • 注意事项:需通过 模型并行(Model Parallelism) 拆分到多张 GPU。

32B、70B 模型

  • 适用场景:企业级应用、高精度需求
  • CPU:无法纯 CPU 运行
  • 内存(RAM):≥ 128GB(用于加载中间数据)
  • GPU:显存 ≥ 80GB(如 A100 80GB x2 或 H100)
  • 存储:需 70~150GB 硬盘空间
  • 关键点
    • 必须使用 多卡并行(如 NVIDIA NVLink 互联)。
    • 推荐 FP16 或 8-bit 量化 以降低显存占用。

236B、671B 模型

  • 适用场景:超大规模研究、云计算服务
  • 本地部署可行性:🚫 不推荐个人用户尝试
  • 企业级方案
    • GPU 集群(如 8x H100 或 A100
    • 显存需求:≥ 640GB(分布式推理)
    • 存储:≥ 1TB(模型 + 缓存)
    • 网络InfiniBand 或高速 RDMA 互联

模型规模最低 GPU 显存推荐 GPU 型号纯 CPU 内存需求适用场景
1.5B4GBRTX 30508GB个人学习
7B16GBRTX 409032GB小型项目
14B24GBA5000 x264GB专业应用
32B48GBA100 40GB x2128GB企业级服务
70B80GBA100 80GB x4256GB高性能计算
671B640GB+H100 集群不可行超算/云计算

对新手本地部署DeepSeek的建议:

  1. 从轻量级开始:应该优先尝试 1.5B 或 7B 模型,熟悉部署流程。
  2. 量化技术:使用 bitsandbytes 或 GPTQ 等工具压缩模型,降低显存需求。
  3. 云服务备用方案:大模型(如 70B)可考虑按需租用云 GPU(如 AWS、RunPod)。
  4. 工具推荐:
    • 推理框架:llama.cpp(CPU 友好)、vLLM(GPU 优化)
    • 量化工具:AutoGPTQ、ExLlama

这里推荐一个外部平台硅基流动:https://www.siliconflow.com/zh/home

在这里插入图片描述
注册即送15元,可以体验并调用各种模型的接口。


http://www.ppmy.cn/devtools/157325.html

相关文章

被裁与人生的意义--春节随想

还有两个月就要被迫离开工作了十多年的公司了&#xff0c;整个中国分支全部干掉。不过我有幸安安稳稳的过了一个春节&#xff0c;很知足! 分六七批走人&#xff0c;我是最后一批离开&#xff0c;一百多号同事都没“活到”蛇年。看着一批批仁人志士被“秋后斩首”&#xff0c;马…

java 日常下拉框接口字典封装

Operation(description "字典") GetMapping("/dict") public Result dict() {Long userItemId super.getUserItemId();Page<Manure> objectPage new Page<>();objectPage.setSize(100000);objectPage.setCurrent(1);Page<Manure> pag…

YOLOv11-ultralytics-8.3.67部分代码阅读笔记-downloads.py

downloads.py ultralytics\utils\downloads.py 目录 downloads.py 1.所需的库和模块 2.def is_url(url, checkFalse): 3.def delete_dsstore(path, files_to_delete(".DS_Store", "__MACOSX")): 4.def zip_directory(directory, compressTrue, ex…

Elasticsearch去分析目标服务器的日志,需要在目标服务器上面安装Elasticsearch 软件吗

Elasticsearch 本身并不直接收集目标服务器的日志&#xff0c;它主要用于存储、搜索和分析数据。要收集目标服务器的日志&#xff0c;通常会借助其他工具&#xff0c;并且一般不需要在目标服务器上安装 Elasticsearch 软件&#xff0c;常见的日志收集方案&#xff1a; Filebeat…

基于Qt开发FFMpeg遇到的编译错误问题

问题现象描述&#xff1a; 找不到FFMpeg 以av开头的有关的函数&#xff0c;链接问题 原因分析&#xff1a; 排除了安装的问题&#xff0c;版本问题之后&#xff0c;最后发现是C引用c动态库的用法不对&#xff0c;因为qt项目采用C编译&#xff0c;但FFMpeg库是c语言的&#x…

修剪二叉搜索树(力扣669)

这道题还是比较复杂&#xff0c;在递归上与之前写过的二叉树的题目都有所不同。如果当前递归到的子树的父节点不在范围中&#xff0c;我们根据节点数值的大小选择进行左递归还是右递归。为什么找到了不满足要求的节点之后&#xff0c;还要进行递归呢&#xff1f;因为该不满足要…

力扣刷题 题11,12

题目11 思路&#xff1a;设置左右指针 left和 right 指针指向数组的开始和末尾&#xff0c;max_water 用于记录最大容量初始为0。利用while循环left<right&#xff0c;移动指针比较数组元素 height[left] 和 height[right] 的大小&#xff0c;移动较短的那条线的指针&#x…

deepseek API 调用-python

【1】创建 API keys 【2】安装openai SDK pip3 install openai 【3】代码&#xff1a; https://download.csdn.net/download/notfindjob/90343352