当前位置: 首页 > 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/目录下即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章:

  • 创建索引时,ES,分片和副本定义原则
  • w228高校教师电子名片系统的设计与实现
  • 我写了一个程序:禁止用户Drop数据库 | 禁止Drop database包括用户自身建的库也无权限删除
  • 2025年SCI一区智能优化算法:混沌进化优化算法(Chaotic Evolution Optimization, CEO),提供MATLAB代码
  • 2022年全国职业院校技能大赛网络系统管理赛项模块A:网络构建(样题6)-网络部分解析-附详细代码
  • 在 WPF 项目中集成 Hangfire
  • 使用AWS服务Amazon Bedrock构建大模型应用
  • CSS 使用white-space属性换行
  • 检测服务端口是否开放的常用方法
  • mysql的可重复读隔离级别解决了不可重复读和大部分幻读
  • 在 JavaScript 中,[](空数组)不是假值,它是“真值”(truthy)
  • 修改与 Git 相关的邮箱
  • 各种以太坊Rollup技术
  • 微信小程序-二维码绘制
  • PHP-create_function
  • 力扣3464. 正方形上的点之间的最大距离
  • 【jira】用到几张表
  • rust笔记9-引用与原始指针
  • 免费PDF工具
  • 算法与数据结构(不同路径)
  • 孙红雷做的二手车网站/山东潍坊疫情最新消息
  • 公众号外链网站怎么做/跨境电商
  • wordpress后台500错误/seo排名优化首页
  • 建设网站是主营成本吗/app推广实名认证接单平台
  • 外国扁平化网站/产品推广计划书怎么写
  • 建设银行网站解除绑定/长沙seo代理