Skip to main content

⚙️ 什么是工具?

工具是除简单文本生成之外,扩展 LLM 能力的各种方式。启用后,它们可以让您的聊天机器人完成令人惊叹的事情——例如网页搜索、抓取数据、生成图像、使用 AI 语音对话等。

由于在 Open WebUI 中有多种集成“工具”的方式,了解您正在使用哪种类型非常重要。


🧩 工具分类:您正在使用哪种“工具”?

用户经常在不同的上下文中遇到“工具”一词。以下是区分它们的方法:

类型UI 中的位置最适合...来源
原生功能管理员/设置核心平台功能Open WebUI 内置
工作区工具工作区 > 工具用户创建或社区 Python 脚本社区库
原生 MCP (HTTP)设置 > 连接可通过 HTTP/SSE 访问的标准 MCP 服务器外部 MCP 服务器
通过代理的 MCP (MCPO)设置 > 连接本地基于 stdio 的 MCP 服务器(例如 Claude Desktop 工具)MCPO 适配器
OpenAPI 服务器设置 > 连接标准 REST/OpenAPI Web 服务外部 Web API

1. 原生功能 (内置)

这些功能深度集成在 Open WebUI 中,通常不需要外部脚本。

  • 网页搜索:通过 SearXNG、Google 或 Tavily 等引擎集成。
  • 图像生成:与 DALL-E、ComfyUI 或 Automatic1111 集成。
  • RAG (知识库):查询上传文档的能力 (#)。

2. 工作区工具 (自定义插件)

这些是直接在 Open WebUI 环境中运行的 Python 脚本

  • 能力:可以执行 Python 能做的任何事情(网页抓取、复杂数学运算、API 调用)。
  • 访问:通过 工作区 菜单管理。
  • 安全:在导入之前始终检查代码,因为这些脚本在您的服务器上运行。
  • ⚠️ 安全警告:不应授予普通用户或不受信任用户访问“工作区工具”部分的权限。此访问权限允许用户在您的服务器上上传并执行任意 Python 代码,这可能导致整个系统被入侵。

3. MCP (模型上下文协议) 🔌

MCP 是一种开放标准,允许 LLM 与外部数据和工具交互。

  • 原生 HTTP MCP:Open WebUI 可以直接连接到任何暴露 HTTP/SSE 端点的 MCP 服务器。
  • MCPO (代理):大多数社区 MCP 服务器使用 stdio(本地命令行)。要在 Open WebUI 中使用这些服务器,您可以使用 MCPO 代理 来桥接连接。

4. OpenAPI / 函数调用服务器

提供 OpenAPI(.json.yaml)规范的通用 Web 服务器。Open WebUI 可以摄取这些规范,并将每个端点视为一个工具。


📦 如何安装和管理工作区工具

工作区工具是使用社区功能扩展实例最常用的方式。

  1. 前往 社区工具库
  2. 选择一个工具,然后点击 Get 按钮。
  3. 输入您的 Open WebUI 实例 URL(例如 http://localhost:3000)。
  4. 点击 Import to WebUI
安全提示

切勿导入您不认识或不信任的工具。这些是 Python 脚本,可能会在您的宿主系统上运行不安全的代码。至关重要的一点是,确保您只向受信任的用户授予“工具”权限,因为创建或导入工具的能力等同于在服务器上运行任意代码的能力。


🔧 如何在聊天中使用工具

安装或连接后,以下是为您的对话启用它们的方法:

选项 1:即时启用(针对特定聊天)

在聊天时,点击输入区域中的 ➕ (加号) 图标。您将看到可用工具列表——您可以专门为该会话启用它们。

选项 2:默认启用(全局/模型级别)

  1. 前往 工作区 ➡️ 模型
  2. 选择您正在使用的模型,然后点击 ✏️ 编辑图标。
  3. 滚动到 工具 (Tools) 部分。
  4. ✅ 勾选您希望该模型默认始终有权访问的工具。
  5. 点击 保存

您还可以使用 AutoTool 过滤器 让您的 LLM 自动选择正确的工具。


🧠 选择工具的使用方式:默认 vs 原生

启用工具后,Open WebUI 提供了两种不同的方式让您的 LLM 与它们交互。您可以通过聊天设置进行切换:

聊天控制

  1. 打开与模型的聊天。
  2. 点击 ⚙️ 聊天控制 > 高级参数
  3. 找到 函数调用 (Function Calling) 设置,并在以下两者之间切换:

🟡 默认模式 (基于提示词)

在此模式下,您的 LLM 不需要原生支持函数调用。我们使用智能工具选择提示词模板来引导模型选择并使用工具。

  • ✅ 适用于几乎任何模型(包括较小的本地模型)。
  • 💡 管理员提示:您还可以在 管理员面板 > 设置 > 模型 > 高级参数 中为每个特定模型切换默认模式。
  • ❗ 在链接多个复杂工具时,不如原生模式可靠。

🟢 原生模式 (内置函数调用)

如果您的模型原生支持函数调用(如 GPT-4o、Gemini、Claude 或 GPT-5),请使用此模式以获得更快、更准确的体验,LLM 会精确决定何时以及如何调用工具。

  • ✅ 快速、准确,并且可以在一次响应中链接多个工具。
  • ❗ 需要明确支持工具调用架构 (tool-calling schemas) 的模型。
模式适用对象优点缺点
默认几乎任何模型(基础/本地)广泛的兼容性、更安全、灵活可能不够准确或较慢
原生GPT-4o, Gemini, Claude, GPT-5 等快速、智能、出色的工具链接能力需要完善的函数调用支持

🚀 总结与后续步骤

工具通过赋予 AI 与世界互动的手,让您的 AI 焕发活力。