一行代码让你免魔法部署Open-WebUI

Open WebUI 简介

Open WebUI(原名Ollama WebUI)是一个为语言模型(LLMs)设计的友好Web用户界面,支持包括Ollama和OpenAI兼容API在内的多种LLM运行器。项目旨在为用户提供一个直观、响应式、快速且易于安装的聊天界面。

一行代码让你免魔法部署Open-WebUI

Open WebUI 特性 ⭐

  • • 🖥️ 直观界面:我们的聊天界面灵感来自于 ChatGPT,确保了用户友好的体验。

  • • 📱 响应式设计:在桌面和移动设备上都能享受无缝体验。

  • • ⚡ 快速响应:享受快速且响应迅速的性能。

  • • 🚀 轻松设置:使用 Docker 或 Kubernetes (kubectl, kustomize 或 helm) 无缝安装,享受无忧体验。

  • • 💻 代码语法高亮:通过我们的语法高亮特性享受增强的代码可读性。

  • • ✒️🔢 全面支持 Markdown 和 LaTeX:通过全面的 Markdown 和 LaTeX 功能提升你的 LLM 体验,丰富交互。

  • • 📚 本地 RAG 集成:通过开创性的检索增强生成(RAG)支持,深入未来的聊天交互。这项特性将文档交互无缝集成到你的聊天体验中。你可以直接将文档加载到聊天中,或轻松将文件添加到你的文档库中,使用提示中的 # 命令轻松访问它们。在其 alpha 阶段,可能会出现偶尔的问题,因为我们正在积极改进和增强这项特性,以确保最佳性能和可靠性。

  • • 🌐 网页浏览能力:使用 # 命令后跟 URL 将网站无缝集成到你的聊天体验中。这项特性允许你直接将网页内容纳入你的对话中,增强你的互动的丰富性和深度。

  • • 📜 预设提示支持:使用聊天输入中的 / 命令即时访问预设提示。轻松加载预定义的对话启动器,加速你的互动。通过 Open WebUI 社区[1] 集成轻松导入提示。

  • • 👍👎 RLHF 注释:通过点赞和点踩赋予你的消息力量,便于创建用于人类反馈强化学习(RLHF)的数据集。利用你的消息来训练或微调模型,同时确保本地保存数据的保密性。

  • • 🏷️ 对话标记:轻松分类和定位特定聊天,以便快速参考和简化数据收集。

  • • 📥🗑️ 下载/删除模型:直接从网页 UI 轻松下载或移除模型。

  • • ⬆️ GGUF 文件模型创建:直接从网页 UI 上传 GGUF 文件轻松创建 Ollama 模型。简化的流程,提供从你的机器上传或从 Hugging Face 下载 GGUF 文件的选项。

  • • 🤖 多模型支持:无缝切换不同的聊天模型,进行多样化的互动。

  • • 🔄 多模态支持:无缝与支持多模态互动的模型互动,包括图片(例如,LLava)。

  • • 🧩 模型文件构建器:通过网页 UI 轻松创建 Ollama 模型文件。创建和添加角色/代理,自定义聊天元素,并通过 Open WebUI 社区[2] 集成轻松导入模型文件。

  • • ⚙️ 多模型对话:轻松与多个模型同时互动,利用它们的独特优势获得最佳响应。通过并行利用多样化的模型集增强你的体验。

  • • 💬 协作聊天:通过无缝地组织群聊,利用多个模型的集体智能。使用 @ 命令指定模型,在你的聊天界面内启用动态多样的对话。沉浸在编织进你的聊天环境中的集体智能中。

  • • 🔄 再生历史访问:轻松回顾和探索你的整个再生历史。

  • • 📜 聊天历史:轻松访问和管理你的对话历史。

  • • 📤📥 导入/导出聊天历史:无缝地将你的聊天数据移入和移出平台。

  • • 🗣️ 语音输入支持:通过语音交互与你的模型互动;享受直接与模型对话的便利。此外,探索在沉默3秒后自动发送语音输入的选项,以获得流畅的体验。

  • • ⚙️ 高级参数的精细控制:通过调整如温度等参数,并定义你的系统提示,将对话定制到你的特定偏好和需求,获得更深层次的控制。

  • • 🎨🤖 图像生成集成:使用 AUTOMATIC1111 API (本地) 和 DALL-E 无缝集成图像生成能力,用动态视觉内容丰富你的聊天体验。

  • • 🤝 OpenAI API 集成:无缝集成 OpenAI 兼容的 API,与 Ollama 模型一起进行多功能对话。自定义 API 基础 URL 以链接 LMStudio, Mistral, OpenRouter 等

  • • ✨ 多个 OpenAI 兼容 API 支持:无缝集成和定制各种 OpenAI 兼容的 API,增强你的聊天互动的多功能性。

  • • 🔗 外部 Ollama 服务器连接:通过配置环境变量,无缝链接到托管在不同地址的外部 Ollama 服务器。

  • • 🔀 多个 Ollama 实例负载均衡:轻松将聊天请求分布在多个 Ollama 实例上,以提高性能和可靠性。

  • • 👥 多用户管理:通过我们直观的管理面板轻松监督和管理用户,简化用户管理流程。

  • • 🔐 **基于角色的访问控制 (RBAC)**:确保通过限制权限安全访问;只有授权的个人才能访问你的 Ollama,而独家模型创建/拉取权限则保留给管理员。

  • • 🔒 后端反向代理支持:通过 Open WebUI 后端与 Ollama 之间的直接通信加强安全性。这个关键特性消除了在 LAN 上暴露 Ollama 的需要。从网页 UI 发送到 ‘/ollama/api’ 路由的请求将从后端无缝重定向到 Ollama,增强了整个系统的安全性。

  • • 🌟 持续更新:我们致力于通过定期更新和新功能改进 Open WebUI。

