当前位置:首页 > 游戏动态 > 正文

deepseek 本地部署快速上手,环境依赖一步步搞定别慌

你得知道DeepSeek这个模型家族,它有好几个不同大小的版本,比如有参数量小一点的,比如67亿参数的DeepSeek-Coder-V2-Lite,也有超级大的,咱们本地部署,一般先从小的开始,成功跑起来了,再考虑更大的模型,这里我们用一个比较适合入门的小模型来举例,比如这个DeepSeek-V2-Lite-Chat,这个信息在魔搭社区(ModelScope)和Hugging Face上都能找到。

第一步:准备好你的电脑环境

别被“环境”这个词吓到,其实就是给你的电脑安装几个必要的软件工具箱。

  1. 安装Python:这是运行所有AI模型的基础语言,去Python官网下载最新版本,比如Python 3.10或3.11,安装的时候,一定要记得勾选“Add Python to PATH”那个选项,这样后面用起来才方便,装好后,你可以打开电脑的“命令提示符”(Windows)或者“终端”(Mac/Linux),输入 python --version 按回车,如果显示出Python的版本号,Python 3.10.12”,那就说明安装成功了。
  2. 安装PyTorch:这是Facebook出的一个非常强大的深度学习框架,可以说是本地运行模型的基石,你去PyTorch官网,它会根据你的操作系统(Windows、Mac还是Linux)和是否有显卡(GPU)给你一个安装命令,对于大多数刚开始玩、没有高端显卡的朋友,直接选择用CPU来运行就好了,虽然速度会慢一些,但绝对能跑起来,你可能会得到一个类似 pip3 install torch torchvision torchaudio 的命令,你就把这个命令复制到你的命令提示符或终端里运行,等着它安装完成。
  3. 安装核心工具包:光有PyTorch还不够,我们还需要一些专门的工具来加载和运行大模型。
    • Transformers:这是Hugging Face出品的神器,它提供了成百上千个预训练模型的接口,让我们用几行代码就能调用,安装命令是 pip install transformers
    • 其他可能需要的库accelerate(帮助优化运行效率)、sentencepiecetiktoken(用于处理文本的分词),你可以先试着把模型跑起来,如果报错说缺什么,再用 pip install 命令安装什么就行,根据Hugging Face上DeepSeek-V2-Lite-Chat模型的说明页,我们可能还需要安装 einops 这个库,所以可以提前装上:pip install einops

第二步:获取模型文件

模型文件就是那个包含了AI所有“知识”的巨大文件,通常有好几个G大小,你不能直接下载一个压缩包解压,需要用代码自动下载。

这里有两种主要方式:

deepseek 本地部署快速上手,环境依赖一步步搞定别慌

  1. 通过Hugging Face Hub:这是最主流的方式,你需要先在Hugging Face网站上注册一个账号(免费的),找到DeepSeek的官方页面,deepseek-ai/DeepSeek-V2-Lite-Chat,在你的Python代码里,你会用到这个地址,首次运行代码时,它会提示你输入Hugging Face的访问令牌(Token),你在网站的个人设置里就能生成一个,这样代码就能验证你的身份并下载模型了。
  2. 通过魔搭社区(ModelScope):这是阿里出的一个类似Hugging Face的平台,对国内用户可能网络更友好一些,操作方式类似,安装ModelScope的库 pip install modelscope,然后在代码里使用来自ModelScope的模型路径。

第三步:写一个最简单的运行脚本

软硬件都齐了,我们来写一段简单的Python代码,让模型开口说话,打开任何一个文本编辑器(甚至记事本都行),把下面的代码复制进去,然后保存为一个以 .py 结尾的文件,test_deepseek.py

# 从transformers库中导入需要的类
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
# 设置设备,如果有GPU就用GPU,没有就用CPU
device = "cuda" if torch.cuda.is_available() else "cpu"
print(f"正在使用设备: {device}")
# 指定模型的名字,这里以Hugging Face Hub上的路径为例
# 如果你用ModelScope,可能是 "deepseek-ai/DeepSeek-V2-Lite-Chat" 或其他路径
model_name = "deepseek-ai/DeepSeek-V2-Lite-Chat"
# 加载分词器(负责把文字转换成模型能看懂的数字)
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
# 加载模型本身
model = AutoModelForCausalLM.from_pretrained(model_name, trust_remote_code=True, torch_dtype=torch.float16)
# 把模型放到设备上(GPU或CPU)
model.to(device)
# 我们要问模型的问题
prompt = "请用Python写一个函数,计算斐波那契数列的前n项。"
# 将问题编码成模型需要的格式
inputs = tokenizer(prompt, return_tensors="pt").to(device)
# 让模型生成回答
outputs = model.generate(**inputs, max_new_tokens=256)
# 把模型生成的数字答案解码成我们能看懂的文字
answer = tokenizer.decode(outputs[0], skip_special_tokens=True)
# 打印出完整的对话(你的问题+模型的回答)
print(answer)

第四步:运行并耐心等待

deepseek 本地部署快速上手,环境依赖一步步搞定别慌

好了,最关键的时刻到了,打开命令提示符或终端,导航到你保存 test_deepseek.py 文件的目录下(比如文件在桌面,就输入 cd Desktop),然后输入命令 python test_deepseek.py 并按回车。

接下来会发生两件事:

  1. 首次运行会下载模型:如果你的电脑本地没有这个模型,程序会自动开始下载,因为模型很大(可能几个G),所以你需要耐心等待,网速快的话几分钟,慢的话可能得半小时以上,你会看到一个下载进度条。
  2. 模型开始思考并生成答案:下载完成后,模型就会加载到内存中,然后开始处理你的问题,并一个字一个字地“蹦出”答案,这个过程在CPU上可能会比较慢,请给它一点时间。

你会在屏幕上看到模型生成的代码或者对你问题的回答,恭喜你,至此你已经成功在本地部署并运行了一个DeepSeek模型!

常见问题和小贴士

  • 内存不足:如果运行时报错说内存不够,说明你的模型可能太大了,或者你同时开了太多软件,尝试关闭浏览器、游戏等占内存的程序,或者换一个更小的模型版本(比如找找有没有“-lite”后缀的)。
  • 网络问题:下载模型时如果断网或报错,可以尝试使用国内镜像源,或者在网络通畅的时候再试。
  • 从聊天开始:上面给的例子是单次问答,如果你想实现多轮对话,需要稍微复杂一点的代码来记录之前的聊天历史,你可以查阅Hugging Face的文档中关于“chat template”的部分,或者找一些现成的Chatbot示例代码来修改。

本地部署就是这样,一步步来,遇到错误别慌,把错误信息复制下来去网上搜索,大概率都能找到解决方法,祝你玩得开心!