AI - 人工智能;Ollama大模型工具;Java之SpringAI(三)
鉴于使用Ollama的命令行交互不是很方便,所以我们需要另一个开源的WebUI,搭建一个能通过浏览器访问的界面;Ollama的Web & Desktop非常多,比较流行的是 Open WebUI
本文按照Windows系统下使用Docker方式来安装Open WebUI,源码部署安装可以参考文档自行部署
Window下使用Docker推荐使用Docker Desktop; Docker Desktop是一款适用于Windows操作系统的桌面应用,它为开发人员提供了一个界面化操作Docker的环境,以便在本地环境中轻松创建、构建和运行Docker容器
一、Docker Desktop
1、Windows系统下Docker Desktop的安装
官网下载安装包:https://www.docker.com/products/docker-desktop/
2、安装运行Docker Desktop
下载完成之后点击安装,默认安装路径 C:\Program Files\Docker\Docker
点开运行,接受默认的配置
可以注册账号,或者直接游客身份运行
点进去之后,调查可以跳过
启动之后页面情况显示如下:
如遇Docker Desktop显示 “Docker Engine stopped”,参考文章
Docker - Docker Desktop启动显示“Docker Engine stopped”
资源默认存放路径:C:\Users\allen\AppData\Local\Docker\wsl;点击设置---->Resources,修改资源下载存储路径
启动终端,输入命令查看
docker ps
二、Open WebUI
Open WebUI是一个可扩展、功能丰富、用户友好的自托管WebUI,它支持完全离线操作,支持各种LLM(Large Language Model)运行程序,包括Ollama和OpenAI兼容的API
Open WebUI Github:https://github.com/open-webui/open-webui
Open WebUI 官网:https://www.openwebui.com/
搭建部署Open WebUI有两种方式:
1、Docker方式:(官方推荐的方式)
2、源码部署安装方式:(文档: https://docs.openwebui.com/getting-started/)
1、在docker中运行Open WebUI
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v D:\SoftData\Open-WebUI:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
这是一个 docker run 命令,用于启动一个新的 Docker 容器,下面是这个命令各个部分的解释:
docker run:这是 Docker 的命令,用于从指定的镜像启动一个新的容器;
-d:表示在“分离”模式下运行容器,即后台运行;
-p 3000:8080:端口映射,表示将宿主机的3000端口映射到容器的8080端口,当你访问宿主机的3000端口时,实际上会访问容器内的8080端口;
--add-host=host.docker.internal:host-gateway:这个选项向容器的 /etc/hosts 文件中添加一条记录,这通常用于让容器能够解析到宿主机的名称,并且将其 IP 地址设置为宿主机的网关地址,这在某些网络配置中很有用,尤其是当容器需要知道宿主机的地址时;
-v D:\SoftData\Open-WebUI:/app/backend/data:卷挂载,这表示将宿主机的 D:\SoftData\Open-WebUI 目录挂载到容器内的 /app/backend/data 目录,这样,容器和宿主机之间可以共享这个目录中的数据;
--name open-webui:为容器指定一个名称,这里是 open-webui;
--restart always:这个选项告诉 Docker 在容器退出时总是自动重启它,无论容器是因为何种原因退出,它都会自动重启;
ghcr.io/open-webui/open-webui:main:这是你要运行的 Docker 镜像的完整名称,ghcr.io 是 GitHub Container Registry 的地址,open-webui/open-webui 是镜像的仓库和名称,main是标签,通常表示该镜像的最新或主分支版本;
如遇Docker Desktop拉取镜像很慢,可配置阿里云镜像加速器,参考文章
https://blog.csdn.net/MinggeQingchun/article/details/143575705
下载完成之后,查看Docker Desktop中容器Containers和Images
2、界面操作
打开界面,网页输入地址:http://localhost:3000/
三、Lobe Chat
官网:https://lobehub.com/
Github:https://github.com/lobehub/lobe-chat
Built for you the Super Individual (专为你打造的超级个人)
现代化设计的开源 ChatGPT/LLMs 聊天应用与开发的UI框架;
支持语音合成、多模态、可扩展的(function call)插件系统;
一键免费拥有你自己的 ChatGPT/Gemini/Claude/Ollama 应用;
1、Lobe Chat 部署
1、使用 Vercel、Zeabur 或 Sealos 部署
2、使用 Docker 部署
docker run -d -p 3210:3210 -e OPENAI_API_KEY=sk-xxxx -e ACCESS_CODE=lobe66 --name lobe-chat lobehub/lobe-chat
完整的部署文档:https://lobehub.com/zh/docs/self-hosting/start
2、界面操作
打开界面,网页输入地址:http://localhost:3210/
(1)选择大模型
(2)语言模型选择API Key和API代理地址
(3)设置Ollama服务器地址以及大模型类型