简介:本文提供在Mac系统上安装DeepSeek的详细步骤,涵盖环境配置、依赖安装、常见问题解决及性能优化,适合开发者与企业用户参考。
DeepSeek官方推荐macOS 12(Monterey)及以上版本,原因在于其依赖的CUDA兼容层(如ROCm或Metal)需要较新的系统内核支持。通过“关于本机”菜单可快速确认系统版本,若低于12.x,需先通过App Store升级。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install pyenvpyenv install 3.10.12 # DeepSeek官方测试通过的版本pyenv global 3.10.12
python -m venv deepseek_envsource deepseek_env/bin/activate
git clone https://github.com/deepseek-ai/DeepSeek.gitcd DeepSeek
通过requirements.txt安装核心依赖(含PyTorch、Transformers等):
pip install -r requirements.txt
关键依赖解析:
torch>=2.0.0:需与Mac的Metal后端兼容。若使用M1/M2芯片,需安装torch-metal插件:
pip install torch-metal
transformers>=4.30.0:支持DeepSeek的模型加载与推理。从Hugging Face下载预训练模型(以7B版本为例):
from transformers import AutoModelForCausalLM, AutoTokenizermodel = AutoModelForCausalLM.from_pretrained("deepseek-ai/DeepSeek-7B", device_map="auto")tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/DeepSeek-7B")
存储优化:将模型保存至本地以加速后续加载:
model.save_pretrained("./local_model")tokenizer.save_pretrained("./local_model")
若环境配置复杂,可使用Docker简化流程:
从官网下载Mac版Docker,安装后启动服务。
docker pull deepseek/deepseek-llm:latest
docker run -d --name deepseek \-p 7860:7860 \-v /path/to/local/models:/models \deepseek/deepseek-llm:latest
参数说明:
-p 7860:7860:将容器内的Web UI端口映射至本地。-v:挂载本地模型目录至容器,避免重复下载。现象:pip install时报错Could not build wheels for xxxx。
原因:系统缺少编译工具(如C++编译器)。
解决:
xcode-select --install # 安装Xcode命令行工具brew install cmake # 安装CMake
现象:PyTorch报错Metal device not found。
原因:未正确配置Metal支持。
解决:
import torchprint(torch.backends.mps.is_available()) # 应返回True
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/mps
现象:推理时提示CUDA out of memory(即使使用Metal)。
优化方案:
from transformers import BitsAndBytesConfigquantization_config = BitsAndBytesConfig(load_in_4bit=True)model = AutoModelForCausalLM.from_pretrained("deepseek-ai/DeepSeek-7B",quantization_config=quantization_config,device_map="auto")
M2芯片的ANE可加速推理。需安装coremltools并转换模型:
import coremltools as ctmodel = ct.convert("./local_model",source="pytorch",convert_to="mlprogram")model.save("DeepSeek_CoreML.mlpackage")
效果:ANE加速后,7B模型推理速度可提升30%-50%。
若通过Thunderbolt连接eGPU(如AMD RX 7900 XT),需配置torch.nn.DataParallel:
import torchdevice_ids = [0, 1] # 假设连接两块GPUmodel = torch.nn.DataParallel(model, device_ids=device_ids)
运行以下代码测试模型是否加载成功:
input_text = "DeepSeek是一款"inputs = tokenizer(input_text, return_tensors="pt").to("mps")outputs = model.generate(**inputs, max_length=50)print(tokenizer.decode(outputs[0], skip_special_tokens=True))
预期输出:生成与DeepSeek相关的连贯文本(如“DeepSeek是一款先进的大语言模型”)。
htop或Activity Monitor监控推理时的CPU/GPU占用,及时调整批量大小。通过以上步骤,开发者可在Mac上高效部署DeepSeek,无论是本地开发还是企业级应用,均能获得稳定性能。