1. ollama
本文介绍如何在容器云实例上运行ollama工具。
1.1. 创建ollama容器实例
首先,需要您创建一台RTX3090或者RTX4090规格的容器云实例,镜像请选择PyTorch -> 1.11.0 -> ollama-llama3。详见下图
容器实例创建完成后您可以通过WebSSH或者任意SSH客户端工具登录到该容器实例。
1.2. 更新ollama版本
默认情况下该ollama-llama3镜像已经为您提供了0.1.32版本,您可以通过如下命令自行更新ollama的版本.
切换到root用户
$ sudo su -
重新下载ollama,这个命令同时可以更新ollama到最新版本
# curl -fsSL https://ollama.com/install.sh | sh
1.3. 手工启动ollama服务
执行如下命令启动ollama服务
$ sudo su -
# export OLLAMA_MODELS=/home/pod/shared-public/models/ollama
# nohup ollama serve &
手工启动的ollama服务您需要执行如下命令终止
# pkill ollama
注意:
智算云平台默认在/home/pod/shared-public/models/ollama目录已经为您预下载了部分模型。
/home/pod/shared-public/models/ollama目录是只读目录,如果您需要进行量化、微调操作建议把目录修改为/home/pod/shared-nvme。
/home/pod/shared-nvme目录是您的共享目录。该目录默认大小为50GB,请在使用前确认模型大小。根据需要进行扩容。
1.4. 将ollama设置成开机自启动
由于容器实例提供的进程管理工具是supervisor,所以需要修改该工具的配置把ollama加入到开机自启动
切换到root用户
$ sudo su -
编辑supervisor配置文件
# vim /etc/supervisor/supervisord.conf
将如下内容新加到配置文件中,建议放在原有tensorboard配置之后
[program:ollama]
environment=OLLAMA_MODELS=/home/pod/shared-nvme/ollama
command = /usr/bin/ollama serve
autostart = true
autorestart = true
stopasgroup = true
killasgroup = true
redirect_stderr = true
由于容器实例系统盘容量有限并且无法扩容,所以建议将模型默认路径修改为共享存储路径。
OLLAMA_MODELS环境变量把模型文件路径指定到共享存储/home/pod/shared-nvme/ollama。
请下载模型前注意您共享存储的可用容量。
添加完成后保存退出
重新加载配置
# supervisorctl reload
配置完成。
2. 使用模型
2.1. 运行模型
以面壁科技推出的minicpm模型为例,其运行命令为
$ ollama run modelbest/minicpm-2b-dpo
注意:
由于网络原因,使用ollama run或者ollama pull可能会碰到拉取镜像很慢的情况,通常可以重试几次就可以解决该问题。
不同的模型对显存有不同的需求。如llama3 8B需要1卡24GB即可满足要求;llama3 70B需要2卡48GB才能满足要求。
具体您使用的模型需要多大显存请参照其官方文档。
2.2. 列出所有本地缓存模型
$ ollama list
结果如下图所示