Ollama部署大模子并安装WebUi

打印 上一主题 下一主题

主题 527|帖子 527|积分 1581

Ollama用于在当地运行和部署大型语言模子(LLMs)的工具,可以非常方便的部署当地大模子
安装

Linux 

  1. 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安装

一键脚本
  1. #!/bin/bash
  2. #################################################################################
  3. # 功能:自动部署Ollama(Docker方式,GPU)
  4. # 说明:如果已安装了Docker,请注释掉 install_docker,避免重复安装                                                                 
  5. #################################################################################
  6. info(){
  7.   echo -e "\033[34m 【`date '+%Y-%m-%d %H:%M:%S'`】\033[0m" "\033[35m$1\033[0m "
  8. }
  9. install_docker(){
  10. #!/bin/bash
  11. info "安装依赖..."
  12. yum -y install gcc
  13. yum -y install gcc-c++
  14. ##验证gcc版本
  15. gcc -v
  16. info "安装Docker(指定版本:23.0.6)"
  17. wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O/etc/yum.repos.d/docker-ce.repo
  18. ##更新yum软件包索引
  19. yum makecache fast
  20. ## 安装docker ce cli
  21. # 查看可安装版本:yum list docker-ce --showduplicates | sort -r
  22. yum -y install docker-ce-23.0.6-1.el7 docker-ce-cli-23.0.6-1.el7
  23. info "启动Docker并验证"
  24. systemctl enable docker && systemctl start docker
  25. docker version
  26. ## 创建加速器
  27. #cd /etc/docker
  28. #if [ ! -f "$daemon.json" ]; then
  29. #  touch "$daemon.json"
  30. #else
  31. #  rm -rf daemon.json
  32. #  touch "$daemon.json"
  33. #fi
  34. #tee /etc/docker/daemon.json <<-'EOF'
  35. #{
  36. #        "registry-mirrors": ["https://自己的镜像加速器地址"]
  37. #}
  38. #EOF
  39. #systemctl daemon-reload
  40. #systemctl restart docker
  41. info "Docker(23.0.6)安装完毕!"
  42. }
  43. # 安装 Ollama
  44. install_Ollama(){
  45. info "参考IP地址:"$(hostname -I)
  46. read -p "请问,您当前服务器的内网IP地址是?:" inner_ip
  47. inner_ip="${inner_ip:-127.0.0.1}"
  48. curl -s -L https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo \
  49.     | sudo tee /etc/yum.repos.d/nvidia-container-toolkit.repo
  50. sudo yum install -y nvidia-container-toolkit
  51. sudo nvidia-ctk runtime configure --runtime=docker
  52. sudo systemctl restart docker
  53. docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama --restart always ollama/ollama
  54. info "ollama部署完毕,开始下载qwen:0.5b模型..."
  55. docker exec -it ollama ollama run qwen:0.5b “你好”
  56. info "qwen:0.5b模型加载完成,开始部署webui界面..."
  57. 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
  58. eip=$(curl ifconfig.me/ip)
  59. info "部署完毕,正在启动WEBUI界面,大约5分钟后,请访问:http://${eip}:3000"
  60. }
  61. install_docker
  62. install_Ollama
复制代码
上面是一键安装脚本

下载模子

  1. ollama run llama3:70b
复制代码
这个下令的意思是下载一个llama3的70b模子
模子库

Ollama 支持在 ollama.com/library 上获取的模子列表
以下是一些可下载的示例模子:
ModelParametersSizeDownloadLlama 38B4.7GBollama run llama3Llama 370B40GBollama run llama3:70bMistral7B4.1GBollama run mistralDolphin Phi2.7B1.6GBollama run dolphin-phiPhi-22.7B1.7GBollama run phiNeural Chat7B4.1GBollama run neural-chatStarling7B4.1GBollama run starling-lmCode Llama7B3.8GBollama run codellamaLlama 2 Uncensored7B3.8GBollama run llama2-uncensoredLlama 2 13B13B7.3GBollama run llama2:13bLlama 2 70B70B39GBollama run llama2:70bOrca Mini3B1.9GBollama run orca-miniLLaVA7B4.5GBollama run llavaGemma2B1.4GBollama run gemma:2bGemma7B4.8GBollama run gemma:7bSolar10.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
  检察模子 

  1. ollama list
复制代码
 这个下令可以看已经下载的模子
  1. chen@chen:~$ ollama list
  2. NAME                    ID                  SIZE          MODIFIED     medllama2:latest        a53737ec0c72        3.8 GB        24 hours ago       
复制代码
更改模子下载路径

先创建一个用于存放模子目次
  1. sudo mkdir /path/to/ollama/models
复制代码
修改权限
  1. sudo chown -R root:root /path/to/ollama/models
复制代码
  1. sudo chmod -R 775 /path/to/ollama/models
复制代码
添加环境变量
  1. sudo vim /etc/systemd/system/ollama.service
复制代码
在[Service]下面加入一行新的Environment,新一行!
  1. Environment="OLLAMA_MODELS=/path/to/ollama/models"
复制代码
 请替换上面的路径为自己服务器内的路径
这里有个细节,如果你之前已经下载了模子,想要切换路径,必要复制ollama目次到你必要的目次
如果直接使用mv,会导致目次属性错误,ollama无法正常下载模子
  1. Error: open /data/nvme/ollama/models/blobs/sha256-c1864a5eb19305c40519da12cc543519e48a0697ecd30e15d5ac228644957d12-partial-0: permission denied
复制代码
这里明显显示的是权限错误 permission denied
如果你已经直接使用mv移动了,可以使用chwon 来指定ollama的models目次所属为ollamallama
  1. sudo chown -R  ollama:ollama  /data/nvme/ollama/models/
复制代码
想要在使用mv移动的时间保持目次属性必要再mv的基础上加上 -r 参数
开启flash attention 

flash attention 可以显著减少注意力机制盘算的时间,使得Transformer模子在训练和推理时可以或许更快地处置惩罚大量数据,而且它通过优化内存访问模式,减少了盘算过程中的内存占用。这不仅有助于低落内存开销,还减少了盘算过程中的内存带宽瓶颈。
通过在ollama.service 这个文件中的[Service]下面加入一行新的Environment,新一行!
  1. Environment="OLLAMA_FLASH_ATTENTION=1"
复制代码
当你的上下文越长效果越明显
安装WebUI

我是基于docker部署的,比较方便
  1. 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,新一行!
  1. Environment="OLLAMA_HOST=0.0.0.0:11434"
复制代码
重启服务即可

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

老婆出轨

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表