ollama模型CPU轻量化部署
发布时间
阅读量:
阅读量
一、定义
以下是改写后的文本内容
二、实现
-
ollama 定义
ollama 是llama-cpp 的进一步封装,更加简单易用,类似于docker.
模型网址:https://www.ollama.com/
部署网址:https://github.com/ollama/ollama
教程:https://github.com/ollama/ollama/releases -
环境部署
1. 宿主机安装
curl -fsSL https://ollama.com/install.sh | sh

curl http://localhost:11434 已经启动。
远程访问配置:
>>sudo vi /etc/systemd/system/ollama.service
对于每个环境变量,在 [Service] 部分下添加一行 Environment:
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
保存并退出。
重新加载 systemd 并重新启动 Ollama:
>>systemctl daemon-reload
>>systemctl restart ollama
bash

2. docker 模式安装
https://hub.docker.com/r/ollama/ollama
安装镜像到Ollama
- 案例
1.加载模型/模型
ollama pull llama3:8b
bash

2. 调用模型
方式一、指令交互的方式进行调用
>>ollama run llama3
bash

方式二、api 接口调用
curl http://localhost:11434/api/generate -d '{
"model":"llama3:8b",
"prompt": "请分别翻译成中文 -> Meta Llama 3: The most capable openly available LLM to date",
"stream": false
}'
bash

方式三、 python 接口调用
pip install ollama-python
import ollama
response = ollama.run('llama3:8b', '你好,世界!')
print(response)
bash
from openai import OpenAI
client = OpenAI(
base_url='http://localhost:11434/v1/',
# 必需但被忽略
api_key='ollama',
)
chat_completion = client.chat.completions.create(
messages=[
{
'role': 'user',
'content': 'Say this is a test',
}
],
model='llama2',
)
bash

- 本地模型加载方法
请参考官网文档
4.1 GGUF 模型 - 编写 ModelFile 文件
从 ./mistral-7b-v0.1.Q4_0.gguf 生成文件 - 创建模型实例
通过 ollama 工具创建 llama3-8b:0.001 模型实例,并指定 ModelFile 作为配置文件 - 进行测试验证
运行推理过程,并使用以下示例对话:
"你最喜欢的调味品是什么?"

- 基本指令 : 和docker 指令类似,基本重合
journalctl -u ollama 查看日志
journalctl -n 10 查看最新的10条日志
journalctl -f 实时查看新添加的日志条目
bash
ollama -h
(base) [root@cnki-31-199-1 jiayafei_linux]# ollama -h
Large language model runner
Usage:
ollama [flags]
ollama [command]
Available Commands:
serve Start ollama
create Create a model from a Modelfile
show Show information for a model
run Run a model
pull Pull a model from a registry
push Push a model to a registry
list List models
ps List running models
cp Copy a model
rm Remove a model
help Help about any command
Flags:
-h, --help help for ollama
-v, --version Show version information
bash

- ollama 如何同时 多个模型, 多进程
vim /etc/systemd/system/ollama.service
[Service]
Environment="OLLAMA_NUM_PARALLEL=4" #并行处理请求的数量
Environment="OLLAMA_MAX_LOADED_MODELS=4" #同时加载的模型数量
sudo systemctl daemon-reload
sudo systemctl restart ollama
加载一个模型
ollama run gemma:2b
加载另外一个模型
ollama run llama3:8b
bash


测试序号从0还是1开始,应是从0开始
测试编号从零开始。
测试编号从零开始。
$sudo vi /etc/systemd/system/ollama.service
[Service]
Environment="CUDA_VISIBLE_DEVICES=0,1"
systemctl daemon-reload
systemctl restart ollama
bash
- 修改模型的存储路径
mv ~/.ollama/models/* /Users/<username>/Documents/ollama_models 将以前的models移动到当前目录
bash
看上文。

10. 后台
后台模型
使用 tmux:
启动一个新的 tmux 会话:
tmux new -s ollama_session
在 tmux 会话中 ollama run:
ollama run deepseek-r1:70b
按下 Ctrl + B,然后按 D 分离会话。
重新连接到会话:
tmux attach -t ollama_session
测试:
from openai import OpenAI
client = OpenAI(
base_url='http://127.0.0.1:11434/v1/',
# 必需但被忽略
api_key='ollama',
)
chat_completion = client.chat.completions.create(
messages=[
{
'role': 'user',
'content': '你好',
}
],
model='deepseek-r1:70B',
)
print(chat_completion)

全部评论 (0)
还没有任何评论哟~
