跳到主要内容
Sponsored by n8n
n8n
Does your interface have a backend yet? Try n8n

流水线标识

流水线:与UI无关的OpenAI API插件框架

注意

如果符合以下情况,切勿使用流水线!

如果您的目标只是增加对额外供应商(例如Anthropic)或基本过滤器的支持,您可能不需要流水线。对于这些情况,Open WebUI Functions是一个更适合的选择——它是内置的,更便捷,并且更易于配置。而流水线适用于处理计算密集型任务(例如运行大型模型或复杂逻辑),您希望将这些任务从主Open WebUI实例中卸载出来以提高性能和可扩展性。

欢迎使用 流水线,这是一个 Open WebUI 的创新项目。流水线为支持OpenAI API规范的任何UI客户端带来模块化、可定制的工作流——还有更多功能!只需几行代码即可轻松扩展功能、整合独特逻辑,并创建动态工作流。

🚀 为什么选择流水线?

  • 无限可能: 轻松增加自定义逻辑并整合Python库,从AI代理到家庭自动化API。
  • 无缝集成: 兼容任何支持OpenAI API规范的UI/客户端。(仅支持管道类型,过滤器类型需要客户端支持流水线。)
  • 自定义钩子: 构建并集成自定义流水线。

您可以实现的示例:

🔧 工作原理

流水线工作流

将流水线与任何兼容OpenAI API的UI客户端集成十分简单。启动您的流水线实例,并将客户端上的OpenAI URL设置为流水线URL即可。仅此而已!您可以随时为您的需求利用任何Python库。

⚡ 使用Docker快速开始

注意

流水线是一个具有任意代码执行功能的插件系统——请勿从不可信来源获取流水线插件

通过Docker简化安装:

  1. 运行流水线容器:

    docker run -d -p 9099:9099 --add-host=host.docker.internal:host-gateway -v pipelines:/app/pipelines --name pipelines --restart always ghcr.io/open-webui/pipelines:main
  2. 连接到Open WebUI:

    • 进入Open WebUI的 管理面板 > 设置 > 连接 页面。
    • 在此页面中,您可以按下 + 按钮添加连接。
    • 设置API URL为http://localhost:9099,API密钥为0p3n-w3bu!
    • 添加并验证连接后,您会看到在API基URL字段中出现一个图标。将鼠标悬停在图标上时,图标会标注为Pipelines。您的流水线现在已启用。
信息

如果您的Open WebUI运行在Docker容器中,请将API URL中的localhost替换为host.docker.internal

  1. 管理配置:

    • 在管理面板中,进入 管理面板 > 设置 > 流水线 标签页。
    • 选择您想要的流水线并直接从WebUI修改其阀值配置。

:::提示 如果您无法连接,这很可能是 Docker 网络问题。我们建议您自行进行故障排除,并在讨论论坛中分享您的方法和解决方案。 :::

如果您需要安装带有额外依赖项的自定义流水线:

  • 运行以下命令:

    docker run -d -p 9099:9099 --add-host=host.docker.internal:host-gateway -e PIPELINES_URLS="https://github.com/open-webui/pipelines/blob/main/examples/filters/detoxify_filter_pipeline.py" -v pipelines:/app/pipelines --name pipelines --restart always ghcr.io/open-webui/pipelines:main

或者,您可以直接从管理员设置中安装流水线,只需复制并粘贴流水线 URL,前提是它没有额外的依赖项。

就是这样!现在您可以轻松使用 Pipelines 构建可定制的 AI 集成。祝您玩得愉快!

📦 安装和设置

通过以下几个简单步骤开始使用 Pipelines:

  1. 确保安装了 Python 3.11。 这是唯一正式支持的 Python 版本。

  2. 克隆 Pipelines 仓库:

    git clone https://github.com/open-webui/pipelines.git
    cd pipelines
  3. 安装必要的依赖项:

    pip install -r requirements.txt
  4. 启动 Pipelines 服务器:

    sh ./start.sh

服务器运行后,将您的客户端上的 OpenAI URL 设置为 Pipelines URL。这将解锁 Pipelines 的全部功能,集成任何 Python 库并创建适合您需求的定制工作流。

📂 目录结构和示例

/pipelines 目录是您的设置核心。在这里添加新模块、定制现有模块并管理您的工作流。在服务器启动时,/pipelines 目录中的所有流水线将被 自动加载

您可以通过设置 PIPELINES_DIR 环境变量,将目录从 /pipelines 更改为其他位置。

集成示例

请在 https://github.com/open-webui/pipelines/blob/main/examples 目录中查看各种集成示例。这些示例展示了如何集成不同功能,为构建您自己的定制流水线提供了基础。

🎉 持续开发中

我们在不断进化中!我们很乐意听取您的反馈,并了解哪些钩子和功能最适合您的用例。请随时与我们联系,并加入我们的 Open WebUI 社区!

我们的愿景是将 Pipelines 推动成为我们 AI 接口 Open WebUI 的终极插件框架。想象一下 Open WebUI 是 AI 接口的 WordPress,而 Pipelines 是其中多样化的插件。快来加入我们,参与这一激动人心的旅程吧!🌍