当前位置: 代码网 > 科技>电脑产品>显卡 > Ubuntu系统下部署大语言模型:Ollama和OpenWebUI实现各大模型的人工智能自由

Ubuntu系统下部署大语言模型:Ollama和OpenWebUI实现各大模型的人工智能自由

2024年08月02日 显卡 我要评论
内存:32G硬盘: 512G SSD显卡: NVIDIA GeForce GTX 1060 6GB内网IP: 192.168.1.21。

之前在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更加流畅。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com