Ollama部署大模型并安装WebUi

2024-06-22 02:36

本文主要是介绍Ollama部署大模型并安装WebUi,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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 上获取的模型列表

以下是一些可下载的示例模型:

ModelParametersSizeDownload
Llama 38B4.7GBollama run llama3
Llama 370B40GBollama run llama3:70b
Mistral7B4.1GBollama run mistral
Dolphin Phi2.7B1.6GBollama run dolphin-phi
Phi-22.7B1.7GBollama run phi
Neural Chat7B4.1GBollama run neural-chat
Starling7B4.1GBollama run starling-lm
Code Llama7B3.8GBollama run codellama
Llama 2 Uncensored7B3.8GBollama run llama2-uncensored
Llama 2 13B13B7.3GBollama run llama2:13b
Llama 2 70B70B39GBollama run llama2:70b
Orca Mini3B1.9GBollama run orca-mini
LLaVA7B4.5GBollama run llava
Gemma2B1.4GBollama run gemma:2b
Gemma7B4.8GBollama run gemma:7b
Solar10.7B6.1GBollama 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"

重启服务即可

这篇关于Ollama部署大模型并安装WebUi的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1083049

相关文章

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A

前端Visual Studio Code安装配置教程之下载、汉化、常用组件及基本操作

《前端VisualStudioCode安装配置教程之下载、汉化、常用组件及基本操作》VisualStudioCode是微软推出的一个强大的代码编辑器,功能强大,操作简单便捷,还有着良好的用户界面,... 目录一、Visual Studio Code下载二、汉化三、常用组件1、Auto Rename Tag2

Java领域模型示例详解

《Java领域模型示例详解》本文介绍了Java领域模型(POJO/Entity/VO/DTO/BO)的定义、用途和区别,强调了它们在不同场景下的角色和使用场景,文章还通过一个流程示例展示了各模型如何协... 目录Java领域模型(POJO / Entity / VO/ DTO / BO)一、为什么需要领域模

MongoDB搭建过程及单机版部署方法

《MongoDB搭建过程及单机版部署方法》MongoDB是一个灵活、高性能的NoSQL数据库,特别适合快速开发和大规模分布式系统,本文给大家介绍MongoDB搭建过程及单机版部署方法,感兴趣的朋友跟随... 目录前言1️⃣ 核心特点1、文档存储2、无模式(Schema-less)3、高性能4、水平扩展(Sh

深入理解Redis线程模型的原理及使用

《深入理解Redis线程模型的原理及使用》Redis的线程模型整体还是多线程的,只是后台执行指令的核心线程是单线程的,整个线程模型可以理解为还是以单线程为主,基于这种单线程为主的线程模型,不同客户端的... 目录1 Redis是单线程www.chinasem.cn还是多线程2 Redis如何保证指令原子性2.

Docker + Redis 部署集群的实现步骤

《Docker+Redis部署集群的实现步骤》本文详细介绍了在三台服务器上部署高可用Redis集群的完整流程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋... 目录一、环境准备1. 服务器规划(3 台服务器)2. 防火墙配置(三台服务器均执行)3. 安装 docke

win10安装及配置Gradle全过程

《win10安装及配置Gradle全过程》本文详细介绍了Gradle的下载、安装、环境变量配置以及如何修改本地仓库位置,通过这些步骤,用户可以成功安装并配置Gradle,以便进行项目构建... 目录一、Gradle下载1.1、Gradle下载地址1.2、Gradle下载步骤二、Gradle安装步骤2.1、安

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景