跳到主要内容

🧰 功能

🚀 什么是功能?

功能就像是 OpenWebUI 的插件。它们帮助你扩展其功能——无论是添加对新 AI 模型提供商(如 Anthropic 或 Vertex AI)的支持,调整消息处理方式,还是在界面上引入自定义按钮以提高可用性。

与可能需要复杂集成的外部工具不同,功能是内置的,并在 OpenWebUI 环境中运行。这意味着它们速度快、模块化且不依赖外部依赖。

将功能视为模块化的构建块,让你可以根据自己的需求增强 WebUI 的工作方式。它们轻量、高度可定制,并且用纯 Python 编写,因此你可以自由创建任何东西——从新的 AI 工作流程到与 Google 搜索或 Home Assistant 等工具的集成。


🏗️ 功能类型

OpenWebUI 中有三种类型的功能,每种都有特定的用途。让我们逐一介绍并解释它们的作用:


1. 管道功能 – 创建自定义“代理/模型”

管道功能用于创建自定义代理/模型或集成,这些代理/模型会在界面中显示为独立模型。

它能做什么?

  • 管道允许你定义复杂的流程。例如,你可以创建一个管道,将数据发送到模型 A模型 B,处理它们的输出并将结果合并成一个最终答案。
  • 管道甚至不必使用 AI!它们可以配置为搜索 API天气数据或像 Home Assistant 这样的系统。基本上,任何你想互动的内容都可以成为 OpenWebUI 的一部分。

使用案例示例: 假设你想直接从 OpenWebUI 查询 Google 搜索。你可以创建一个管道功能:

  1. 将你的消息作为搜索查询。
  2. 将查询发送到 Google 搜索的 API。
  3. 处理响应并在 WebUI 中返回结果,就像普通的“模型”响应一样。

启用后,管道功能会显示为可选择的模型。当你需要自定义功能时,就像模型一样使用管道。

详细指南请参阅管道功能


2. 过滤功能 – 修改输入和输出

过滤功能类似于在数据发送到 AI 之前或接收回来之后进行微调的工具。

它能做什么? 过滤器在工作流中充当“钩子”,有两个主要部分:

  • 入口:调整发送给模型的输入。例如,添加额外的指令、关键词或格式调整。
  • 出口:修改从模型接收到的输出。例如,清理响应、调整语气或将数据格式化为特定样式。

使用案例示例: 假设你在做一个需要精确格式化的项目。你可以使用过滤器确保:

  1. 输入总是转换为所需的格式。
  2. 模型的输出在显示前被清理。

过滤器可以链接到特定模型,也可以全局启用所有模型,具体取决于你的需求。

更多示例和说明,请参阅完整指南:过滤功能


3. 动作功能 – 添加自定义按钮

动作功能用于在聊天界面中添加自定义按钮

它能做什么? 动作允许你定义交互式快捷方式,这些快捷方式可以直接从聊天中触发特定功能。这些按钮出现在每个聊天消息下方,为你提供便捷的一键访问你定义的功能。

使用案例示例: 假设你经常需要总结长消息或生成特定输出(如翻译)。你可以创建一个动作功能:

  1. 在每条传入消息下添加一个“总结”按钮。
  2. 当点击时,它会触发你的自定义函数处理该消息并返回总结。

按钮提供了一种简洁且用户友好的方式来与你定义的扩展功能互动。

学习如何设置它们,请参阅动作功能指南


🛠️ 如何使用功能

以下是将功能应用于 OpenWebUI 的方法:

1. 安装功能

你可以通过 OpenWebUI 界面或手动导入来安装功能。你可以在 OpenWebUI 社区网站 上找到社区创建的功能。

⚠️ 请注意。 只从可信来源安装功能。运行未知代码存在安全风险。


2. 启用功能

功能必须在安装后明确启用:

  • 启用管道功能后,它将成为界面中的独立模型。
  • 对于过滤动作功能,仅启用还不够——你还需要将其分配给特定模型或全局启用所有模型。

3. 将过滤器或动作分配给模型

  • 导航到 Workspace => Models 并在那里将过滤器或动作分配给相关模型。
  • 或者,通过导航到 Workspace => Functions,选择“...”菜单并切换全局开关,全局启用功能。

快速总结

  • 管道显示为可交互的独立模型。
  • 过滤器修改输入/输出,使 AI 交互更加顺畅。
  • 动作在单个聊天消息下添加可点击的按钮。

一旦完成设置过程,功能将无缝地增强你的工作流程。


✅ 为什么要使用功能?

功能旨在为任何希望解锁新可能性的人提供支持:

  • 扩展:添加新模型或与其他非 AI 工具(如 API、数据库或智能设备)集成。
  • 优化:调整输入和输出以完美适应你的用例。
  • 简化:添加按钮或快捷方式,使界面直观高效。

无论你是为特定项目定制工作流程,集成外部数据,还是只是让 OpenWebUI 更易于使用,功能都是掌控你的实例的关键。


📝 最后提示:

  1. 始终只从可信来源安装功能。
  2. 确保理解管道、过滤和动作功能之间的区别,以便有效使用它们。
  3. 探索官方指南:

通过利用功能,你将为 OpenWebUI 设置带来全新的能力。开始实验吧!🚀