Ollama用于在本地运行和部署大型语言模型(LLMs)的工具,可以非常方便的部署本地大模型
安装
Linux
curl -fsSL https://ollama.com/install.sh | sh
我是ubuntu系统安装,其他系统可以看项目的开源地址有写
GitHub - ollama/ollama: Get up and running with Llama 3, Mistral, Gemma, and other large language models.
docker安装
一键脚本
#!/bin/bash
#################################################################################
# 功能:自动部署Ollama(Docker方式,GPU)
# 说明:如果已安装了Docker,请注释掉 install_docker,避免重复安装
#################################################################################info(){echo -e "\033[34m 【`date '+%Y-%m-%d %H:%M:%S'`】\033[0m" "\033[35m$1\033[0m "
}install_docker(){
#!/bin/bash
info "安装依赖..."
yum -y install gcc
yum -y install gcc-c++##验证gcc版本
gcc -vinfo "安装Docker(指定版本:23.0.6)"
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O/etc/yum.repos.d/docker-ce.repo
##更新yum软件包索引
yum makecache fast## 安装docker ce cli
# 查看可安装版本:yum list docker-ce --showduplicates | sort -r
yum -y install docker-ce-23.0.6-1.el7 docker-ce-cli-23.0.6-1.el7info "启动Docker并验证"
systemctl enable docker && systemctl start docker
docker version## 创建加速器
#cd /etc/docker
#if [ ! -f "$daemon.json" ]; then
# touch "$daemon.json"
#else
# rm -rf daemon.json
# touch "$daemon.json"
#fi
#tee /etc/docker/daemon.json <<-'EOF'
#{
# "registry-mirrors": ["https://自己的镜像加速器地址"]
#}
#EOF
#systemctl daemon-reload
#systemctl restart dockerinfo "Docker(23.0.6)安装完毕!"
}# 安装 Ollama
install_Ollama(){info "参考IP地址:"$(hostname -I)read -p "请问,您当前服务器的内网IP地址是?:" inner_ipinner_ip="${inner_ip:-127.0.0.1}"curl -s -L https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo \| sudo tee /etc/yum.repos.d/nvidia-container-toolkit.reposudo yum install -y nvidia-container-toolkitsudo nvidia-ctk runtime configure --runtime=dockersudo systemctl restart dockerdocker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama --restart always ollama/ollamainfo "ollama部署完毕,开始下载qwen:0.5b模型..."docker exec -it ollama ollama run qwen:0.5b “你好”info "qwen:0.5b模型加载完成,开始部署webui界面..."docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=http://${inner_ip}:11434 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.nju.edu.cn/open-webui/open-webui:maineip=$(curl ifconfig.me/ip)info "部署完毕,正在启动WEBUI界面,大约5分钟后,请访问:http://${eip}:3000"
}install_docker
install_Ollama
上面是一键安装脚本
下载模型
ollama run llama3:70b
这个命令的意思是下载一个llama3的70b模型
模型库
Ollama 支持在 ollama.com/library 上获取的模型列表
以下是一些可下载的示例模型:
Model | Parameters | Size | Download |
---|---|---|---|
Llama 3 | 8B | 4.7GB | ollama run llama3 |
Llama 3 | 70B | 40GB | ollama run llama3:70b |
Mistral | 7B | 4.1GB | ollama run mistral |
Dolphin Phi | 2.7B | 1.6GB | ollama run dolphin-phi |
Phi-2 | 2.7B | 1.7GB | ollama run phi |
Neural Chat | 7B | 4.1GB | ollama run neural-chat |
Starling | 7B | 4.1GB | ollama run starling-lm |
Code Llama | 7B | 3.8GB | ollama run codellama |
Llama 2 Uncensored | 7B | 3.8GB | ollama run llama2-uncensored |
Llama 2 13B | 13B | 7.3GB | ollama run llama2:13b |
Llama 2 70B | 70B | 39GB | ollama run llama2:70b |
Orca Mini | 3B | 1.9GB | ollama run orca-mini |
LLaVA | 7B | 4.5GB | ollama run llava |
Gemma | 2B | 1.4GB | ollama run gemma:2b |
Gemma | 7B | 4.8GB | ollama run gemma:7b |
Solar | 10.7B | 6.1GB | ollama run solar |
注意:运行 7B 模型至少需要 8 GB 的 RAM,运行 13B 模型需要 16 GB,运行 33B 模型需要 32 GB。
模型存储位置
了解模型存储位置对于管理和备份模型至关重要。默认情况下,模型存储在以下位置:Linux:/var/lib/ollama/models
Windows:C:\ProgramData\Ollama\models
macOS:/Library/Application Support/Ollama/models
查看模型
ollama list
这个命令可以看已经下载的模型
chen@chen:~$ ollama list
NAME ID SIZE MODIFIED
medllama2:latest a53737ec0c72 3.8 GB 24 hours ago
更改模型下载路径
先创建一个用于存放模型目录
sudo mkdir /path/to/ollama/models
修改权限
sudo chown -R root:root /path/to/ollama/models
sudo chmod -R 775 /path/to/ollama/models
添加环境变量
sudo vim /etc/systemd/system/ollama.service
在[Service]
下面加入一行新的Environment
,新一行!
Environment="OLLAMA_MODELS=/path/to/ollama/models"
请替换上面的路径为自己服务器内的路径
安装WebUI
我是基于docker部署的,比较方便
docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=http://${inner_ip}:11434 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.nju.edu.cn/open-webui/open-webui:main
${inner_ip} 请替换为你自己服务器的ip
webui部署完成之后可能出现无法连接到ollama的情况,这是因为ollama默认绑定的ip是127.0.0.1
在ollama.service文件的[Service]
下面再加入一行新的Environment
,新一行!
Environment="OLLAMA_HOST=0.0.0.0:11434"
重启服务即可