容器云使用指南
最佳实践
工具使用
ollama

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
 

结果如下图所示