如果支持科学上网,那就简单了直接执行命令:
curl -fsSL https://ollama.com/install.sh | sh
但是,其实大家是不支持的,所以就要离线安装了,离线安装包的链接:
https://github.com/ollama/ollama/releases
选择ollama-linux-amd64.tgz文件,如果下载慢,可以将连接放到迅雷里面提升下载速度。
将下载的包复制到服务器上,解压并放到/usr
目录
sudo tar -C /usr -xzf ollama-linux-amd64.tgz
❝
sudo tar -C /usr -xzf ollama-linux-amd64.tgz
是用于在 Linux 系统上解压并安装 Ollama 的命令,具体参数解释如下:
sudo
以管理员权限执行命令,确保对系统目录 /usr
有写入权限。tar
Linux 系统自带的归档工具,支持打包、解包和压缩功能。-C /usr
指定解压目标目录为 /usr
,解压前会先切换到该目录。
示例:解压路径当前目录目录
-x
执行解压操作(extract),从归档文件中提取内容。-z
使用 gzip 解压缩算法处理 .tgz
或 .tar.gz
格式的压缩包。-f ollama-linux-amd64.tgz
指定要解压的文件名,必须放在参数最后。然后,开启Ollama服务,执行命令:
ollama serve
执行完,需要开另一个终端去执行其他的操作,也可以放在后台执行,执行命令:
nohup ollama serve > output.log 2>&1 < /dev/null &
这样就不用去开启另一个终端了。
GitHub地址:https://github.com/ggerganov/llama.cpp,将llama.cpp 下载下来,然后编译,编译需要用到cmake,如果没有安装cmake,先安装cmake,执行命令:
sudo apt install cmake
然后,解压llama.cpp-master.zip(从Git上下载下来的就是zip文件,或者用git下载,执行命令:git clone https://github.com/ggml-org/llama.cpp
)
进入到llama.cpp-master,文件夹下面,执行命令:
cmake -B build
cmake --build build --config Release
输出结果如下:
我编译的时候没有报错,很顺利。
首先,将多个gguf文件合成一个,使用命令:
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文件,内容如下:
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 设置上下文的长度。
创建模型,执行命令:
ollama create deepseek-ai/DeepSeek-R1-Q4_K_M -f /data/wanghao/project/vllms/deepseek-ai/DeepSeek-R1-Q4_K_M/modelfile
看到success就表明执行成功了! 接下来就可以运行模型,执行命令:
ollama run deepseek-ai/DeepSeek-R1-Q4_K_M
如果出现问题:Error: llama runner process has terminated: signal: broken pipe
,说明资源不够了,需要降低num_gpu 的参数,继续生成文件,或者是版本的问题,升级到最新版本!
如果需要模型常驻显存,需要执行命令:
curl http://localhost:11434/api/generate -d '{"model":"deepseek-ai/DeepSeek-R1-Q4_K_M","keep_alive":-1}'