ubuntu系统ollama及大模型离线部署
一、条件
·ubuntu22.04(无GPU)
·x68架构
·无网络
二、总流程
ollama部署 --> 大模型部署 --> dify关联调用
三、步骤
(一)ollama部署[1]
1.下载ollama
根据cpu型号下载安装对应ollama包:
https://github.com/ollama/ollama/releases/
由于我的架构是x86所以下载了ollama-linux-amd64.tgz:
2.转移到无网环境后解压ollama-linux-amd64.tgz文件
sudo tar -xzvf ollama-linux-arm64.tgz -C /usr/local/bin
3.添加权限(根据实际情况)
chmod +x /usr/bin/ollama
4.创建用户(根据实际情况)
useradd -r -s /bin/false -m -d /usr/share/ollama ollama
5.启动ollama:
ollama serve
6.配置 ollama
打开文件:
vim /etc/systemd/system/ollama.service
写入内容(仅供参考):
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
#代表让ollama能识别到第几张显卡
Environment="CUDA_VISIBLE_DEVICES=0,1"
#这几张卡均衡使用
Environment="OLLAMA_SCHED_SPREAD=1"
#模型一直加载, 不自动卸载
Environment="OLLAMA_KEEP_ALIVE=-1"
#配置远程访问
Environment="OLLAMA_HOST=0.0.0.0"
#配置跨域请求
Environment="OLLAMA_ORIGINS=*"
#配置OLLAMA的模型存放路径,默认路径是/usr/share/ollama/.ollama/models/
Environment="OLLAMA_MODELS=/data/soft/ollama/.ollama/models"
[Install]
WantedBy=default.target
我写的是:
注意下面信息是否填写正确:
·User=root
·Group=root
·Environment=“OLLAMA_MODELS=/root/.ollama/models”
(ollama 默认端口为 11434,这个过程中也会提示端口信息)
7.创建文件
上一步提到的/root/.ollama/models文件,并设置权限
这个文件地址很重要,涉及到是否通过dify调用到大模型
sudo mkdir -p /root/.ollama/models
sudo chown -R root:root /root/.ollama
8.更新、重启
sudo systemctl daemon-reload
sudo systemctl start ollama
9.查看ollama版本
ollama --version
如果显示版本信息就是安装好了
(二)模型部署[2]
说明:由于按照[1]的方法直接下载gguf文件部署可能会出现dify无法直接访问到ollama地址的情况,所以采用在有网机器上先pull模型再迁移的方法
1.在有网并且有ollama的电脑上执行模型拉取命令:
2.找到.ollama/model下的两个文件:./blobs和./manifests
拉取下来一般在C:\Users\wangzun.ollama\models这个路径下找到:
3.确认模型和迁移模型
确认C:\Users\wangzun.ollama\models\manifests\registry.ollama.ai\library这个路径下的模型名是你刚刚拉取的模型deepseek-r1
如下是刚刚拉取的模型名没对上号(qwen7B_lora_q4是我以前拉取的模型)
这个问题的解决方法是:
“在 Windows 系统中,右键点击 “此电脑”,选择 “属性”,点击 “高级系统设置”,在弹出的窗口中点击 “环境变量”。在 “系统变量” 或 “用户变量” 的 “Path” 变量中,查看是否有ollama 的安装目录路径。”然后我的path是:
就在这个路径下找到了(确认C:\Users\wangzun.ollama\models\manifests\registry.ollama.ai\library下有deepseek-r1):
就是这两个文件!!!如果这个路径下你只拉取了deepseek-r1:7b这一个模型的话,直接迁移 ./blobs和./manifests文件到无网机器的/root/.ollama/models文件夹下:
4.在无网机器上启动模型:
更新:
systemctl daemin-reload
启动:
systemctl restart ollama.service
查看状态:
systemctl status ollama.service
看到active就是启动了
查看模型列表:
ollama list
一般测试:
ollama run deepseek-r1:7b
注意:deepseek-r1:7b是ollama list下的模型名,7b不能漏。
上述过程参考:
(三)dify连接大模型
在ollama供应商界面点击添加模型,模型名称就是deepseek-r1:7b,URL就是ollama部署地址,端口为ollama默认端口11434
点击保存就可以通过dify使用大模型了。
参考教程:
[1]https://zhuanlan.zhihu.com/p/23377266873
[2]https://juejin.cn/post/7480441580060311587
更多推荐


所有评论(0)