Ubuntu系统下部署大语言模型:Ollama和OpenWebUI实现各大模型的人工智能自由
创始人
2025-01-16 12:04:48
0次

之前在window下安装过 Ollama和OpenWebUI搭建本地的人工智能web项目(可以看我之前写的文章),无奈电脑硬件配置太低,用qwen32b就很卡,卡出PPT了,于是又找了一台机器安装linux系统,在linux系统下测试一下速度能否可以快一些。

系统硬件介绍

Ubuntu 22.04.4 LTS

CPU: i5-10400F

内存:32G

硬盘: 512G SSD

显卡: NVIDIA GeForce GTX 1060 6GB

内网IP: 192.168.1.21

ubuntu-Ollama-OpenWebUI

下载 Ollama

访问下载: https://ollama.com/

image-20240517160214023

安装Ollama

方法1、命令行下载安装(耗时长)

安装命令:

$ sudo apt  install curl  $ curl -fsSL https://ollama.com/install.sh | sh 

image-20240517160657340

缺点: 国内网络环境要等很久

方法2 , 手动下载安装

1、手动下载 https://ollama.com/install.sh 这个文件

$ sudo mkdir ollama cd ollama $ sudo wget https://ollama.com/install.sh 

2、注释掉下载部分 curl xxxx 手动下载ollama-linux-{ARCH}

$ sudo vim install.sh  修改文件: status "Downloading ollama..." #curl --fail --show-error --location --progress-bar -o $TEMP_DIR/ollama "https://ollama.com/download/ollama-linux-${ARCH}${VER_PARAM}" 

我电脑intel/amd cpu 所以 {ARCH} = amd64
浏览器下载 https://ollama.com/download/ollama-linux-amd64 当然科学上网速度更快哟。 放在 install.sh 同目录下

3、注释掉 #$SUDO install -o0 -g0 -m755 $TEMP_DIR/ollama $BINDIR/ollama

改为下面一行:

$ sudo vim install.sh  修改文件: status "Installing ollama to $BINDIR..." $SUDO install -o0 -g0 -m755 -d $BINDIR #$SUDO install -o0 -g0 -m755 $TEMP_DIR/ollama $BINDIR/ollama $SUDO install -o0 -g0 -m755 ./ollama-linux-amd64  $BINDIR/ollama 

4 运行 install.sh ,安装

sh  ./install.sh 

image-20240517171750382

image-20240517171944028

重启电脑

配置模型下载路径

cd  sudo vim .bashrc  sudo mkdir -p /home/star/ollama/ollama_cache 

然后添加一行 配置 OLLAMA_MODELS 环境变量自定义路径

### ollama model dir 改为自己的路径 # export OLLAMA_MODELS=/path/ollama_cache export OLLAMA_MODELS=/home/star/ollama/ollama_cache  

如果开始没配置OLLAMA_MODELS ,默认路径是/usr/share/ollama/.ollama/models

启动ollama服务

# ollama --help Large language model runner  Usage:   ollama [flags]   ollama [command]  Available Commands:   serve       Start ollama   create      Create a model from a Modelfile   show        Show information for a model   run         Run a model   pull        Pull a model from a registry   push        Push a model to a registry   list        List models   ps          List running models   cp          Copy a model   rm          Remove a model   help        Help about any command  Flags:   -h, --help      help for ollama   -v, --version   Show version information  Use "ollama [command] --help" for more information about a command. 

提示

star@star-ai:~$ ollama serve Couldn't find '/home/star/.ollama/id_ed25519'. Generating new private key. Your new public key is:   ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPmYsSi6aIsyhC4EHEsCdBtSOqnfKmNVSf0Ofz9sVzyB  Error: listen tcp 127.0.0.1:11434: bind: address already in use  

说明已经运行

修改ollama端口

vim /etc/systemd/system/ollama.service 在 [Service] 下添加  Environment="OLLAMA_HOST=0.0.0.0"  cat /etc/systemd/system/ollama.service [Unit] Description=Ollama Service After=network-online.target  [Service] ExecStart=/usr/local/bin/ollama serve User=ollama Group=ollama Restart=always RestartSec=3 Environment="PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin" Environment="OLLAMA_HOST=0.0.0.0"  [Install] WantedBy=default.target 

重新加载配置,重启ollama

systemctl daemon-reload  systemctl restart ollama  关闭服务 systemctl stop ollama 启动服务 systemctl start ollama 

运行qwen大模型

ollama run  qwen 

image-20240517173411382

安装docker

一键安装脚本

sudo curl -sSL https://get.docker.com/ | sh  安装完成之后 star@star-ai:~$ sudo docker --version Docker version 26.1.3, build b72abbb  

安装Open WebUI

Open WebUI是一个用于在本地运行大型语言模型(LLM)的开源Web界面。

参考: https://docs.openwebui.com/getting-started/#quick-start-with-docker-

docker安装open-webui

$ sudo docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main 

要运行支持 Nvidia GPU 的 Open WebUI,请使用以下命令:

$ sudo docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda 

改国内的地址

$ sudo docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always  registry.cn-shenzhen.aliyuncs.com/funet8/open-webui:cuda 

报错:

sudo docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always  registry.cn-shenzhen.aliyuncs.com/funet8/open-webui:cuda 254b47e7994b2f0087ce0058918621523b39cf9b0e89018777c0cf98943ba2d1 docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]. 

ubuntu识别不了我的显卡

