Ollama部署离线大模型
Ollama 是一个用于管理和部署大型语言模型(LLMs)的开源平台。它旨在简化在本地或云端运行和管理这些复杂模型的过程,使得研究人员、开发者和企业能够更轻松地利用这些强大的工具。 个人使用Ollama时通过在线下载的模型大多为int4量化的版本,本文介绍使用Ollam如何运行非默认量化版本以及使用GPU+CPU混合推理。
-
下载安装Ollama
# 开启autodl代理下载源码 source /etc/network_turbo wget https://github.com/ollama/ollama/releases/download/v0.5.12/ollama-linux-amd64.tgz mkdir ./ollama tar -zxvf ollama-linux-amd64.tgz -C ./ollama # 并将bin配置到PATH
-
下载模型参数文件
modelscope download --model unsloth/DeepSeek-R1-Distill-Qwen-14B-GGUF --include 'DeepSeek-R1-Distill-Qwen-14B-Q8_0.gguf' \ --local_dir /root/autodl-tmp/GGUF
-
启动Ollama服务
# 配置环境变量 export OLLAMA_HOST=0.0.0.0:6006 export OLLAMA_MODELS=/root/autodl-tmp/.ollama/models # 启动服务 ollama serve
-
通过Modelfile (DeepSeek-Qwen-14B-Q8_Modelfile) 加载参数文件
FROM ./DeepSeek-R1-Distill-Qwen-14B-Q8_0.gguf PARAMETER num_gpu 64 PARAMETER num_ctx 4096 PARAMETER temperature 0.6 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 }}"""
ollama create DeepSeek-Qwen-14B-Q8 -f ./DeepSeek-Qwen-14B-Q8_Modelfile ollama list
-
访问接口进行测试