当前位置: 首页 > news >正文

Open WebUI本地部署教程

文章目录

  • 1、系统环境配置
  • 2、源码下载
    • 2.1 github源码地址下载
  • 3、环境启动
    • 3.1 后端环境
    • 3.2 前端环境
  • 4、问题
    • 4.1 浏览器跨域问题
    • 4.2 all-MiniLM-L6-v2模型文件下载失败问题
    • 4.3 单独部署backend启动报错问题

1、系统环境配置

操作系统:windows/linux/macos
Python版本: Python 3.11+ (建议安装3.11版本,3.12及以上版本可能出现不兼容)
Nodejs版本:22.10.0 (建议安装22.11及以上版本)

2、源码下载

2.1 github源码地址下载

git clone https://github.com/open-webui/open-webui.git

3、环境启动

3.1 后端环境

进入 open-webui\backend 目录下,执行以下命令进行依赖安装

pip install -r requirements.txt

如果是本地测试,需修改open-webui\backend\open_webui\config.py文件中的CORS_ALLOW_ORIGIN参数,否则可能会出现跨域问题

# CORS_ALLOW_ORIGIN = os.environ.get("CORS_ALLOW_ORIGIN", "*").split(";")
CORS_ALLOW_ORIGIN = os.environ.get("CORS_ALLOW_ORIGIN", "http://localhost:5173").split(";")

windows环境下运行start_windows.bat 文件,Linux环境下执行sh start.sh命令

3.2 前端环境

进入 open-webui根目录下,创建环境配置文件
重命名.env.example 为.env
修改模型仓库地址:
OLLAMA_BASE_URL=‘此处替换为要使用的仓库地址,例如:http://10.57.149.9:11434’
最后执行以下命令

npm install
npm run dev 

浏览器中访问http://localhost:5173/即可

4、问题

由于部分依赖需要从外网环境下载,因此部署前尽量解决网络问题

4.1 浏览器跨域问题

使用chrome进行测试时可能会出现logo之类静态文件无法加载问题,可以在谷歌应用商店中安装Allow-Control-Allow-Origin,打开之后即可解决,firefox浏览器没有此类问题
在这里插入图片描述
在这里插入图片描述

4.2 all-MiniLM-L6-v2模型文件下载失败问题

执行脚本命令后,会自动从huggingface.co下载sentence-transformers模型文件all-MiniLM-L6-v2,服务器在国外,无法下载,所以先从国内镜像网站上(https://hf-mirror.com/)将模型和配置文件下载到本地。
在这里插入图片描述
修改open_webui/retrieval/utils.py文件

# model_repo_path = snapshot_download(**snapshot_kwargs)
# 替换为本地文件路径
model_repo_path = r'D:\code\code\arkham\all-MiniLM-L6-v2'

4.3 单独部署backend启动报错问题

启动backend时会去当前执行脚本所在目录的上一级去读取CHANGELOG.md(CHANGELOG.md文件在下载源码包的根目录下)文件,文件读取不到则会去当前工作目录下backend/open-webui/寻找,还是找不到则会抛异常,解决方法是将CHANGELOG.md拷贝到backend/open-webui/目录下即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/542521.html

相关文章:

  • Missing required prop: “maxlength“
  • dify本地部署
  • python学习一
  • git branch
  • 算法-图-数据结构(邻接矩阵)-BFS广度优先遍历
  • 数学建模之数学模型—2:非线性规划
  • unity学习51:所有UI的父物体:canvas画布
  • ctfshow做题笔记—栈溢出—pwn57~pwn60
  • 数据结构 1-2 线性表的链式存储-链表
  • ArcGIS Pro进行坡度与坡向分析
  • My first Android application
  • ZLMediaKi集群设置
  • Docker基础实践与应用举例
  • Innovus中快速获取timing path逻辑深度的golden脚本
  • 百度AI图片助手,免费AI去水印、画质修复、画面延展以及局部替换
  • 【前端】Axios AJAX Fetch
  • 测试面试题:以一个登录窗口为例,设计一下登录界面测试的思路和方法
  • Android之图片保存相册及分享图片
  • EX_25/2/24
  • ElasticSearch公共方法封装
  • JVM之JVM的组成
  • 贪心算法
  • Linux下安装中文输入法总结
  • 人工智能(AI):科技新纪元的领航者
  • c3p0、Druid连接池+工具类 Apache-DbUtils (详解!!!)
  • 鸿蒙开发深入浅出03(封装通用LazyForEach实现懒加载)
  • AWS - Redshift - 外部表读取 Parquet 文件中 timestamp 类型的数据
  • Ubuntu20.04之VNC的安装使用与常见问题
  • vue3学习3-route
  • C++:dfs,bfs各两则