部署DeepSeek模型,进群交流最in玩法!
立即加群
发布
社区首页 >专栏 >【大模型实战】 Ollama部署满血量化版的DeepSeek R1模型(671B)

【大模型实战】 Ollama部署满血量化版的DeepSeek R1模型(671B)

作者头像
AI浩
发布2025-02-18 21:10:15
发布2025-02-18 21:10:15
72010
代码可运行
举报
文章被收录于专栏:AI智韵AI智韵
运行总次数:0
代码可运行

下载并安装Ollama

如果支持科学上网,那就简单了直接执行命令:

代码语言:javascript
代码运行次数:0
复制
curl -fsSL https://ollama.com/install.sh | sh

但是,其实大家是不支持的,所以就要离线安装了,离线安装包的链接:

代码语言:javascript
代码运行次数:0
复制
https://github.com/ollama/ollama/releases

选择ollama-linux-amd64.tgz文件,如果下载慢,可以将连接放到迅雷里面提升下载速度。

将下载的包复制到服务器上,解压并放到/usr目录

代码语言:javascript
代码运行次数:0
复制
sudo tar -C /usr -xzf ollama-linux-amd64.tgz

sudo tar -C /usr -xzf ollama-linux-amd64.tgz 是用于在 Linux 系统上解压并安装 Ollama 的命令,具体参数解释如下:

  1. sudo 以管理员权限执行命令,确保对系统目录 /usr 有写入权限。
  2. tar Linux 系统自带的归档工具,支持打包、解包和压缩功能。
  3. -C /usr 指定解压目标目录为 /usr,解压前会先切换到该目录。 示例:解压路径当前目录目录
  4. -x 执行解压操作(extract),从归档文件中提取内容。
  5. -z 使用 gzip 解压缩算法处理 .tgz.tar.gz 格式的压缩包。
  6. -f ollama-linux-amd64.tgz 指定要解压的文件名,必须放在参数最后。

然后,开启Ollama服务,执行命令:

代码语言:javascript
代码运行次数:0
复制
ollama serve

执行完,需要开另一个终端去执行其他的操作,也可以放在后台执行,执行命令:

代码语言:javascript
代码运行次数:0
复制
nohup ollama serve > output.log 2>&1 < /dev/null &

这样就不用去开启另一个终端了。

下载并安装llama.cpp

GitHub地址:https://github.com/ggerganov/llama.cpp,将llama.cpp 下载下来,然后编译,编译需要用到cmake,如果没有安装cmake,先安装cmake,执行命令:

代码语言:javascript
代码运行次数:0
复制
sudo apt  install cmake

然后,解压llama.cpp-master.zip(从Git上下载下来的就是zip文件,或者用git下载,执行命令:git clone https://github.com/ggml-org/llama.cpp

进入到llama.cpp-master,文件夹下面,执行命令:

代码语言:javascript
代码运行次数:0
复制
cmake -B build
cmake --build build --config Release

输出结果如下:

我编译的时候没有报错,很顺利。

Ollama 载入本地模型

首先,将多个gguf文件合成一个,使用命令:

代码语言:javascript
代码运行次数:0
复制
llama.cpp-master/build/bin/llama-gguf-split --merge ./deepseek-ai/DeepSeek-R1-Q4_K_M/DeepSeek-R1-Q4_K_M-00001-of-00011.gguf ./deepseek-ai/DeepSeek-R1-Q4_K_M/merged_file.gguf

编写modefile文件,内容如下:

代码语言:javascript
代码运行次数:0
复制
FROM ./merged_file.gguf
PARAMETER num_gpu 48  
PARAMETER num_ctx 16384  
PARAMETER temperature 0.6  
TEMPLATE "<|User|>{{ .Prompt }}<|Assistant|>{<think>\n}"

num_gpu:设置GPU加载的层数,共有61层,如果GPU显存比较小,可以设置的小一些。num_ctx 设置上下文的长度。

创建模型,执行命令:

代码语言:javascript
代码运行次数:0
复制
ollama create deepseek-ai/DeepSeek-R1-Q4_K_M -f /data/wanghao/project/vllms/deepseek-ai/DeepSeek-R1-Q4_K_M/modelfile 

看到success就表明执行成功了! 接下来就可以运行模型,执行命令:

代码语言:javascript
代码运行次数:0
复制
ollama run deepseek-ai/DeepSeek-R1-Q4_K_M

如果出现问题:Error: llama runner process has terminated: signal: broken pipe,说明资源不够了,需要降低num_gpu 的参数,继续生成文件,或者是版本的问题,升级到最新版本!

如果需要模型常驻显存,需要执行命令:

代码语言:javascript
代码运行次数:0
复制
curl http://localhost:11434/api/generate -d '{"model":"deepseek-ai/DeepSeek-R1-Q4_K_M","keep_alive":-1}'
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-02-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI智韵 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 下载并安装Ollama
  • 下载并安装llama.cpp
  • Ollama 载入本地模型
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档