请勿使用PIPELINES!
如果您的目标只是添加对Anthropic等其他提供商的支持或基本过滤器,您可能不需要Pipelines。对于这些情况,Open WebUI Functions是更好的选择——它是内置的,更方便且更易于配置。然而,当您处理计算密集型任务(例如运行大型模型或复杂逻辑),并希望将其从主Open WebUI实例卸载以获得更好的性能和可扩展性时,Pipelines就会发挥作用。
欢迎使用Pipelines,这是Open WebUI的一项计划。Pipelines为任何支持OpenAI API规范的UI客户端带来模块化、可定制的工作流——甚至更多功能!只需几行代码,即可轻松扩展功能、集成独特逻辑并创建动态工作流。
将Pipelines与任何兼容OpenAI API的UI客户端集成非常简单。启动您的Pipelines实例,并将客户端上的OpenAI URL设置为Pipelines URL。就是这样!您已准备好利用任何Python库来满足您的需求。
如果您创建了自己的 pipelines,可以在构建 Docker 镜像时安装它们。例如,创建一个包含以下代码片段的 bash 脚本,从指定路径收集文件,将它们作为安装 URL 添加,并构建自动安装了新 pipelines 的 Docker 镜像。
[!NOTE] pipelines 模块仍会在启动时尝试安装文件头中找到的所有包依赖项,但不会再次下载它们。
# build in the specific pipelines
PIPELINE_DIR="pipelines-custom"
# assuming the above directory is in your source repo and not skipped by `.dockerignore`, it will get copied to the image
PIPELINE_PREFIX="file:///app"
# retrieve all the sub files
export PIPELINES_URLS=
for file in "$PIPELINE_DIR"/*; do
if [[ -f "$file" ]]; then
if [[ "$file" == *.py ]]; then
if [ -z "$PIPELINES_URLS" ]; then
PIPELINES_URLS="$PIPELINE_PREFIX/$file"
else
PIPELINES_URLS="$PIPELINES_URLS;$PIPELINE_PREFIX/$file"
fi
fi
fi
done
echo "New Custom Install Pipes: $PIPELINES_URLS"
docker build --build-arg PIPELINES_URLS=$PIPELINES_URLS --build-arg MINIMUM_BUILD=true -f Dockerfile .
/pipelines 目录是您设置的核心。在此处添加新模块、自定义现有模块并管理您的工作流。服务器启动时,/pipelines 目录中的所有 pipelines 将自动加载。
您可以使用 PIPELINES_DIR 环境变量将此目录从 /pipelines 更改为其他位置。
就是这样!您现在已准备好使用Pipelines轻松构建可定制的AI集成。祝您使用愉快!
使用Docker Compose可以简化多容器Docker应用的管理。
以下是使用Docker Compose设置Open WebUI和Pipelines的示例配置文件docker-compose.yaml:
services:
openwebui:
image: ghcr.io/open-webui/open-webui:main
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
pipelines:
image: ghcr.io/open-webui/pipelines:main
volumes:
- pipelines:/app/pipelines
restart: always
environment:
- PIPELINES_API_KEY=0p3n-w3bu!
volumes:
open-webui: {}
pipelines: {}
要启动服务,请运行以下命令:
docker compose up -d
然后,您可以使用http://pipelines:9099(该名称与docker-compose.yaml中定义的服务名称相同)作为API URL连接到Open WebUI。
[!NOTE]
pipelines服务仅可由openwebuiDocker服务访问,因此提供了额外的安全层。
通过以下几个简单步骤开始使用Pipelines:
git clone https://github.com/open-webui/pipelines.git
cd pipelines
pip install -r requirements.txt
sh ./start.sh
服务器运行后,将客户端上的OpenAI URL设置为Pipelines URL。这将解锁Pipelines的全部功能,集成任何Python库并创建满足您需求的自定义工作流。
如果您创建了自己的pipeline,可以在构建Docker镜像时安装它们。例如,创建一个包含以下代码片段的bash脚本,从路径收集文件,将它们添加为安装URL,并构建自动安装新pipeline的Docker镜像。
[!NOTE] pipeline模块仍会在启动时尝试安装文件头中找到的任何包依赖项,但不会再次下载它们。
# build in the specific pipelines
PIPELINE_DIR="pipelines-custom"
# assuming the above directory is in your source repo and not skipped by `.dockerignore`, it will get copied to the image
PIPELINE_PREFIX="file:///app"
# retrieve all the sub files
export PIPELINES_URLS=
for file in "$PIPELINE_DIR"/*; do
if [[ -f "$file" ]]; then
if [[ "$file" == *.py ]]; then
if [ -z "$PIPELINES_URLS" ]; then
PIPELINES_URLS="$PIPELINE_PREFIX/$file"
else
PIPELINES_URLS="$PIPELINES_URLS;$PIPELINE_PREFIX/$file"
fi
fi
fi
done
echo "New Custom Install Pipes: $PIPELINES_URLS"
docker build --build-arg PIPELINES_URLS=$PIPELINES_URLS --build-arg MINIMUM_BUILD=true -f Dockerfile .
/pipelines目录是您设置的核心。在此处添加新模块、自定义现有模块和管理工作流。服务器启动时,/pipelines目录中的所有pipeline将自动加载。
您可以使用PIPELINES_DIR环境变量将此目录从/pipelines更改为其他位置。
在/examples目录中可以找到各种集成示例。这些示例展示了如何集成不同功能,为构建您自己的自定义pipeline提供基础。
我们在不断发展!我们很乐意听取您的反馈,并了解哪些钩子和功能最适合您的使用场景。欢迎联系我们,成为Open WebUI社区的一员!
我们的愿景是推动Pipelines成为我们AI界面Open WebUI的终极插件框架。将Open WebUI想象成AI界面中的WordPress,而Pipelines则是其丰富多样的插件。加入我们这个激动人心的旅程吧!🌍
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务