最近DeepSeek 挺火的,来折腾下
安装ollama
如果C盘空间不够大的话不建议直接双击下载的exe安装
可以使用命令行安装在其他目录
OllamaSetup.exe /DIR="D:\AI\Ollama"
验证ollama
ollama -v
可以用
ollama -h
修改模型存储位置
默认是存在
C:\Users\[用户名]\.ollama\models
改变路径可以通过环境变量
新建一个名为OLLAMA_MODELS 的用户变量,值为路径
下载模型
在ollama.com 官网上点击Models
第一个就是deepseek-r1
选择版本后运行后面框中的命令等待完成即可
大致显卡要求
DeepSeek-R1-1.5b NVIDIA RTX 3060 12GB or higher
DeepSeek-R1-7b NVIDIA RTX 3060 12GB or higher
DeepSeek-R1-8b NVIDIA RTX 3060 12GB or higher
DeepSeek-R1-14b NVIDIA RTX 3060 12GB or higher
DeepSeek-R1-32b NVIDIA RTX 4090 24GB
DeepSeek-R1-70b NVIDIA RTX 4090 24GB *2
DeepSeek-R1-671b NVIDIA A100 80GB *16
运行完成后在窗口中输入问题等待回答。
用 /bye 结束
如何看到token速度
在运行时加上 --verbose
ollama run deepseek-r1:7b --verbose
我的配置测试7b感觉还可以
1.5B速度
7b速度
14B 速度
32B 已经跑不太动了
加载32B 模型占用
生成文字时占用
可以看到内存和显存都占满了。
用命令行还是不太方便,我们需要安装一个UI
我这里用的chatbox ai
Chatbox AI官网:办公学习的AI好助手,全平台AI客户端,官方免费下载
如果要让外网访问本地的ollama API 需要配置两个环境变量
OLLAMA_HOST 0.0.0.0 --任何IP都可以访问 OLLAMA_ORIGINS *
访问http://{服务器IP}:11434/ 验证是否正常
迁移模型
由于模型默认安装在C盘,如果C盘不够大就要考虑放其它盘了
首先按上面新建一个OLLAMA_MODELS环境变量,我这里放在了E:\AI\Ollama\Models
但更改后重启cmd和重启电脑都无效,正确的做法是在任务栏右下角右键点击 Ollama图标退出,再将C:\Users\Administrator\.ollama\models 复制到新目录
再重新启动Ollama ,再用 ollama list验证是否存在模型,此时再ollama run xxxx ,如果xxxx不存在则会下载到新目录了。
导入guff文件
ollama pull 网络不佳会很慢,可以直接在www.modelscope.cn 下载guff文件
下载完成后在同目录新建Modelfile 文件
内如为
FROM ./DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf
然后cmd转到这个目录运行
ollama create deepseek-r1:14b -f Modelfile
然后用ollama ls 查看一下
然后再ollama run xxxxx
但我运行后提问好像有些问题,后面不回答了
估计应该是Modelfile 不完整影响,后面再研究果然是如此
完整的文件可以通过先show一个正常的模型查看
ollama show --modelfile deepseek-r1:14b
需要在FROM ./DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf 后面加上上面TEMPLATE 到最后PARAMETER
完整的文件
# 这里填入gguf文件路径 FROM ./DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf # 以下为模型模板配置 TEMPLATE """{{- if .System }}{{ .System }}{{ end }} {{- range $i, $_ := .Messages }} {{- $last := eq (len (slice $.Messages $i)) 1}} {{- if eq .Role "user" }}<|User|>{{ .Content }} {{- else if eq .Role "assistant" }}<|Assistant|>{{ .Content }}{{- if not $last }}<|end▁of▁sentence|>{{- end }} {{- end }} {{- if and $last (ne .Role "assistant") }}<|Assistant|>{{- end }} {{- end }}""" PARAMETER stop <|begin▁of▁sentence|> PARAMETER stop <|end▁of▁sentence|> PARAMETER stop <|User|> PARAMETER stop <|Assistant|>
使用LM Studio
下载LM Studio - Discover, download, and run local LLMs
安装后加载本地gguf 模型
起初随便设置了一个gguf文件夹,发现没效果,去官网文档发现它对目录结构有要求
我的目录结构如下
文件夹
E:\AI\lmstudio\deepseek\DeepSeek-R1-Distill-Qwen-14B-Q4_K_M
放入DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf
然后设置为E:\AI\lmstudio
成功加载
对话后能显示token速度
手动下载模型
因为国内无法直接打开hugggingface网站,我是在www.modelscope.cn 这个网站下载,也可以https://hf-mirror.com/
方式一
SDK 方式下载
安装modelscope
pip install modelscope
但安装时会报错HINT: This error might have occurred since this system does not have Windows Long Path support enabled. You can find information on how to enable this at https://pip.pypa.io/warnings/enable-long-paths
解决方法修改注册表
或者管理员运行powershell
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force
作用是一样的,但好像会导致访问局域网共享乱码?
然后再重新
pip install modelscope
但使用命令行下载我找不到modelscope 不知如何添加环境变量
modelscope download --model deepseek-ai/DeepSeek-R1-Distill-Qwen-14B
编写一个py文件
from modelscope import snapshot_download model_dir = snapshot_download('deepseek-ai/DeepSeek-R1-Distill-Qwen-14B')
我改成了
model_dir = snapshot_download("deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B",local_dir="e:/ai",cache_dir="e:/ai/cache")
但是执行后下载会报错,好像是文件正在被使用啥的
那么使用方式二
GIT下载
首先安装git 的lfs 扩展
git lfs install
然后
git clone https://www.modelscope.cn/deepseek-ai/DeepSeek-R1-Distill-Qwen-14B.git
但有个问题一是不支持断点续传,二是会下载历史版本占用磁盘空间,即使没有历史版本,.git文件夹大小也会存储一份当前版本模型的拷贝以及元信息,导致整个模型文件夹磁盘占用两倍以上