deepseek开源模型需本地运行,hugging face仅托管文件;推荐用huggingface-cli下载并用transformers/vllm/llama.cpp加载推理,注意配置device_map、trust_remote_code及量化选项。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

直接在 Hugging Face 上下载 DeepSeek 模型没问题,但“运行”这一步必须本地完成——Hugging Face 本身不提供模型推理服务,它只托管文件。你得把模型拉下来,用 transformers、vllm 或 llama.cpp 这类工具加载执行。
怎么用命令行从 Hugging Face 下载 DeepSeek 模型
推荐用 huggingface-hub CLI 工具,比手动点网页下载更可靠,尤其对大模型分片文件(如 model-00001-of-00003.safetensors)能自动处理依赖和校验:
- 先安装:
pip install huggingface-hub - 登录(可选,但下载私有/需授权模型时必需):
huggingface-cli login - 下载模型(以
deepseek-ai/DeepSeek-R1-7B-Chat为例):huggingface-cli download deepseek-ai/DeepSeek-R1-7B-Chat --local-dir ./deepseek-r1-7b-chat - 加
--revision main可指定分支;加--include "*.safetensors" --exclude "*.md"能精简下载内容
注意:不要用普通 git clone 直接克隆模型仓库——Hugging Face 模型大多启用 LFS,没装 git-lfs 会下到空指针文件;也不要用浏览器右键另存为单个文件,容易漏 config.json 或 tokenizer.json,导致后续 from_pretrained() 报 OSError: Can't load config。
下载后怎么用 transformers 加载并跑通最简推理
确保已装 transformers、torch 和 accelerate,且路径里没中文、空格或符号(否则 AutoTokenizer.from_pretrained() 会静默失败):
- 模型路径必须指向含
config.json和pytorch_model.bin(或safetensors)的目录,例如./deepseek-r1-7b-chat - CPU 用户加
device_map="cpu"和torch_dtype=torch.float16(如果显存不足,int8量化版可用load_in_8bit=True) - GPU 用户优先设
device_map="auto",避免手动指定.to("cuda")导致ValueError: tensor is not on the same device - 别跳过
trust_remote_code=True——DeepSeek 的modeling_deepseek.py是动态注册的,不加这个参数会报KeyError: 'deepseek'
最小可运行示例(保存为 test_inference.py):
统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_path = "./deepseek-r1-7b-chat"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(
model_path,
device_map="auto",
torch_dtype=torch.float16,
trust_remote_code=True
)
inputs = tokenizer("你好,请用一句话介绍自己。", return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=64)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
为什么用 vllm 或 llama.cpp 而不是 transformers 直接跑
纯 transformers 推理慢、显存占用高,尤其在批量请求或长上下文场景下明显。实际部署建议换更高效的后端:
-
vllm:适合高并发 API 服务,吞吐量比transformers高 3–5 倍,但只支持 CUDA,且要求模型有官方llm_engine支持(DeepSeek-R1 已适配) -
llama.cpp:CPU / Metal / Vulkan 全平台支持,量化后Q4_K_M版本可在 16GB 内存笔记本跑 7B 模型,但需先用convert-hf-to-gguf.py转格式 - WebUI 类工具(如
text-generation-webui)底层也封装了这些引擎,选对应 loader 即可,不用手写代码
比如用 vllm 启动服务只需一行:python -m vllm.entrypoints.api_server --model ./deepseek-r1-7b-chat --trust-remote-code,然后 POST 到 /generate 就行。
常见报错和对应检查点
下载完一运行就崩?先盯住这几个关键错误信息:
-
OSError: Can't find file named config.json→ 检查路径是否指向模型根目录,不是上层文件夹;用ls -l ./deepseek-r1-7b-chat确认文件存在 -
ModuleNotFoundError: No module named 'deepseek'→ 必须加trust_remote_code=True,且确保transformers >= 4.37.0 -
CUDA out of memory→ 改用load_in_4bit=True或切到 CPU 模式;别信“显存够 8G 就能跑 7B”,实际需要至少 12G(含系统开销) -
ValueError: Expected all tensors to be on the same device→ 删掉所有手动.to("cuda"),让device_map="auto"统一调度
模型文件名带 -int4 或 -Q4_K_M 的是量化版,体积小但精度略降;原版(fp16)效果更好,但硬盘至少预留 15GB 空间。别为了省空间盲目下最小版本,有些轻量版是剪枝过的,逻辑行为可能和文档不一致。