$ sudo nvidia-smi Fri May 17 18:37:15 2024        +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 550.54.15              Driver Version: 550.54.15      CUDA Version: 12.4     | |-----------------------------------------+------------------------+----------------------+ | GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC | | Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. | |                                         |                        |               MIG M. | |=========================================+========================+======================| |   0  NVIDIA GeForce GTX 1060 6GB    Off |   00000000:01:00.0 Off |                  N/A | | 40%   33C    P8              6W /  120W |      65MiB /   6144MiB |      0%      Default | |                                         |                        |                  N/A | +-----------------------------------------+------------------------+----------------------+                                                                                           +-----------------------------------------------------------------------------------------+ | Processes:                                                                              | |  GPU   GI   CI        PID   Type   Process name                              GPU Memory | |        ID   ID                                                               Usage      | |=========================================================================================| |    0   N/A  N/A      1030      G   /usr/lib/xorg/Xorg                             56MiB | |    0   N/A  N/A      1109      G   /usr/bin/gnome-shell                            4MiB | +-----------------------------------------------------------------------------------------+ 

安装nvidia-container-toolkit:
确保你已经安装了nvidia-container-toolkit,并配置Docker以使用该工具包:

sudo apt-get update sudo apt-get install -y nvidia-container-toolkit sudo systemctl restart docker 

检查Docker默认运行时配置:
确保Docker的默认运行时设置为nvidia。编辑Docker的配置文件(通常位于/etc/docker/daemon.json),并添加或修改如下内容:

sudo vim /etc/docker/daemon.json 添加:  {   "default-runtime": "nvidia",   "runtimes": {     "nvidia": {       "path": "nvidia-container-runtime",       "runtimeArgs": []     }   } } 编辑完文件后,重启Docker服务: sudo systemctl restart docker  

检查NVIDIA Container Runtime兼容性:
确保你的NVIDIA Container Runtime版本与Docker版本兼容。可以通过以下命令查看版本:

sudo docker version  nvidia-container-runtime --version  

完成上述步骤后,再次尝试运行你的Docker命令。如果问题仍然存在,请提供更多的系统信息和日志,以便进一步诊断问题。

sudo docker start open-webui 

image-20240517184705558

登录open-webui

用IP+端口访问

image-20240517184836945

修改语言为中文

OpenWebUI默认是英文的,所以修改语言为简体中文。

image-20240518130431610

OpenWebUI不能连接Ollama

报错:WebUI could not connect to ollama

image-20240518130617215

修改地址:http://192.168.1.21:11434

image-20240518163725720

再下载千问的模型 qwen

image-20240518164005249

下载大模型

ollama官方的模型仓库参见这里:https://ollama.com/library

image-20240518165100596

根据自己的CPU和GPU选择合适的大模型,否则会很卡。

比如测试用的1060使用qwen:72b就很卡,问一个问题要等很久,几乎是不能用的状态。

阿里巴巴的大模型: ollama run  qwen ollama run qwen:14b ollama run qwen:32b ollama run qwen:72b ollama run qwen:110b   # 110b 表示该模型包含了 1100 亿(110 billion)个参数   脸书大模型: ollama run llama2 ollama run llama3 ollama run llama3:8b  谷歌的大模型: ollama run gemma  微软的大模型 ollama run phi3  

删除模型

显示所有模型 # ollama list  删除模型 # ollama rm llama3:latest 

image-20240518162719946

ubuntu查看GPU负载

nvidia-smi 

确实在ubuntu20.04系统下确实比window10系统使用Ollama更加流畅。

相关内容

热门资讯

实测交流透视挂!宝玛大厅ai智... 实测交流透视挂!宝玛大厅ai智能透视挂教程,宝玛大厅破解软件经验(本来有挂辅助)1、每一步都需要思考...
总算了解辅助器!朱雀吴江三缺一... 总算了解辅助器!朱雀吴江三缺一ai智能透视辅助挂技巧,朱雀吴江三缺一好像是有挂(有辅助挂细节)朱雀吴...
今日公布透视!九五至尊大厅ai... 今日公布透视!九五至尊大厅ai智能透视插件,九五至尊大厅有没有透视挂窍门(切实有挂技术)1、在九五至...
玩家必看科普开挂!聚闲麻将ai... 玩家必看科普开挂!聚闲麻将ai智能透视辅助挂软件,聚闲麻将总是真的有挂(有辅助挂方式)聚闲麻将能透视...
据报道开挂!旅游娱乐ai智能开... 据报道开挂!旅游娱乐ai智能开挂工具,旅游娱乐辅助工具演示(一直有挂教学)1、全新机制【旅游娱乐ai...
一分钟揭秘开挂!决胜朋来麻将a... 一分钟揭秘开挂!决胜朋来麻将ai智能透视辅助挂教程,决胜朋来麻将真是真的是有挂(有辅助挂总结)1、首...
如何分辨真伪透视!红牛ai智能... 如何分辨真伪透视!红牛ai智能透视攻略,红牛是不是有挂经验(真是有挂技术)1、操作简单,无需红牛手机...
2分钟细说辅助器!江湖大庆麻将... 2分钟细说辅助器!江湖大庆麻将ai智能透视辅助挂攻略,江湖大庆麻将竟然是真的有挂(有辅助挂头条)1、...
总算清楚透视挂!老夫子厅ai智... 总算清楚透视挂!老夫子厅ai智能透视挂技巧,老夫子厅怎么开挂课程(好像发现有挂)老夫子厅破解侠是真的...
解密关于辅助!菜鸟麻将ai智能... 解密关于辅助!菜鸟麻将ai智能透视辅助挂脚本,菜鸟麻将总是存在有挂(有辅助挂存在)1、用户打开应用后...