安装指南

Open WebUI提供了多种安装方法,包括Docker、Docker Compose、Kustomize和Helm。 

但不管你使用那种安装方法,都绕不过从huggingface.co 下载whisper模型,也行你运行半天,最后卡在这里,报错退出,

RUN python -c "import os; from faster_whisper import WhisperModel; WhisperModel(os.environ['WHISPER_MODEL'], device='cpu', compute_type='int8', download_root=os.environ['WHISPER_MODEL_DIR'])"

这时候就需要这句神奇的命令了,

ENV HF_ENDPOINT "https://hf-mirror.com"

这句话的意思是从https://hf-mirror.com 镜像,而不是https://huggfacing.co 官网下载所需的模型。

如果你想npm 以及 Python包安装环节速度更快些,可以这样做

RUN  npm config set registry https://mirrors.huaweicloud.com/repository/npm/
RUN   pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

pip 镜像有多个可选,具体哪个速度快,每一个人不同,这里把几个镜像都放这里,你可以根据需要选择

https://pypi.tuna.tsinghua.edu.cn/simple
https://pypi.doubanio.com/simple/
https://mirrors.aliyun.com/pypi/simple/
https://mirrors.ustc.edu.cn/pypi/web/simple

npm 的镜像也有比较多的选择

淘宝 NPM 镜像:https://registry.npm.taobao.org
阿里云 NPM 镜像:https://npm.aliyun.com
腾讯云 NPM 镜像:https://mirrors.cloud.tencent.com/npm/
华为云 NPM 镜像:https://mirrors.huaweicloud.com/repository/npm/
网易 NPM 镜像:https://mirrors.163.com/npm/
中国科学技术大学开源镜像站:http://mirrors.ustc.edu.cn/
清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/

自行根据需要选择一个快的镜像。

修改后的Dockerfile,

# syntax=docker/dockerfile:1

FROM node:alpine as build
ENV NPM_REGISTRY "https://mirrors.huaweicloud.com/repository/npm/"

WORKDIR /app

# wget embedding model weight from alpine (does not exist from slim-buster)
RUN wget "https://chroma-onnx-models.s3.amazonaws.com/all-MiniLM-L6-v2/onnx.tar.gz" -O - | 
    tar -xzf - -C /app
RUN  npm config set registry ${NPM_REGISTRY}

COPY package.json package-lock.json ./
RUN npm ci

COPY . .
RUN npm run build


FROM python:3.11-slim-bookworm as base

ENV ENV=prod
ENV PORT ""

ENV OLLAMA_API_BASE_URL "/ollama/api"

ENV OPENAI_API_BASE_URL ""
ENV OPENAI_API_KEY ""

ENV WEBUI_SECRET_KEY ""

ENV SCARF_NO_ANALYTICS true
ENV DO_NOT_TRACK true

ENV HF_ENDPOINT "https://hf-mirror.com"
ENV PIP_REPO "https://mirrors.aliyun.com/pypi/simple/"

#Whisper TTS Settings
ENV WHISPER_MODEL="base"
ENV WHISPER_MODEL_DIR="/app/backend/data/cache/whisper/models"

WORKDIR /app/backend

# install python dependencies
COPY ./backend/requirements.txt ./requirements.txt 
RUN pip3 config set global.index-url ${PIP_REPO}
RUN pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu --no-cache-dir
RUN pip3 install -r requirements.txt --no-cache-dir 

# Install pandoc and netcat
# RUN python -c "import pypandoc; pypandoc.download_pandoc()"
RUN apt-get update 
    && apt-get install -y pandoc netcat-openbsd 
    && rm -rf /var/lib/apt/lists/*

# RUN python -c "from sentence_transformers import SentenceTransformer; model = SentenceTransformer('all-MiniLM-L6-v2')"
RUN python -c "import os; from faster_whisper import WhisperModel; WhisperModel(os.environ['WHISPER_MODEL'], device='cpu', compute_type='int8', download_root=os.environ['WHISPER_MODEL_DIR'])"


# copy embedding weight from build
RUN mkdir -p /root/.cache/chroma/onnx_models/all-MiniLM-L6-v2
COPY --from=build /app/onnx /root/.cache/chroma/onnx_models/all-MiniLM-L6-v2/onnx

# copy built frontend files
COPY --from=build /app/build /app/build

# copy backend files
COPY ./backend .

CMD [ "bash""start.sh"]

如果你想进一步提速,就得配置Docker的镜像 以及Debian的镜像了。

一行代码让你免魔法部署Open-WebUI

手工安装

如果手工安装,根据系统不同, 使用相应的命令来设置环境变量,

export HF_ENDPOINT=https://hf-mirror.com
  • • Windows Powershell

$env:HF_ENDPOINT = "https://hf-mirror.com"
  • • Windows CMD

set HF_ENDPOINT="https://hf-mirror.com"

引用链接

[1] Open WebUI 社区: https://openwebui.com/
[2] Open WebUI 社区: https://openwebui.com/


原文始发于微信公众号(alitrack):一行代码让你免魔法部署Open-WebUI

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/243533.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!