大模型笔记01--基于ollama和open-webui快速部署chatgpt

大模型笔记01--基于ollama和open-webui快速部署chatgpt

介绍

近年来AI大模型得到快速发展,各种大模型如雨后春笋一样涌出,逐步融入各行各业。与之相关的各类开源大模型系统工具也得到了快速发展,包括 ollama 和 open-webui 这样的项目。
本文基于 ollama 和 open-webui,快速运行大模型并提供对应的web交互界面,让每个关注AI大模型的人员都能快速运行起自己的本地大模型。

部署&测试

安装ollama

直接通过curl命令安装

# curl -fsSL https://ollama.com/install.sh | sh

安装完成后可以通过 systemctl status ollama 查看服务状态 
# systemctl status ollama 
● ollama.service - Ollama Service
     Loaded: loaded (/etc/systemd/system/ollama.service; enabled; preset: enabl>
     Active: active (running) since Wed 2024-08-28 20:29:03 CST; 3 days ago
   Main PID: 1743 (ollama)
      Tasks: 15 (limit: 38363)
     Memory: 1.7G (peak: 1.8G)
        CPU: 21.202s
     CGroup: /system.slice/ollama.service
             └─1743 /usr/local/bin/ollama serve

如果需要调整 ollama的参数,我们可以通过更改ollama.service中的Environment来调整其定环境变量(每隔环境变量单独起一行),例如:
# vim /etc/systemd/system/ollama.service
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Environment="OLLAMA_NUM_PARALLEL=4"
Environment="CUDA_VISIBLE_DEVICES=0"
Environment="OLLAMA_MODELS=/data/xgDir/ollama_models"
Environment="OLLAMA_HOST=0.0.0.0"

其中 OLLAMA_NUM_PARALLEL表示并发量为4,CUDA_VISIBLE_DEVICES表示要用GPU显卡。

ollama 模型默认下载位置为: /usr/share/ollama/.ollama/models ,可以通过上述方式设置环境变量, 也可以按需新建一个软连接到数据盘,以避免过多占用系统盘空间。
如果原来的位置已有模型,然后通过环境变量迁移,那么需要将.ollama/models目录下的blobs  和manifests都同步移动到目标目录,同时确保目录目录用户属主为 ollama

安装后我们就可以下载、运行模型了,可以在 https://ollama.com/library 找到各类开源的模型, 如下图:
在这里插入图片描述
可以通过 ollama pull | list | run | ps | rm 等命令来拉取模型、查询本地模型、运行模型、查看正在运行的模型、删除模型。
在这里插入图片描述

运行open-webui

通过以上方法可以快速运行一个本地大模型,并且可以在终端上进行对话,为了进一步提高使用效率,我们通常会拉起一个客户端系统(web app或桌面app),ollama官方github推荐了很多种工具,此处以比较出名的Open WebUI为例。
在这里插入图片描述
最快捷的方式直接用docker安装,具体命令如下:

# docker run -d --network=host -v /home/xg/soft/ollama/open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main
然后访问 http://localhost:8080 

此处将数据目录挂载在 /home/xg/soft/ollama/open-webui ,实际使用的时候按需修改即可

常见报错: We couldn’t connect to ‘https://huggingface.co’

报错:
OSError: We couldn't connect to 'https://huggingface.co' to load this file, couldn't find it in the cached files and it looks like sentence-transformers/all-MiniLM-L6-v2 is not the path to a directory containing a file named config.json.
Checkout your internet connection or see how to run the library in offline mode at 'https://huggingface.co/docs/transformers/installation#offline-mode'.
No WEBUI_SECRET_KEY provided
由于国内网络无法直接访问 huggingface , 我们需要更改为国内能访问的域名 hf-mirror.com 
解决方法: 使用镜像站 -e HF_ENDPOINT=https://hf-mirror.com
参考: https://www.cnblogs.com/dajianshi/p/18118969

测试

当完成 ollama 和 open-webui的部署后,可以通过 127.0.0.1:8080 访问webui了,按需注册用户即可。
如下图,按需选择模型,然后就可以愉快的聊天了
在这里插入图片描述
在这里插入图片描述
笔者台式机 P2200显卡 5G显存,跑10B以下的模型基本没什么压力,输出比较流畅。15B及以上就有点压力。
笔记本 MX570显卡 2G显存,跑5B及以下的模型,基本没什么压力,输出比较流畅。8B及以上就明显感觉输出比较卡顿, 例如 qwen:14b每秒3-5个字。
使用腾讯云 Tesla T4 16G显卡,发现跑qwen:14B比较流畅,跑qwen:32B就有点卡(每秒3-5字)。
在测试qwen模型时候,可以明显感觉到8B及其以下流程性和语义完整性比较一般,14B及其以上的连贯性还不错,但对资源的消耗也比较高。

综上:为了兼顾速度和效果,推荐使用16G显存的机器跑10-20B的模型。

注意事项

  1. 除了基于 ollama 这种方式使用指定的大模型,还可以使用LM Studio等工具在本地快速运行大模型实现chatgpt。
  2. 如果想实现更多配置能力和自定义agent,也可以考虑基于 Fastgpt, autogen, dify 等来部署开发自己的大模型相关服务。
  3. 如果不想部署的话也可以直接体验IT厂商的大模型产品,例如文心一言、通义千问、Kimi智能助手、讯飞星火、豆包、智普清言、语聚AI , openai Chatgpt 等产品。

说明

系统:
ubuntu 24.04Desktop / ubuntu22.04 server
open-webui v0.1.124
ollama 0.3.9
参考文档:
ollama github
ollama 官网
hf-mirror.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

昕光xg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值