Ollama是一个工具,能让你轻松在本地电脑上使用大型语言模型(LLM)。它支持MacOS、Linux和Windows系统,操作简便,类似Docker。你可以从官网下载模型,从GitHub获取部署指南和教程。
Ollama运行自定义的GGUF文件
1、获取自定义GGUF文件
克隆https://github.com/ggerganov/llama.cpp对应的b3140版本,运行convert-hf-to-gguf.py,即将huggingface上的权重转换为gguf格式,python convert-hf-to-gguf.py /models/Qwen2-7B-Instruct/
convert-hf-to-gguf.py
1 | FROM /models/Qwen2-7B-Instruct/ggml-model-f16.gguf |
3、创建模型
通过运行ollama create qwen2_7b -f Modelfile创建 ollama 模型,并通过ollama run qwen2_7b 运行 ollama 模型:

ollama提供API接口服务(qwen2_7b + CPU推理)
1、搭建ollama环境
获取对应的docker镜像:hub.docker.com
第一步,将容器内的11434端口映射为本地8979端口
sudo docker run -d –network llm-management-network –name ollama_0143 –ipc=host -P -p 8979:11434 -v /data/models:/models –restart=always ollama/ollama:0.1.43
2、创建模型
同样执行ollama create qwen2_7b -f Modelfile 以及 ollama run qwen2_7b ,查看 ollama list 模型名称
3、API服务调用
通过curl调用
1 | curl --location --request POST 'http://10.39.214.105:8979/v1/chat/completions' \ |
或者使用postman模型调用
ollama提供API接口服务(qwen25_7b + GPU推理)
1、搭建ollama环境
获取对应的docker镜像:hub.docker.com
第一步,将容器内的11434端口映射为本地8767端口sudo docker run -d --gpus all --network llm-management-network --name ollama_0143 --ipc=host -P -p 8767:11434 -v /data/models:/models --restart=always ollama/ollama:0.1.43
2、创建Modelfile
ollama模型权重
权重地址:Qwen/Qwen2.5-7B-Instruct · HF Mirror
权重版本:ggml-model-f16.gguf来自convert-hf-to-gguf.py转换默认Qwen2.5-7B-Instruct
需要创建一个名为 Modelfile 的文件。文件内容如下所示:
1 | FROM /models/Qwen2.5-7B-Instruct/ggml-model-f16.gguf |
3、配置ollama.service文件
进入到容器内/etc/systemd/system/目录下,创建ollama.service文件。
echo写入指定文件,其中echo:用于输出文本到标准输出(通常是终端),- e:允许解释转义字符(如\n表示换行),>:将echo的输出重定向到文件。如果文件不存在,将会创建该文件;如果文件已存在,将会覆盖文件内容。echo -e '[Service]\nEnvironment="CUDA_VISIBLE_DEVICES=0"' > ollama.service
4、创建模型
通过运行ollama create qwen25_7b -f /models/Qwen2.5-7B-Instruct/Modelfile创建 ollama 模型,并通过ollama run qwen25_7b 运行 ollama 模型。
ollama提供API接口服务(qwen25_7b量化4版本 + GPU推理)
1、搭建ollama环境
获取对应的docker镜像:hub.docker.com
第一步,将容器内的11434端口映射为本地8767端口sudo docker run -d --gpus all --network llm-management-network --name ollama_0143 --ipc=host -P -p 8767:11434 -v /data/models:/models --restart=always ollama/ollama:0.1.43
2、创建Modelfile
ollama模型权重
权重地址:second-state/Qwen2.5-7B-Instruct-GGUF · HF Mirror
权重版本:Qwen2.5-7B-Instruct-Q4_K_M.gguf
需要创建一个名为 Modelfile_int4 的文件。文件内容如下所示:
1 | FROM /models/Qwen2.5-7B-Instruct/Qwen2.5-7B-Instruct-Q4_K_M.gguf |
3、配置ollama.service文件
进入到容器内/etc/systemd/system/目录下,创建ollama.service文件。
echo写入指定文件,其中echo:用于输出文本到标准输出(通常是终端),- e:允许解释转义字符(如\n表示换行),>:将echo的输出重定向到文件。如果文件不存在,将会创建该文件;如果文件已存在,将会覆盖文件内容。echo -e '[Service]\nEnvironment="CUDA_VISIBLE_DEVICES=0"' > ollama.service
4、创建模型
通过运行ollama create qwen25_7b_int4 -f /models/Qwen2.5-7B-Instruct/Modelfile_int4 创建 ollama 模型,并通过ollama run qwen25_7b_int4 运行 ollama 模型。
ollama提供API接口服务(qwen25_7b量化8版本 + GPU推理)
1、搭建ollama环境
获取对应的docker镜像:hub.docker.com
第一步,将容器内的11434端口映射为本地8767端口sudo docker run -d --gpus all --network llm-management-network --name ollama_0143 --ipc=host -P -p 8767:11434 -v /data/models:/models --restart=always ollama/ollama:0.1.43
2、创建Modelfile
ollama模型权重
权重地址:https://hf-mirror.com/Qwen/Qwen2.5-7B-Instruct
权重版本:ggml-model-q8_0.gguf来自convert-hf-to-gguf.py转换默认Qwen2.5-7B-Instruct,其中–outtype可选参数为[“f32”, “f16”, “bf16”, “q8_0”, “auto”]
需要创建一个名为 Modelfile_int8 的文件。文件内容如下所示:
1 | FROM /models/Qwen2.5-7B-Instruct/ggml-model-q8_0.gguf |
3、配置ollama.service文件
进入到容器内/etc/systemd/system/目录下,创建ollama.service文件。
echo写入指定文件,其中echo:用于输出文本到标准输出(通常是终端),- e:允许解释转义字符(如\n表示换行),>:将echo的输出重定向到文件。如果文件不存在,将会创建该文件;如果文件已存在,将会覆盖文件内容。echo -e '[Service]\nEnvironment="CUDA_VISIBLE_DEVICES=0"' > ollama.service
其他环境变量
1 | OLLAMA_DEBUG 显示额外的调试信息(例如:OLLAMA_DEBUG=1) |
4、创建模型
通过运行ollama create qwen25_7b_int8 -f /models/Qwen2.5-7B-Instruct/Modelfile_int8 创建 ollama 模型,并通过ollama run qwen25_7b_int8 运行 ollama 模型。
5、ollama如何保持模型加载在内存中或立即卸载
Ollama模型默认在内存中保留5分钟后卸载。你可以通过设置keep_alive参数来控制模型的保留时间:
- 用时间字符串(如”10分钟”或”24小时”)或秒数(如3600秒)来设定具体保留时间。
- 设置为负数(如-1或”-1分钟”)将使模型无限期保留。
- 设置为”0”会在生成响应后立即卸载模型。
例如,要预加载模型并永久保留,可以用:
curl http://localhost:11434/api/generate -d ‘{“model”: “qwen25_7b:latest”, “keep_alive”: -1}‘
要卸载模型并释放内存,可以用:
curl http://localhost:11434/api/generate -d ‘{“model”: “qwen25_7b:latest”, “keep_alive”: 0}‘6、在启动时添加OLLAMA_KEEP_ALIVE环境参数
sudo docker run -d –gpus all -e OLLAMA_KEEP_ALIVE=-1 –network llm-management-network –name ollama_0143 –ipc=host -P -p 8767:11434 -v /data/models:/models –restart=always ollama/ollama:0.1.43
查看是否设置成功
docker exec -it ollama env

