2237 lines
70 KiB
Markdown
2237 lines
70 KiB
Markdown
# 从"问一个AI"到"运营一支AI团队"
|
||
|
||
## 解读OpenWebUI的协同野心与平台价值
|
||
|
||
从与一个AI对话,到指挥一支多模型协作的AI团队——这不仅仅是工具的升级,更是工作方式的革命。
|
||
|
||
OpenWebUI通过**协同、扩展、定制、生态**四大维度,将AI从辅助工具升级为智囊团和工作平台。
|
||
|
||
---
|
||
|
||
## 第一部分:构建AI团队的基础——多模型协同对话系统
|
||
|
||
### 思想的交响乐:体验多模型并行的力量
|
||
|
||
#### 告别选择困难:让多个 AI 同时为您服务
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph "OpenWebUI 四大核心功能"
|
||
A["🔶 多模型独立并行<br/>同一问题同时发送至多个模型<br/>各模型维护独立上下文<br/>同步生成独立回答"]
|
||
|
||
B["🔷 @提及特定模型<br/>随时指定任一模型单独回答<br/>被@模型的回答进入共享上下文<br/>后续并行模型可参考此内容"]
|
||
|
||
C["🔹 智能合并总结<br/>分析多个回答的核心观点<br/>提炼共识、差异、独特洞察<br/>生成综合分析报告"]
|
||
|
||
D["🔸 内容选中与深度追问<br/>选中任意AI回复的内容<br/>浮动窗格展示精准对话<br/>支持选择性的上下文注入"]
|
||
end
|
||
|
||
subgraph "功能特性"
|
||
E["独立性<br/>完全隔离的思考空间"]
|
||
F["协同性<br/>通过上下文共享实现协作"]
|
||
G["智能性<br/>自动化的内容分析与整合"]
|
||
H["精准性<br/>微观层面的内容优化"]
|
||
end
|
||
|
||
A --> E
|
||
B --> F
|
||
C --> G
|
||
D --> H
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style D fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style G fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style H fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
#### 独立思考,同步输出:并行工作流揭秘
|
||
|
||
```mermaid
|
||
graph TD
|
||
subgraph "多模型独立并行工作流"
|
||
A["👤 用户提出统一问题"]
|
||
|
||
B["📤 问题同时分发至所选模型"]
|
||
|
||
C["模型A<br/>独立处理"]
|
||
D["模型B<br/>独立处理"]
|
||
E["模型C<br/>独立处理"]
|
||
|
||
F["完全隔离的上下文A"]
|
||
G["完全隔离的上下文B"]
|
||
H["完全隔离的上下文C"]
|
||
|
||
I["模型A 独立回答"]
|
||
J["模型B 独立回答"]
|
||
K["模型C 独立回答"]
|
||
|
||
L["📥 同步展示于统一界面"]
|
||
end
|
||
|
||
A --> B
|
||
B --> C
|
||
B --> D
|
||
B --> E
|
||
|
||
C --> F --> I
|
||
D --> G --> J
|
||
E --> H --> K
|
||
|
||
I --> L
|
||
J --> L
|
||
K --> L
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style C fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style D fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style G fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style H fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style I fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style J fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style K fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style L fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 精准指挥,深度协作:像管理团队一样与 AI 对话
|
||
|
||
#### “@”一下,指定专家:随时调用特定模型
|
||
|
||
```mermaid
|
||
graph TD
|
||
subgraph "@提及特定模型的工作流"
|
||
A["当前状态<br/>多个模型回答已展示"]
|
||
|
||
B["👤 用户行为<br/>@指定某一模型"]
|
||
|
||
C["新问题/指令发送至被@模型"]
|
||
|
||
D["被@模型处理<br/>基于独立上下文"]
|
||
|
||
E["上下文注入<br/>被@模型的新回答<br/>进入共享对话历史"]
|
||
|
||
F["共享上下文更新"]
|
||
|
||
G["后续操作选择"]
|
||
G1["继续并行模式<br/>发起新一轮多模型并行"]
|
||
G2["继续@功能<br/>@其他模型针对新问题回答"]
|
||
G3["合并总结<br/>分析所有回答"]
|
||
end
|
||
|
||
A --> B --> C --> D --> E --> F
|
||
F --> G
|
||
G --> G1
|
||
G --> G2
|
||
G --> G3
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style C fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style D fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style E fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style F fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style G fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style G1 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style G2 fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style G3 fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
```
|
||
|
||
#### 知识的传递:通过上下文注入实现 AI 间协作
|
||
|
||
```mermaid
|
||
graph TD
|
||
subgraph "阶段一:多模型独立探索"
|
||
A["发送统一问题"] --> B["模型A、B、C各自回答"] --> C["各维护独立上下文"]
|
||
end
|
||
|
||
subgraph "阶段二:指定模型深度挖掘"
|
||
D["@模型A<br/>提出深化问题"] --> E["模型A基于自身上下文<br/>进行深度思考"] --> F["模型A新回答<br/>进入共享对话历史"]
|
||
end
|
||
|
||
subgraph "阶段三:新一轮并行处理"
|
||
G["发起新的多模型并行提问"] --> H["所有模型可参考<br/>模型A的深度回答"] --> I["所有模型基于更新的<br/>共享上下文生成新回答"]
|
||
end
|
||
|
||
subgraph "阶段四:可选的继续@"
|
||
J["@模型B<br/>针对新话题回答"] --> K["模型B回答进入共享上下文"]
|
||
end
|
||
|
||
subgraph "知识演进"
|
||
L["共享上下文不断丰富"] --> M["多模型知识逐步对齐"] --> N["AI团队整体认知提升"]
|
||
end
|
||
|
||
C --> D
|
||
F --> G
|
||
I --> J
|
||
|
||
C --> L
|
||
F --> L
|
||
K --> L
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style C fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style D fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style G fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style H fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style I fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style J fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style K fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style L fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style M fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style N fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 去粗取精,洞见未来:一键生成多维智能分析
|
||
|
||
#### 化繁为简:智能合并总结的工作流程
|
||
|
||
```mermaid
|
||
graph TD
|
||
subgraph "智能合并总结工作流"
|
||
|
||
subgraph "输入层"
|
||
A["模型A 的回答"]
|
||
B["模型B 的回答"]
|
||
C["模型C 的回答"]
|
||
end
|
||
|
||
subgraph "分析层"
|
||
D["内容解析<br/>提取核心观点、论据、立场"]
|
||
E["共识识别<br/>所有模型一致性内容"]
|
||
F["差异分析<br/>模型间的不同视角"]
|
||
G["洞察提取<br/>各模型的创新思想"]
|
||
end
|
||
|
||
subgraph "合成层"
|
||
H["结构化组织信息"]
|
||
I["生成综合分析"]
|
||
J["融合最优观点"]
|
||
end
|
||
|
||
subgraph "输出层"
|
||
K["合并总结报告<br/>包含共识、差异、洞察、建议"]
|
||
end
|
||
end
|
||
|
||
A --> D
|
||
B --> D
|
||
C --> D
|
||
|
||
D --> E
|
||
D --> F
|
||
D --> G
|
||
|
||
E --> H
|
||
F --> H
|
||
G --> H
|
||
|
||
H --> I --> J --> K
|
||
|
||
style A fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style B fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style C fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style D fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style E fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style F fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style G fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style H fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style I fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style J fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style K fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 微观雕琢,极致优化:对 AI 的每一句话进行精准追问
|
||
|
||
#### 选中即追问:浮动窗格带来的“对话中的对话”
|
||
|
||
```mermaid
|
||
graph TD
|
||
subgraph "内容选中与浮动窗格工作流"
|
||
|
||
subgraph "触发阶段"
|
||
A["多个模型的回答已展示"]
|
||
B["👤 用户选中某段内容<br/>该内容来自模型A的回答"]
|
||
end
|
||
|
||
subgraph "浮动窗格出现"
|
||
C["浮动窗格弹出<br/>展示选中的内容"]
|
||
D["窗格包含两部分上下文"]
|
||
D1["完整模型对话上下文<br/>模型A的所有历史消息"]
|
||
D2["选中的具体内容片段"]
|
||
end
|
||
|
||
subgraph "用户操作"
|
||
E["用户在窗格中输入问题<br/>自定义提问内容"]
|
||
F["提问示例<br/>- 解释这个概念的含义<br/>- 优化这段表达<br/>- 举例说明<br/>- 详细展开<br/>等等"]
|
||
end
|
||
|
||
subgraph "模型处理"
|
||
G["问题发送至选中的模型A"]
|
||
H["模型A基于完整上下文<br/>+选中的具体内容<br/>进行精准回答"]
|
||
end
|
||
|
||
subgraph "结果展示"
|
||
I["回答方式选择"]
|
||
I1["仅在浮动窗格中展示<br/>不进入主对话历史"]
|
||
I2["选择性注入主上下文<br/>成为对话历史的一部分<br/>其他模型可见"]
|
||
end
|
||
end
|
||
|
||
A --> B --> C --> D
|
||
D --> D1
|
||
D --> D2
|
||
C --> E --> F
|
||
E --> G --> H --> I
|
||
I --> I1
|
||
I --> I2
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style C fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style D1 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style D2 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style E fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style F fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style G fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style H fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style I fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style I1 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style I2 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 临时讨论或永久记录:灵活的上下文注入策略
|
||
|
||
```mermaid
|
||
graph TD
|
||
subgraph "浮动窗格中的结果处理"
|
||
|
||
subgraph "模型A 在浮动窗格中生成回答"
|
||
A["基于完整上下文"]
|
||
B["+选中的内容"]
|
||
C["+用户的提问"]
|
||
D["生成精准回答"]
|
||
end
|
||
|
||
subgraph "用户的决策"
|
||
E["查看浮动窗格中的回答"]
|
||
F{是否满意?}
|
||
end
|
||
|
||
subgraph "路径一:不进入主历史"
|
||
G["浮动窗格中查看"]
|
||
H["保留为临时对话"]
|
||
I["主对话历史保持不变"]
|
||
J["其他模型无法看到"]
|
||
end
|
||
|
||
subgraph "路径二:选择性注入"
|
||
K["点击'注入上下文'"]
|
||
L["回答进入共享对话历史"]
|
||
M["成为所有模型的新上下文"]
|
||
N["后续并行提问时<br/>所有模型都能参考"]
|
||
end
|
||
|
||
subgraph "后续操作"
|
||
O["继续在浮动窗格中提问<br/>or"]
|
||
P["返回主界面<br/>进行新的并行提问<br/>or"]
|
||
Q["继续@其他模型"]
|
||
end
|
||
end
|
||
|
||
A --> D
|
||
B --> D
|
||
C --> D
|
||
|
||
D --> E --> F
|
||
F -->|暂不注入| G --> H --> I
|
||
I --> J
|
||
|
||
F -->|要注入| K --> L --> M --> N
|
||
|
||
F --> O
|
||
F --> P
|
||
F --> Q
|
||
|
||
style A fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style B fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style E fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style F fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style G fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style H fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style I fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style J fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style K fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style L fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style M fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style N fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style O fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style P fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style Q fill:#E85D75,stroke:#A23E52,color:#fff
|
||
```
|
||
|
||
#### 从概念解释到内容批判:深度追问的无限可能
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph "内容选中功能的典型应用"
|
||
|
||
A["选中内容"]
|
||
|
||
A1["概念解释<br/>选中:复杂概念<br/>问题:这是什么意思<br/>结果:详细解释说明"]
|
||
|
||
A2["表达优化<br/>选中:某句话<br/>问题:如何更清晰地表达<br/>结果:多个表达方案"]
|
||
|
||
A3["细节展开<br/>选中:简洁的观点<br/>问题:详细展开这个观点<br/>结果:深入分析"]
|
||
|
||
A4["举例补充<br/>选中:抽象概念<br/>问题:举具体例子<br/>结果:生动的实例"]
|
||
|
||
A5["逻辑校验<br/>选中:论证过程<br/>问题:这个逻辑是否严谨<br/>结果:逻辑分析和改进"]
|
||
|
||
A6["内容批评<br/>选中:观点<br/>问题:这个观点有什么问题<br/>结果:批判性分析"]
|
||
end
|
||
|
||
subgraph "关键优势"
|
||
B["精准定位<br/>只针对选中的内容"]
|
||
C["完整上下文<br/>理解该内容的生成背景"]
|
||
D["模型一致性<br/>确保深度追问来自同一模型"]
|
||
E["灵活性<br/>支持任意自定义提问"]
|
||
end
|
||
|
||
A --> A1
|
||
A --> A2
|
||
A --> A3
|
||
A --> A4
|
||
A --> A5
|
||
A --> A6
|
||
|
||
A1 --> B
|
||
A2 --> C
|
||
A3 --> D
|
||
A4 --> E
|
||
|
||
style A fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style A1 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style A2 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style A3 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style A4 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style A5 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style A6 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style C fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style D fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 从创意到方案:掌握 OpenWebUI 高效工作流
|
||
|
||
#### 标准化力量:一个完整的工作流框架
|
||
|
||
```mermaid
|
||
graph TD
|
||
|
||
A ~~~ J
|
||
|
||
%% Column 1
|
||
subgraph "阶段一:启动"
|
||
A["定义问题<br/>选择参与模型"] --> B["多模型并行<br/>获得多元视角"]
|
||
end
|
||
|
||
subgraph "阶段二:评估"
|
||
C["查看所有回答"] --> D["使用合并总结<br/>获得全景分析"] --> E["识别核心共识<br/>与关键差异"]
|
||
end
|
||
|
||
subgraph "阶段三:内容微调"
|
||
F["选中某段重要内容"] --> G["浮动窗格打开"] --> H["针对该内容提出追问"] --> I["获得精准的微观回答"]
|
||
end
|
||
|
||
%% Column 2
|
||
subgraph "阶段四:聚焦"
|
||
J["确定优先方向"] --> K["@指定模型<br/>进行宏观深度挖掘"]
|
||
end
|
||
|
||
subgraph "阶段五:迭代"
|
||
L["被@模型回答<br/>进入共享上下文"] --> M["发起新一轮<br/>多模型并行"] --> N["基于更新的共享上下文<br/>生成新回答"]
|
||
end
|
||
|
||
subgraph "阶段六:决策"
|
||
O["可选:再次合并总结"] --> P["做出决策或<br/>确定方向"]
|
||
end
|
||
|
||
subgraph "阶段七:产出"
|
||
Q["根据需求继续迭代"] --> R["导出方案、<br/>保存记录"]
|
||
end
|
||
|
||
%% Connections
|
||
B --> C
|
||
E --> F
|
||
K --> L
|
||
N --> O
|
||
P --> Q
|
||
E --> J
|
||
I -->|注入后| J
|
||
I -->|不注入| E
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style C fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style D fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style E fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style F fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style G fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style H fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style I fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style J fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style K fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style L fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style M fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style N fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style O fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style P fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style Q fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style R fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 灵活应变:根据任务复杂度动态调整
|
||
|
||
```mermaid
|
||
graph TD
|
||
subgraph "简单任务路径"
|
||
direction LR
|
||
A["简单问题"] --> B["多模型并行"] --> C["查看回答"] --> D["快速决策"]
|
||
end
|
||
|
||
subgraph "需要微调优化的路径"
|
||
direction LR
|
||
E["初步回答需要优化"] --> F["选中特定内容"] --> G["浮动窗格精准优化<br/>如:表达改进<br/>细节补充<br/>概念解释"] --> H["选择性注入或保留"] --> I["继续主流程"]
|
||
end
|
||
|
||
subgraph "复杂任务路径"
|
||
J["复杂问题"] --> K["多模型并行"] --> L["合并总结评估"] --> M{"需要深入某方向"}
|
||
M --> N["@指定模型深化"]
|
||
M --> O["选中内容精准追问"]
|
||
N --> P["多轮迭代"]
|
||
O --> P
|
||
P -->|继续| M
|
||
P -->|完成| Q["综合决策"]
|
||
end
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style E fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style J fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style D fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style Q fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style F fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style G fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style H fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style M fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style N fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style O fill:#E85D75,stroke:#A23E52,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
#### 功能协同,效果倍增:四大核心如何无缝配合
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph "四大功能的协同体系"
|
||
|
||
A["🔶 多模型独立并行<br/>发散探索<br/>获得多元视角"]
|
||
|
||
B["🔹 智能合并总结<br/>分析聚焦<br/>理解关键信息"]
|
||
|
||
C["🔷 @提及机制<br/>宏观深化<br/>针对性优化"]
|
||
|
||
D["🔸 内容选中追问<br/>微观精调<br/>精准优化"]
|
||
end
|
||
|
||
subgraph "协同流程"
|
||
E["启动并行探索"]
|
||
F["汇总分析结果"]
|
||
G["微观调整"]
|
||
H["宏观深化"]
|
||
I["新回答进入共享上下文"]
|
||
J["发起新一轮并行"]
|
||
K["可选:继续循环"]
|
||
end
|
||
|
||
A --> E
|
||
B --> F
|
||
C --> H
|
||
D --> G
|
||
|
||
E --> F --> G
|
||
G -->|选择性注入| H
|
||
H --> I
|
||
|
||
F -->|直接深化| H
|
||
|
||
I --> J --> K
|
||
K -->|循环| E
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style G fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style H fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style I fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style J fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style K fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 总结:OpenWebUI——您的私人 AI 智囊团
|
||
|
||
OpenWebUI 通过**多模型独立并行**、**@提及机制**、**智能合并总结**和**内容选中追问**四大功能的有机结合,构建了一个多维度、多层次的AI对话平台。
|
||
|
||
- **多模型并行**为用户提供了多元化的视角和创意
|
||
- **@提及机制**通过动态的上下文注入,实现了AI团队的宏观深度协作
|
||
- **智能合并总结**让用户快速掌握关键信息并做出决策
|
||
- **内容选中追问**通过浮动窗格实现了精准的微观层面优化
|
||
|
||
这四大功能的循环使用,既保持了广度的多元探索,又实现了深度的精准优化,能够帮助用户在宏观战略和微观细节之间实现完美平衡,最终获得融合多方优势、精致高效的精品方案。
|
||
|
||
## 第二部分:超越聊天的智能工作台——组织、知识与自动化
|
||
|
||
### 一、文件夹即项目:将对话空间转化为专业工作室
|
||
|
||
#### 从混乱到秩序:文件夹的三重身份
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph "文件夹的三重身份"
|
||
direction TB
|
||
A["📁 分类容器<br/>organize<br/>━━━━━<br/>按项目类型<br/>条理化管理"]
|
||
|
||
B["⚙️ 项目配置器<br/>automate<br/>━━━━━<br/>系统提示词<br/>知识库绑定"]
|
||
|
||
C["🎯 上下文作用域<br/>contextualize<br/>━━━━━<br/>一致的对话<br/>风格与规范"]
|
||
end
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff,width:200px
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff,width:200px
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff,width:200px
|
||
```
|
||
|
||
#### 工作流:如何在文件夹中建立专业工作环境
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph step1 ["第一步:创建项目文件夹"]
|
||
A["新建文件夹<br/>例如:'产品需求分析'"]
|
||
end
|
||
|
||
subgraph step2 ["第二步:定义系统提示词"]
|
||
B1["设置角色身份"]
|
||
B2["定义输出格式"]
|
||
B3["明确交互风格"]
|
||
end
|
||
|
||
subgraph step3 ["第三步:绑定知识库"]
|
||
C1["关联知识库A<br/>竞品分析"]
|
||
C2["关联知识库B<br/>用户研究"]
|
||
C3["关联知识库C<br/>市场数据"]
|
||
end
|
||
|
||
subgraph step4 ["第四步:开始工作 ✨"]
|
||
D["在该文件夹内创建对话"]
|
||
end
|
||
|
||
subgraph step5 ["第五步:自动应用"]
|
||
E1["✅ 系统提示词激活"]
|
||
E2["✅ 知识库自动可用"]
|
||
E3["✅ 风格遵循设定"]
|
||
end
|
||
|
||
subgraph step6 ["第六步:灵活管理"]
|
||
F1["拖拽移动对话<br/>到其他文件夹"]
|
||
F2["自动继承<br/>新文件夹配置"]
|
||
F3["随时调整<br/>文件夹设置"]
|
||
end
|
||
|
||
step1 --> step2
|
||
step2 --> step3
|
||
step3 --> step4
|
||
step4 --> step5
|
||
step5 --> step6
|
||
|
||
B1 -.-> B2 -.-> B3
|
||
C1 -.-> C2 -.-> C3
|
||
E1 -.-> E2 -.-> E3
|
||
F1 -.-> F2 -.-> F3
|
||
|
||
style step1 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style step2 fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style step3 fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style step4 fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style step5 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style step6 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
#### 真实应用示例:社交媒体内容创作工作室
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph folder ["📁 Social Media Content 文件夹"]
|
||
A["系统提示词配置"]
|
||
B["知识库关联"]
|
||
end
|
||
|
||
subgraph config ["配置内容"]
|
||
A1["你是社交媒体<br/>内容策略专家<br/>━━━<br/>• 风格:幽默有趣<br/>• 框架:Hook→Value→CTA<br/>• 受众:Z世代"]
|
||
B1["Brand Guidelines<br/>━━━<br/>竞品内容分析<br/>━━━<br/>用户评论反馈<br/>━━━<br/>月度热点日历"]
|
||
end
|
||
|
||
subgraph chats ["对话示例"]
|
||
C1["TikTok<br/>脚本创意"]
|
||
C2["Instagram<br/>文案优化"]
|
||
C3["小红书<br/>笔记框架"]
|
||
end
|
||
|
||
subgraph benefit ["自动应用的好处"]
|
||
D1["✅ 一致品牌<br/>声音"]
|
||
D2["✅ 自动参考<br/>品牌指南"]
|
||
D3["✅ 遵循内容<br/>框架"]
|
||
D4["✅ 查阅竞品<br/>动向"]
|
||
end
|
||
|
||
folder --> config
|
||
config --> chats
|
||
chats --> benefit
|
||
|
||
A -.-> A1
|
||
B -.-> B1
|
||
|
||
C1 --> D1
|
||
C1 --> D2
|
||
C2 --> D3
|
||
C3 --> D4
|
||
|
||
style folder fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style A fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style B fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style A1 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style B1 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style C1 fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C2 fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C3 fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style D1 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style D2 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style D3 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style D4 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 文件夹管理的超级能力
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph drag ["拖拽操作"]
|
||
A["初始对话<br/>在默认位置"]
|
||
B["发现是<br/>营销内容"]
|
||
C["拖拽到<br/>Social Media<br/>文件夹"]
|
||
end
|
||
|
||
subgraph auto ["自动应用"]
|
||
D["✨ 系统提示词<br/>自动激活"]
|
||
E["✨ 知识库<br/>自动可用"]
|
||
F["✨ 风格规范<br/>立即生效"]
|
||
end
|
||
|
||
subgraph nested ["嵌套与层级"]
|
||
G["2024年项目<br/>├─ 产品线A<br/>│ ├─ 需求分析<br/>│ ├─ 设计方案<br/>│ └─ 开发文档<br/>└─ 产品线B"]
|
||
end
|
||
|
||
drag --> auto
|
||
drag --> nested
|
||
|
||
A --> B --> C
|
||
|
||
style drag fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style auto fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style nested fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style A fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style B fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style C fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style D fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style E fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style F fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 二、一切皆知识库:构建你的专业智库系统
|
||
|
||
#### 知识库的多源生态
|
||
|
||
```mermaid
|
||
graph LR
|
||
A["📝 OpenWebUI<br/>笔记<br/>━━━<br/>在聊天中记录<br/>重要洞察与总结"]
|
||
|
||
B["📚 OpenWebUI<br/>知识库<br/>━━━<br/>上传各类文件<br/>PDF/Word/MD<br/>代码/图片"]
|
||
|
||
C["🌐 URL 链接<br/>━━━<br/>直接引用网页<br/>博客/新闻<br/>文档/API"]
|
||
|
||
D["💬 对话记录<br/>━━━<br/>将聊天转化为<br/>知识源<br/>专家讨论"]
|
||
|
||
E["📄 上传文件<br/>━━━<br/>批量导入<br/>内部文档<br/>论文/数据表"]
|
||
|
||
F["🧠 统一知识库<br/>━━━<br/>多源融合<br/>智能检索<br/>上下文注入"]
|
||
|
||
A --> F
|
||
B --> F
|
||
C --> F
|
||
D --> F
|
||
E --> F
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 知识库的使用工作流
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph input ["阶段1:知识输入"]
|
||
A1["撰写笔记"]
|
||
A2["上传文件"]
|
||
A3["粘贴URL"]
|
||
A4["导入对话"]
|
||
end
|
||
|
||
subgraph org ["阶段2:关联与组织"]
|
||
B["在文件夹中<br/>关联知识库"]
|
||
C1["知识库A<br/>竞品分析"]
|
||
C2["知识库B<br/>用户研究"]
|
||
C3["知识库C<br/>市场报告"]
|
||
end
|
||
|
||
subgraph use ["阶段3:对话中应用"]
|
||
D["用户提问"]
|
||
E["AI 自动检索<br/>相关知识"]
|
||
F["知识注入上下文<br/>精准回答"]
|
||
G["引用来源<br/>明确追溯"]
|
||
end
|
||
|
||
subgraph evolve ["阶段4:知识演进"]
|
||
H["对话产生<br/>新洞察"]
|
||
I["保存为笔记"]
|
||
J["添加到知识库"]
|
||
K["螺旋式<br/>上升"]
|
||
end
|
||
|
||
A1 --> B
|
||
A2 --> B
|
||
A3 --> B
|
||
A4 --> B
|
||
|
||
B --> C1
|
||
B --> C2
|
||
B --> C3
|
||
|
||
C1 --> D
|
||
C2 --> D
|
||
C3 --> D
|
||
|
||
D --> E --> F --> G
|
||
|
||
G --> H --> I --> J --> K
|
||
|
||
style input fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style org fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style use fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style evolve fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style A1 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style A2 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style A3 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style A4 fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style B fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style K fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 应用示例对比
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph legal ["法律团队的案例库"]
|
||
A["📁 Legal KB"]
|
||
A1["案例库<br/>判例+判决"]
|
||
A2["法律文献<br/>法律条款"]
|
||
A3["内部经验<br/>案件记录"]
|
||
B["律师提问:<br/>合同风险?"]
|
||
C["🔍 自动检索<br/>相关案例"]
|
||
D["✅ 有据可查<br/>的分析"]
|
||
end
|
||
|
||
subgraph research ["研究人员的论文库"]
|
||
E["📁 Research KB"]
|
||
E1["已发表论文<br/>50篇核心论文"]
|
||
E2["数据集<br/>实验数据"]
|
||
E3["研究笔记<br/>理解总结"]
|
||
F["研究员提问:<br/>有论证支持吗?"]
|
||
G["📚 文献综述<br/>自动完成"]
|
||
H["✅ 快速定位<br/>研究空白"]
|
||
end
|
||
|
||
A --> A1
|
||
A --> A2
|
||
A --> A3
|
||
A1 --> C
|
||
A2 --> C
|
||
A3 --> C
|
||
B --> C
|
||
C --> D
|
||
|
||
E --> E1
|
||
E --> E2
|
||
E --> E3
|
||
E1 --> G
|
||
E2 --> G
|
||
E3 --> G
|
||
F --> G
|
||
G --> H
|
||
|
||
style legal fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style research fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style E fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style G fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style D fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style H fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 三、用户提示词:将即时需求转化为交互式表单
|
||
|
||
#### 什么是用户提示词?
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph old ["❌ 传统方式"]
|
||
A["每次手动输入<br/>完整的问题"]
|
||
B["容易遗漏参数<br/>效率低下"]
|
||
end
|
||
|
||
subgraph new ["✅ 用户提示词方式"]
|
||
C["创建一次模板<br/>包含变量占位符<br/>以 / 开头触发"]
|
||
D["输入 / 后<br/>自动弹出表单"]
|
||
E["选择填空<br/>自动生成完整问题"]
|
||
end
|
||
|
||
A --> B
|
||
C --> D --> E
|
||
|
||
style old fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style new fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style A fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style B fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style C fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style D fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style E fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 用户提示词的工作流
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph create ["创建阶段"]
|
||
A["打开编辑器"]
|
||
B["设计模板<br/>with 变量"]
|
||
C["定义变量类型<br/>text/select/number"]
|
||
D["配置表单"]
|
||
end
|
||
|
||
subgraph trigger ["触发阶段"]
|
||
E["输入 /"]
|
||
F["选择提示词"]
|
||
G["表单弹出"]
|
||
end
|
||
|
||
subgraph fill ["填表生成"]
|
||
H["用户填空<br/>或选择"]
|
||
I["自动生成<br/>完整提问"]
|
||
J["发送给 AI"]
|
||
end
|
||
|
||
subgraph result ["获得结果"]
|
||
K["格式一致<br/>的回答"]
|
||
L["可复用<br/>的输出"]
|
||
end
|
||
|
||
A --> B --> C --> D
|
||
E --> F --> G --> H --> I --> J --> K --> L
|
||
|
||
style create fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style trigger fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style fill fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style result fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 三个实用模板示例
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph t1 ["📋 Template 1: Content Outline"]
|
||
A1["输入:/content_outline"]
|
||
A2["表单字段:<br/>• 主题 (textarea)<br/>• 类型 (select)<br/>• 受众 (select)<br/>• 长度 (select)<br/>• 要点数 (number)<br/>• 包含案例 (checkbox)<br/>• 语言风格 (select)"]
|
||
A3["输出:<br/>论点 + 大纲 + 展开<br/>+ 案例 + 建议"]
|
||
end
|
||
|
||
subgraph t2 ["🔍 Template 2: Code Review"]
|
||
B1["输入:/code_review"]
|
||
B2["表单字段:<br/>• 编程语言 (select)<br/>• 审查焦点 (select)<br/>• 项目类型 (select)<br/>• 严格程度 (select)<br/>• 代码内容 (textarea)"]
|
||
B3["输出:<br/>质量评分 + 风险<br/>+ 改进 + 优先级"]
|
||
end
|
||
|
||
subgraph t3 ["🧠 Template 3: Brainstorm"]
|
||
C1["输入:/brainstorm"]
|
||
C2["表单字段:<br/>• 主题 (textarea)<br/>• 目标 (select)<br/>• 参与者 (multi-select)<br/>• 限制条件 (textarea)<br/>• 创意数量 (number)<br/>• 分类维度 (select)"]
|
||
C3["输出:<br/>多维创意 + 可行性<br/>+ 潜力评估 + 行动"]
|
||
end
|
||
|
||
A1 --> A2 --> A3
|
||
B1 --> B2 --> B3
|
||
C1 --> C2 --> C3
|
||
|
||
style t1 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style t2 fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style t3 fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style A3 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style B3 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style C3 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
#### 用户提示词的五大优势
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph benefits ["用户提示词的核心优势"]
|
||
A["🎯 精准性<br/>不遗漏参数<br/>提问完整清晰"]
|
||
B["⚡ 高效性<br/>一次设置<br/>多次复用"]
|
||
C["📋 一致性<br/>统一格式<br/>便于对标"]
|
||
D["🧠 智能化<br/>表单引导思考<br/>降低失误"]
|
||
E["🤝 协作性<br/>团队共享模板<br/>结果一致"]
|
||
end
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 四、自定义模型配置:打造专属的 AI 助手
|
||
|
||
OpenWebUI 提供了强大的模型自定义功能,允许用户精细化配置每个模型的行为、权限和能力,满足不同场景下的专业需求。
|
||
|
||
##### 自定义模型的核心配置项
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph core ["核心配置维度"]
|
||
A["👥 用户权限<br/>━━━<br/>控制模型可见性<br/>设置使用权限"]
|
||
|
||
B["🏷️ 模型标签<br/>━━━<br/>分类管理<br/>快速筛选"]
|
||
|
||
C["📝 系统提示词<br/>━━━<br/>定义角色与风格<br/>预设行为规范"]
|
||
|
||
D["⚙️ 接口参数<br/>━━━<br/>通用参数配置<br/>自定义请求参数"]
|
||
end
|
||
|
||
subgraph enhance ["增强功能"]
|
||
E["💡 提示词建议<br/>━━━<br/>智能补全<br/>场景化推荐"]
|
||
|
||
F["📚 知识库绑定<br/>━━━<br/>专业领域知识<br/>自动检索注入"]
|
||
|
||
G["🛠️ 可用工具<br/>━━━<br/>函数调用<br/>API 集成"]
|
||
end
|
||
|
||
subgraph plugin ["插件系统"]
|
||
H["🔍 过滤器<br/>━━━<br/>输入预处理<br/>内容过滤"]
|
||
|
||
I["⚡ 操作<br/>━━━<br/>自定义功能<br/>外部调用"]
|
||
end
|
||
|
||
subgraph ability ["能力配置"]
|
||
J["🎯 模型能力<br/>━━━<br/>对话/生成<br/>分析/总结"]
|
||
|
||
K["🌐 默认功能<br/>━━━<br/>联网搜索<br/>图像生成"]
|
||
end
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style G fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style H fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style I fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style J fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style K fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
##### 模型配置工作流
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph setup ["配置阶段"]
|
||
A["选择/添加模型"] --> B["设置基础信息"]
|
||
B --> C["配置权限与标签"]
|
||
C --> D["定义系统提示词"]
|
||
end
|
||
|
||
subgraph enhance ["增强阶段"]
|
||
E["配置接口参数"] --> F["关联知识库"]
|
||
F --> G["添加可用工具"]
|
||
G --> H["启用过滤器/操作"]
|
||
end
|
||
|
||
subgraph ability ["能力阶段"]
|
||
I["设置提示词建议"] --> J["配置默认功能"]
|
||
J --> K["定义模型能力"]
|
||
end
|
||
|
||
subgraph deploy ["部署使用"]
|
||
L["保存配置"] --> M["分配给用户/团队"]
|
||
M --> N["开始使用"]
|
||
end
|
||
|
||
setup --> enhance
|
||
enhance --> ability
|
||
ability --> deploy
|
||
|
||
style setup fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style enhance fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style ability fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style deploy fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
####关键配置项详解
|
||
|
||
##### 1. 用户权限与模型标签
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph permission ["👥 用户权限管理"]
|
||
A["公开模型<br/>所有用户可见"]
|
||
B["团队模型<br/>特定团队可用"]
|
||
C["私有模型<br/>仅限管理员"]
|
||
end
|
||
|
||
subgraph tag ["🏷️ 标签分类"]
|
||
D["按用途分类<br/>客服/写作/编程"]
|
||
E["按能力分类<br/>文本/多模态/代码"]
|
||
F["按场景分类<br/>内部/外部/测试"]
|
||
end
|
||
|
||
subgraph benefit ["优势"]
|
||
G["✅ 精准权限控制<br/>✅ 快速查找定位<br/>✅ 有序组织管理"]
|
||
end
|
||
|
||
A --> G
|
||
B --> G
|
||
C --> G
|
||
D --> G
|
||
E --> G
|
||
F --> G
|
||
|
||
style permission fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style tag fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style benefit fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
##### 2. 系统提示词与接口参数
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph prompt ["📝 系统提示词"]
|
||
A["角色定义<br/>━━━<br/>你是...专家<br/>专注于...领域"]
|
||
|
||
B["行为规范<br/>━━━<br/>回答风格<br/>输出格式"]
|
||
|
||
C["约束条件<br/>━━━<br/>不要...<br/>必须..."]
|
||
end
|
||
|
||
subgraph params ["⚙️ 接口参数"]
|
||
D["通用参数<br/>━━━<br/>temperature<br/>top_p<br/>max_tokens"]
|
||
|
||
E["自定义参数<br/>━━━<br/>特殊 headers<br/>请求体结构<br/>认证方式"]
|
||
end
|
||
|
||
subgraph result ["效果"]
|
||
F["一致的模型行为"]
|
||
G["精准的输出控制"]
|
||
end
|
||
|
||
A --> F
|
||
B --> F
|
||
C --> F
|
||
D --> G
|
||
E --> G
|
||
|
||
style prompt fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style params fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style result fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
##### 3. 增强功能:知识库、工具与插件
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph kb ["📚 知识库集成"]
|
||
A["绑定专业知识库"]
|
||
B["自动检索相关内容"]
|
||
C["增强回答准确性"]
|
||
end
|
||
|
||
subgraph tool ["🛠️ 工具集成"]
|
||
D["函数调用<br/>Function Calling"]
|
||
E["API 接口<br/>外部服务"]
|
||
F["实时数据<br/>动态查询"]
|
||
end
|
||
|
||
subgraph plugin ["🔌 插件系统"]
|
||
G["过滤器 Filter<br/>━━━<br/>输入预处理<br/>内容过滤<br/>上下文压缩"]
|
||
|
||
H["操作 Action<br/>━━━<br/>保存到文件<br/>调用 API<br/>自定义功能"]
|
||
end
|
||
|
||
subgraph flow ["工作流程"]
|
||
I["用户输入"]
|
||
J["过滤器处理"]
|
||
K["知识库检索"]
|
||
L["工具调用"]
|
||
M["模型生成"]
|
||
N["操作执行"]
|
||
O["返回结果"]
|
||
end
|
||
|
||
I --> J --> K --> L --> M --> N --> O
|
||
|
||
style kb fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style tool fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style plugin fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style flow fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
####实战应用场景
|
||
|
||
##### 场景示例:客服专用模型配置
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph config ["配置内容"]
|
||
A["🏷️ 标签<br/>客服/支持/FAQ"]
|
||
|
||
B["👥 权限<br/>客服团队可见"]
|
||
|
||
C["📝 系统提示词<br/>你是专业客服<br/>友好、耐心、专业<br/>总是提供解决方案"]
|
||
|
||
D["📚 知识库<br/>产品手册<br/>常见问题<br/>解决方案库"]
|
||
|
||
E["🛠️ 工具<br/>工单系统<br/>用户数据查询<br/>库存查询"]
|
||
|
||
F["🔍 过滤器<br/>敏感信息过滤<br/>语气优化"]
|
||
|
||
G["⚡ 操作<br/>创建工单<br/>发送邮件"]
|
||
|
||
H["🌐 默认功能<br/>启用联网查询"]
|
||
end
|
||
|
||
subgraph effect ["使用效果"]
|
||
I["✅ 专业响应<br/>✅ 知识准确<br/>✅ 自动化操作<br/>✅ 统一服务标准"]
|
||
end
|
||
|
||
A --> effect
|
||
B --> effect
|
||
C --> effect
|
||
D --> effect
|
||
E --> effect
|
||
F --> effect
|
||
G --> effect
|
||
H --> effect
|
||
|
||
style config fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style effect fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
##### 场景示例:代码助手模型配置
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph codemodel ["代码助手配置"]
|
||
A["系统提示词<br/>━━━<br/>专业程序员<br/>详细注释<br/>最佳实践"]
|
||
|
||
B["知识库<br/>━━━<br/>项目文档<br/>API 文档<br/>编码规范"]
|
||
|
||
C["工具<br/>━━━<br/>代码执行<br/>linter<br/>测试运行器"]
|
||
|
||
D["能力<br/>━━━<br/>代码生成<br/>重构<br/>bug 修复"]
|
||
end
|
||
|
||
subgraph workflow ["工作流"]
|
||
E["需求描述"]
|
||
F["知识库查询"]
|
||
G["代码生成"]
|
||
H["自动测试"]
|
||
I["返回结果"]
|
||
end
|
||
|
||
E --> F --> G --> H --> I
|
||
|
||
style codemodel fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style workflow fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
####配置最佳实践
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph practice ["配置建议"]
|
||
A["🎯 明确定位<br/>━━━<br/>清晰的角色定义<br/>专注特定场景"]
|
||
|
||
B["📝 精炼提示词<br/>━━━<br/>简洁明确<br/>避免冲突指令"]
|
||
|
||
C["📚 合理关联<br/>━━━<br/>知识库按需绑定<br/>避免信息过载"]
|
||
|
||
D["🛠️ 渐进增强<br/>━━━<br/>先基础后高级<br/>逐步添加功能"]
|
||
|
||
E["🔍 持续优化<br/>━━━<br/>根据反馈调整<br/>迭代改进配置"]
|
||
|
||
F["👥 权限合理<br/>━━━<br/>最小权限原则<br/>按需分配"]
|
||
end
|
||
|
||
subgraph tips ["关键要点"]
|
||
G["✓ 一个模型一个用途<br/>✓ 提示词避免过于复杂<br/>✓ 工具按需启用<br/>✓ 定期审查配置<br/>✓ 测试后再推广"]
|
||
end
|
||
|
||
practice --> tips
|
||
|
||
style practice fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style tips fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 总结:自定义模型的价值
|
||
|
||
通过 OpenWebUI 的自定义模型功能,您可以:
|
||
|
||
- **🎯 精准控制**:细粒度的权限管理和行为定制
|
||
- **📚 知识增强**:无缝集成专业知识库,提升准确性
|
||
- **🛠️ 功能扩展**:通过工具和插件实现复杂业务流程
|
||
- **⚡ 提升效率**:一次配置,多次复用,标准化输出
|
||
- **👥 团队协作**:统一的模型配置,保证服务一致性
|
||
|
||
自定义模型功能将 OpenWebUI 从简单的对话工具升级为可深度定制的 AI 工作平台,满足从个人使用到企业级部署的各类需求。
|
||
|
||
### 五、四大特性与四大核心功能的完整协同
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph components ["四大核心特性"]
|
||
A["📁 文件夹<br/>项目工作室"]
|
||
B["📚 知识库<br/>专业智库"]
|
||
C["📋 用户提示词<br/>交互式模板"]
|
||
end
|
||
|
||
subgraph conversation ["四大对话功能"]
|
||
D["🔶 多模型并行"]
|
||
E["🔷 @提及深化"]
|
||
F["🔹 合并总结"]
|
||
G["🔸 内容选中追问"]
|
||
end
|
||
|
||
subgraph workflow ["完整工作流"]
|
||
I["产品经理<br/>创建文件夹"]
|
||
J["配置系统提示词"]
|
||
K["关联知识库"]
|
||
L["自定义模型配置"]
|
||
M["创建 /feature_analysis"]
|
||
N["工作时输入 /"]
|
||
O["填表自动生成"]
|
||
P["并行发送多模型<br/>对比 → 深化 → 优化"]
|
||
Q["高质量方案"]
|
||
end
|
||
|
||
A --> I
|
||
B --> K
|
||
C --> M
|
||
D --> L
|
||
|
||
E --> P
|
||
F --> P
|
||
G --> P
|
||
H --> P
|
||
|
||
I --> J --> K --> L --> M --> N --> O --> P --> Q
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style D fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style E fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style F fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style G fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style H fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style Q fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
## 总结:OpenWebUI 的独特价值主张
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph org ["📁 组织管理"]
|
||
A["文件夹即项目<br/>自动应用配置"]
|
||
end
|
||
|
||
subgraph know ["📚 知识体系"]
|
||
B["多源知识库<br/>智能检索注入"]
|
||
end
|
||
|
||
subgraph eff ["⚡ 工作效率"]
|
||
C["交互式提示词<br/>复杂需求简化"]
|
||
end
|
||
|
||
subgraph model ["⚙️ 模型定制"]
|
||
D["精细化配置<br/>权限与能力管理"]
|
||
end
|
||
|
||
subgraph quality ["🎯 对话品质"]
|
||
E["四大核心功能<br/>完整协同流程"]
|
||
end
|
||
|
||
subgraph value ["💎 最终价值"]
|
||
F["从混乱到秩序<br/>从碎片到系统<br/>从重复到高效<br/>从单一到多元<br/>━━━<br/>构建真正的<br/>AI 智囊团"]
|
||
end
|
||
|
||
A --> value
|
||
B --> value
|
||
C --> value
|
||
D --> value
|
||
E --> value
|
||
|
||
style org fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style know fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style eff fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style model fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style quality fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style value fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 对比表:OpenWebUI vs 其他工具
|
||
|
||
| 维度 | OpenWebUI | 其他工具 |
|
||
| -------------- | -------------------------- | ---------------- |
|
||
| **项目组织** | 📁 文件夹即项目 + 自动配置 | 文件夹只用于分类 |
|
||
| **知识来源** | 📚 笔记 + 文件 + URL + 对话 | 主要是文件上传 |
|
||
| **知识应用** | 自动检索 + 智能注入 | 需要手动引用 |
|
||
| **提示词管理** | 📋 文件夹级 + 交互式表单 | 通常无模板系统 |
|
||
| **多模型协同** | 🔶🔷🔹🔸 四大核心功能 | 基础的多模型切换 |
|
||
| **模型定制** | ⚙️ 精细化配置 + 权限管理 | 基础参数调整 |
|
||
| **开源友好度** | ⭐⭐⭐⭐⭐ 高度可定制 | 部分不开源 |
|
||
|
||
|
||
|
||
## 第三部分:扩展功能——Functions、Tools、OpenAPI Server 和 MCP Server
|
||
|
||
OpenWebUI 的真正强大之处在于其丰富的扩展能力。通过 Functions、Tools、OpenAPI Server 和 MCP Server,您可以将 OpenWebUI 从一个对话界面扩展成为一个功能完备的 AI 应用平台。
|
||
|
||
### 一、Functions(函数):模块化的 Python 插件系统
|
||
|
||
#### 什么是 Functions?
|
||
|
||
Functions 是用纯 Python 编写的模块化插件,运行在 OpenWebUI 环境内部,允许您:
|
||
|
||
- 集成新的 AI 模型提供商(如 Anthropic、Google Vertex AI)
|
||
- 自定义对话处理流程
|
||
- 添加自定义按钮、工作流步骤或 UI 行为
|
||
- 实现复杂的业务逻辑
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph types ["Functions 的三种类型"]
|
||
B["🔍 Filter Functions<br/>━━━<br/>预处理输入内容<br/>后处理输出内容<br/>强制执行样式和规范"]
|
||
|
||
C["⚡ Action Functions<br/>━━━<br/>响应模型/用户事件<br/>执行特定操作<br/>触发外部流程"]
|
||
|
||
A["🔗 Pipe Functions<br/>━━━<br/>创建自定义代理/模型<br/>在 UI 中显示为可选模型<br/>可链接实现高级工作流"]
|
||
end
|
||
|
||
subgraph features ["核心特性"]
|
||
D["✅ 纯 Python 实现"]
|
||
E["✅ 模块化设计"]
|
||
F["✅ 环境隔离"]
|
||
G["✅ 可链式调用"]
|
||
end
|
||
|
||
B --> D
|
||
C --> E
|
||
A --> F
|
||
B --> G
|
||
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style D fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style E fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style F fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style G fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
#### Filter Functions:智能内容处理
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph input_filter ["输入过滤器"]
|
||
A["用户原始输入"]
|
||
B["格式化处理"]
|
||
C["敏感信息过滤"]
|
||
D["上下文增强"]
|
||
E["发送给模型"]
|
||
end
|
||
|
||
subgraph output_filter ["输出过滤器"]
|
||
F["模型原始输出"]
|
||
G["语气调整"]
|
||
H["内容清理"]
|
||
I["格式优化"]
|
||
J["返回给用户"]
|
||
end
|
||
|
||
A --> B --> C --> D --> E
|
||
F --> G --> H --> I --> J
|
||
|
||
subgraph benefits ["应用价值"]
|
||
K["✅ 统一输入格式"]
|
||
L["✅ 保护隐私安全"]
|
||
M["✅ 优化输出质量"]
|
||
N["✅ 强制执行规范"]
|
||
end
|
||
|
||
E --> K
|
||
J --> M
|
||
|
||
style input_filter fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style output_filter fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style benefits fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
#### Action Functions:事件驱动的自动化
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph trigger ["触发器"]
|
||
A["对话完成"]
|
||
B["用户点击"]
|
||
C["特定关键词"]
|
||
D["定时任务"]
|
||
end
|
||
|
||
subgraph action ["Action 执行"]
|
||
E["保存到数据库"]
|
||
F["发送通知"]
|
||
G["调用外部 API"]
|
||
H["生成报告"]
|
||
I["触发工作流"]
|
||
end
|
||
|
||
A --> E
|
||
B --> F
|
||
C --> G
|
||
D --> H
|
||
E --> I
|
||
|
||
subgraph scenarios ["典型场景"]
|
||
J["对话归档<br/>自动保存重要对话"]
|
||
K["任务创建<br/>从对话生成待办事项"]
|
||
L["数据同步<br/>更新外部系统"]
|
||
end
|
||
|
||
style trigger fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style action fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style scenarios fill:#E85D75,stroke:#A23E52,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
#### Pipe Functions:构建自定义 AI 代理
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph pipe ["Pipe Function 工作流"]
|
||
A["用户输入"] --> B["Pipe Function 接收"]
|
||
B --> C["自定义处理逻辑<br/>━━━<br/>API 调用<br/>数据转换<br/>多模型编排"]
|
||
C --> D["返回结果"]
|
||
D --> E["UI 显示"]
|
||
end
|
||
|
||
subgraph examples ["应用示例"]
|
||
F["Google Search 代理<br/>实时搜索集成"]
|
||
G["Home Assistant 代理<br/>智能家居控制"]
|
||
H["多模型路由<br/>智能选择最佳模型"]
|
||
I["自定义 API 集成<br/>企业内部系统"]
|
||
end
|
||
|
||
style pipe fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style examples fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style F fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style G fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style H fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style I fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 二、Tools(工具):为 AI 赋予超能力
|
||
|
||
#### 什么是 Tools?
|
||
|
||
Tools 是 Python 脚本,为您的 AI 助手添加执行实际任务的能力:
|
||
|
||
- 实时网络搜索(天气、新闻)
|
||
- 图像生成与处理
|
||
- 语音合成(如 ElevenLabs 集成)
|
||
- 文档分析(PDF、Excel 等)
|
||
- 代码解释和执行
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph tool_types ["工具类型"]
|
||
A["🌐 网络工具<br/>━━━<br/>搜索引擎<br/>API 查询<br/>数据抓取"]
|
||
|
||
B["🎨 媒体工具<br/>━━━<br/>图像生成<br/>语音合成<br/>视频处理"]
|
||
|
||
C["📄 文档工具<br/>━━━<br/>PDF 解析<br/>表格分析<br/>内容提取"]
|
||
|
||
D["💻 代码工具<br/>━━━<br/>代码执行<br/>调试分析<br/>测试运行"]
|
||
end
|
||
|
||
subgraph modes ["调用模式"]
|
||
E["Default Mode<br/>━━━<br/>通过提示词工程<br/>LLM 决定何时调用"]
|
||
|
||
F["Native Mode<br/>━━━<br/>函数调用原生支持<br/>直接工具执行"]
|
||
end
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
#### Tools 工作流程
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph install ["安装阶段"]
|
||
A["从社区库选择"]
|
||
B["手动上传脚本"]
|
||
C["配置参数"]
|
||
end
|
||
|
||
subgraph enable ["启用阶段"]
|
||
D["会话级启用"]
|
||
E["模型默认工具"]
|
||
F["全局工具配置"]
|
||
end
|
||
|
||
subgraph execute ["执行阶段"]
|
||
G["用户提问"]
|
||
H["LLM 分析需求"]
|
||
I["选择合适工具"]
|
||
J["工具执行"]
|
||
K["结果整合"]
|
||
L["生成回答"]
|
||
end
|
||
|
||
A --> D
|
||
B --> E
|
||
C --> F
|
||
|
||
D --> G
|
||
E --> G
|
||
F --> G
|
||
|
||
G --> H --> I --> J --> K --> L
|
||
|
||
style install fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style enable fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style execute fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
#### 实战示例:网络搜索工具
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph scenario ["使用场景"]
|
||
A["用户提问:<br/>今天特斯拉股价是多少?"]
|
||
end
|
||
|
||
subgraph process ["处理流程"]
|
||
B["LLM 分析<br/>需要实时数据"]
|
||
C["调用搜索工具"]
|
||
D["获取最新股价"]
|
||
E["整合到回答中"]
|
||
end
|
||
|
||
subgraph result ["结果展示"]
|
||
F["截至今日收盘,<br/>特斯拉股价为 $XXX.XX,<br/>较昨日上涨 X.X%<br/>━━━<br/>🔗 数据来源:Yahoo Finance"]
|
||
end
|
||
|
||
A --> B --> C --> D --> E --> F
|
||
|
||
style scenario fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style process fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style result fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 三、OpenAPI Server:标准化的服务集成
|
||
|
||
#### 什么是 OpenAPI Server 集成?
|
||
|
||
OpenWebUI(v0.6+)支持通过符合 OpenAPI 标准的服务器扩展功能。这使得您可以连接任何暴露 OpenAPI (Swagger) 接口的服务——无论是自己的 Python 脚本、云 API,还是第三方服务。
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph architecture ["架构设计"]
|
||
A["OpenWebUI 前端"]
|
||
B["OpenWebUI 后端"]
|
||
C["OpenAPI Server<br/>━━━<br/>自定义服务<br/>FastAPI/Flask<br/>任何 HTTP 服务"]
|
||
end
|
||
|
||
subgraph benefits ["核心优势"]
|
||
D["🔌 标准化接口<br/>遵循 OpenAPI 规范"]
|
||
E["🔐 安全可控<br/>认证与授权"]
|
||
F["📚 自动文档<br/>Swagger UI"]
|
||
G["🔄 易于集成<br/>RESTful API"]
|
||
end
|
||
|
||
A --> B
|
||
B --> C
|
||
|
||
C --> D
|
||
C --> E
|
||
C --> F
|
||
C --> G
|
||
|
||
style architecture fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style benefits fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
#### 两种服务器模式
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph user_server ["👤 用户工具服务器"]
|
||
A["User Tool Server"]
|
||
A1["请求来自浏览器"]
|
||
A2["localhost = 用户计算机"]
|
||
A3["个人隐私工具"]
|
||
A4["本地资源访问"]
|
||
end
|
||
|
||
subgraph global_server ["🌐 全局工具服务器"]
|
||
B["Global Tool Server"]
|
||
B1["请求来自后端"]
|
||
B2["localhost = OpenWebUI 服务器"]
|
||
B3["团队共享工具"]
|
||
B4["中心化管理"]
|
||
end
|
||
|
||
A --> A1 --> A2
|
||
A2 --> A3
|
||
A2 --> A4
|
||
|
||
B --> B1 --> B2
|
||
B2 --> B3
|
||
B2 --> B4
|
||
|
||
subgraph use_cases ["使用场景"]
|
||
C["个人工具:<br/>本地文件访问<br/>私有 API 调用"]
|
||
D["团队工具:<br/>企业服务集成<br/>共享数据源"]
|
||
end
|
||
|
||
A4 --> C
|
||
B4 --> D
|
||
|
||
style user_server fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style global_server fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style use_cases fill:#E85D75,stroke:#A23E52,color:#fff
|
||
```
|
||
|
||
#### 开发自定义工具服务器
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph develop ["开发指南"]
|
||
A["选择框架<br/>━━━<br/>FastAPI(推荐)<br/>Flask<br/>其他 HTTP 框架"]
|
||
|
||
B["实现端点<br/>━━━<br/>定义 API 路由<br/>处理请求<br/>返回 JSON"]
|
||
|
||
C["生成 OpenAPI<br/>━━━<br/>自动生成文档<br/>暴露 /openapi.json<br/>Swagger UI"]
|
||
|
||
D["添加安全<br/>━━━<br/>认证机制<br/>CORS 配置<br/>访问控制"]
|
||
end
|
||
|
||
subgraph example ["示例场景"]
|
||
E["文件系统工具<br/>读写本地文件"]
|
||
F["数据库查询<br/>执行 SQL 查询"]
|
||
G["外部 API<br/>调用第三方服务"]
|
||
H["自定义业务<br/>企业内部逻辑"]
|
||
end
|
||
|
||
A --> B --> C --> D
|
||
|
||
D --> E
|
||
D --> F
|
||
D --> G
|
||
D --> H
|
||
|
||
style develop fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style example fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 四、MCP Server:下一代工具协议
|
||
|
||
#### 什么是 MCP(Model Context Protocol)?
|
||
|
||
MCP 是一个为 AI 代理设计的开放标准协议,使得 AI 能够以安全、统一、上下文驱动的方式发现和交互外部工具(如代码操作、文件访问、数据库查询、自定义 API)。
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph mcp_concept ["MCP 核心概念"]
|
||
A["🎯 标准化协议<br/>━━━<br/>统一的工具发现<br/>结构化的操作模式<br/>安全的执行机制"]
|
||
|
||
B["🧠 上下文感知<br/>━━━<br/>保持状态信息<br/>理解使用场景<br/>智能决策支持"]
|
||
|
||
C["🔐 安全设计<br/>━━━<br/>权限控制<br/>沙箱隔离<br/>审计日志"]
|
||
end
|
||
|
||
subgraph why_mcp ["为什么需要 MCP?"]
|
||
D["❌ 传统问题<br/>━━━<br/>每个工具独立集成<br/>缺乏统一标准<br/>重复开发工作"]
|
||
|
||
E["✅ MCP 解决<br/>━━━<br/>一次集成多个工具<br/>标准化接口<br/>自动工具发现"]
|
||
end
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style E fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
#### OpenWebUI 中的 MCP 集成架构
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph architecture ["三层架构"]
|
||
A["OpenWebUI<br/>前端界面"]
|
||
|
||
B["mcpo<br/>代理服务器<br/>━━━<br/>MCP → OpenAPI<br/>协议转换"]
|
||
|
||
C["MCP Server<br/>工具服务器<br/>━━━<br/>实际功能实现<br/>stdio/HTTP"]
|
||
end
|
||
|
||
subgraph flow ["工作流程"]
|
||
D["1. 用户请求"]
|
||
E["2. OpenWebUI<br/>调用 REST API"]
|
||
F["3. mcpo<br/>转换为 MCP 协议"]
|
||
G["4. MCP Server<br/>执行任务"]
|
||
H["5. 结果返回"]
|
||
end
|
||
|
||
A --> B
|
||
B --> C
|
||
|
||
D --> E --> F --> G --> H
|
||
|
||
style architecture fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style flow fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
```
|
||
|
||
**为什么使用代理模式?**
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph reasons ["代理服务器的价值"]
|
||
A["🔒 安全性<br/>━━━<br/>沙箱后端行为<br/>认证与授权<br/>减小攻击面"]
|
||
|
||
B["🔄 互操作性<br/>━━━<br/>统一为 OpenAPI<br/>无需自定义连接器<br/>标准 REST API"]
|
||
|
||
C["📈 可扩展性<br/>━━━<br/>独立演进<br/>模块化设计<br/>易于维护"]
|
||
|
||
D["📚 自动文档<br/>━━━<br/>Swagger UI<br/>交互式测试<br/>API 探索"]
|
||
end
|
||
|
||
style A fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style B fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style C fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style D fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
```
|
||
|
||
#### MCP 应用场景
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph scenarios ["典型应用"]
|
||
A["📖 知识库检索<br/>━━━<br/>RAG 文档搜索<br/>向量数据库查询<br/>智能知识管理"]
|
||
|
||
B["📁 文件操作<br/>━━━<br/>读写本地文件<br/>目录管理<br/>文件搜索"]
|
||
|
||
C["🗄️ 数据访问<br/>━━━<br/>数据库查询<br/>API 调用<br/>数据处理"]
|
||
|
||
D["🎯 领域工具<br/>━━━<br/>特定行业工具<br/>企业内部系统<br/>自定义功能"]
|
||
end
|
||
|
||
subgraph enterprise ["企业级部署"]
|
||
E["多服务器集成<br/>━━━<br/>统一代理管理<br/>多个 MCP 服务器<br/>工具编排"]
|
||
|
||
F["安全合规<br/>━━━<br/>访问控制<br/>审计日志<br/>数据隔离"]
|
||
end
|
||
|
||
A --> E
|
||
B --> E
|
||
C --> E
|
||
D --> E
|
||
|
||
E --> F
|
||
|
||
style scenarios fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style enterprise fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 五、扩展功能对比与选择指南
|
||
|
||
#### 四种扩展方式对比
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph comparison ["功能对比"]
|
||
A["📊 对比维度"]
|
||
end
|
||
|
||
subgraph functions ["Functions"]
|
||
B["运行位置<br/>OpenWebUI 内部"]
|
||
C["开发语言<br/>纯 Python"]
|
||
D["适用场景<br/>轻量级集成<br/>UI 定制<br/>流程控制"]
|
||
E["优势<br/>简单快速<br/>深度集成"]
|
||
end
|
||
|
||
subgraph tools ["Tools"]
|
||
F["运行位置<br/>OpenWebUI 内部"]
|
||
G["开发语言<br/>Python 脚本"]
|
||
H["适用场景<br/>AI 能力扩展<br/>实时查询<br/>媒体处理"]
|
||
I["优势<br/>易于管理<br/>丰富社区"]
|
||
end
|
||
|
||
subgraph openapi ["OpenAPI Server"]
|
||
J["运行位置<br/>独立服务器"]
|
||
K["开发语言<br/>任意语言"]
|
||
L["适用场景<br/>复杂服务<br/>企业集成<br/>已有系统"]
|
||
M["优势<br/>标准化<br/>可扩展"]
|
||
end
|
||
|
||
subgraph mcp ["MCP Server"]
|
||
N["运行位置<br/>独立服务器"]
|
||
O["开发语言<br/>任意语言"]
|
||
P["适用场景<br/>下一代集成<br/>多工具编排<br/>智能代理"]
|
||
Q["优势<br/>未来标准<br/>上下文感知"]
|
||
end
|
||
|
||
style comparison fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style functions fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style tools fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style openapi fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style mcp fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
#### 选择决策树
|
||
|
||
```mermaid
|
||
graph TB
|
||
start["我需要扩展 OpenWebUI"]
|
||
|
||
q1{"需求类型?"}
|
||
q2{"现有系统?"}
|
||
q3{"团队技术栈?"}
|
||
q4{"未来规划?"}
|
||
|
||
a1["Functions<br/>━━━<br/>简单快速<br/>UI 集成"]
|
||
a2["Tools<br/>━━━<br/>AI 能力<br/>社区资源"]
|
||
a3["OpenAPI Server<br/>━━━<br/>标准集成<br/>现有系统"]
|
||
a4["MCP Server<br/>━━━<br/>未来标准<br/>智能编排"]
|
||
|
||
start --> q1
|
||
|
||
q1 -->|UI 定制<br/>流程控制| a1
|
||
q1 -->|AI 能力扩展| a2
|
||
q1 -->|服务集成| q2
|
||
|
||
q2 -->|有现成 API| a3
|
||
q2 -->|需要新开发| q3
|
||
|
||
q3 -->|Python 为主| a2
|
||
q3 -->|多语言| q4
|
||
|
||
q4 -->|传统架构| a3
|
||
q4 -->|现代化<br/>AI 原生| a4
|
||
|
||
style start fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style q1 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style q2 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style q3 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style q4 fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style a1 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style a2 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style a3 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style a4 fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 六、扩展功能最佳实践
|
||
|
||
#### 开发建议
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph principles ["核心原则"]
|
||
A["🎯 单一职责<br/>━━━<br/>一个扩展<br/>一个功能"]
|
||
|
||
B["📝 清晰文档<br/>━━━<br/>使用说明<br/>参数描述<br/>示例代码"]
|
||
|
||
C["🔒 安全第一<br/>━━━<br/>输入验证<br/>错误处理<br/>权限控制"]
|
||
|
||
D["🧪 充分测试<br/>━━━<br/>单元测试<br/>集成测试<br/>边界测试"]
|
||
end
|
||
|
||
subgraph deployment ["部署策略"]
|
||
E["开发环境<br/>本地测试<br/>快速迭代"]
|
||
|
||
F["测试环境<br/>团队验证<br/>性能测试"]
|
||
|
||
G["生产环境<br/>稳定发布<br/>监控告警"]
|
||
end
|
||
|
||
A --> E
|
||
B --> E
|
||
C --> F
|
||
D --> F
|
||
|
||
E --> F --> G
|
||
|
||
style principles fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style deployment fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
#### 性能优化
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph optimize ["优化要点"]
|
||
A["⚡ 响应速度<br/>━━━<br/>异步处理<br/>缓存策略<br/>连接池"]
|
||
|
||
B["📊 资源管理<br/>━━━<br/>内存控制<br/>并发限制<br/>超时设置"]
|
||
|
||
C["🔄 错误恢复<br/>━━━<br/>重试机制<br/>降级方案<br/>友好提示"]
|
||
|
||
D["📈 可观测性<br/>━━━<br/>日志记录<br/>性能指标<br/>错误追踪"]
|
||
end
|
||
|
||
subgraph monitoring ["监控指标"]
|
||
E["响应时间"]
|
||
F["成功率"]
|
||
G["错误率"]
|
||
H["资源使用"]
|
||
end
|
||
|
||
A --> E
|
||
B --> F
|
||
C --> G
|
||
D --> H
|
||
|
||
style optimize fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style monitoring fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
---
|
||
|
||
### 七、社区资源与学习路径
|
||
|
||
```mermaid
|
||
graph LR
|
||
subgraph resources ["官方资源"]
|
||
A["📚 官方文档<br/>docs.openwebui.com"]
|
||
B["💻 GitHub 仓库<br/>源码与示例"]
|
||
C["💬 社区讨论<br/>问题与解答"]
|
||
end
|
||
|
||
subgraph libraries ["社区库"]
|
||
D["Functions 库<br/>github.com/open-webui/functions"]
|
||
E["Tools 库<br/>社区贡献工具"]
|
||
F["OpenAPI 服务器示例<br/>参考实现"]
|
||
end
|
||
|
||
subgraph learning ["学习路径"]
|
||
G["1. 基础<br/>了解概念<br/>阅读文档"]
|
||
H["2. 实践<br/>运行示例<br/>简单修改"]
|
||
I["3. 开发<br/>创建扩展<br/>解决问题"]
|
||
J["4. 分享<br/>贡献社区<br/>帮助他人"]
|
||
end
|
||
|
||
A --> G
|
||
B --> H
|
||
C --> I
|
||
D --> H
|
||
E --> H
|
||
F --> H
|
||
|
||
G --> H --> I --> J
|
||
|
||
style resources fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style libraries fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style learning fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
```
|
||
|
||
---
|
||
|
||
### 总结:构建完整的 AI 应用生态
|
||
|
||
通过 Functions、Tools、OpenAPI Server 和 MCP Server 四大扩展机制,OpenWebUI 提供了从简单到复杂、从内部到外部的完整扩展能力:
|
||
|
||
```mermaid
|
||
graph TB
|
||
subgraph ecosystem ["OpenWebUI 扩展生态"]
|
||
A["核心对话平台"]
|
||
|
||
B["Functions<br/>内部扩展<br/>━━━<br/>流程控制<br/>UI 定制"]
|
||
|
||
C["Tools<br/>能力增强<br/>━━━<br/>实时查询<br/>媒体处理"]
|
||
|
||
D["OpenAPI Server<br/>服务集成<br/>━━━<br/>企业系统<br/>标准接口"]
|
||
|
||
E["MCP Server<br/>智能编排<br/>━━━<br/>下一代标准<br/>上下文感知"]
|
||
end
|
||
|
||
subgraph value ["核心价值"]
|
||
F["🎯 灵活扩展<br/>满足各种需求"]
|
||
G["🔌 标准化<br/>易于集成"]
|
||
H["🚀 快速开发<br/>丰富生态"]
|
||
I["🔐 安全可控<br/>企业级"]
|
||
end
|
||
|
||
A --> B
|
||
A --> C
|
||
A --> D
|
||
A --> E
|
||
|
||
B --> F
|
||
C --> G
|
||
D --> H
|
||
E --> I
|
||
|
||
style A fill:#F5A623,stroke:#C27D0E,color:#fff
|
||
style B fill:#4A90E2,stroke:#2E5C8A,color:#fff
|
||
style C fill:#50E3C2,stroke:#2EA896,color:#fff
|
||
style D fill:#E85D75,stroke:#A23E52,color:#fff
|
||
style E fill:#7ED321,stroke:#5BA30A,color:#fff
|
||
style F fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style G fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style H fill:#B8E986,stroke:#7BA30A,color:#000
|
||
style I fill:#B8E986,stroke:#7BA30A,color:#000
|
||
```
|
||
|
||
**关键要点:**
|
||
|
||
- **🔧 Functions**:适合轻量级、深度集成的内部扩展
|
||
- **🛠️ Tools**:为 AI 提供执行实际任务的能力
|
||
- **🌐 OpenAPI Server**:连接现有系统和服务的标准方式
|
||
- **🚀 MCP Server**:面向未来的智能工具协议
|
||
|
||
无论您是个人开发者还是企业团队,OpenWebUI 的扩展能力都能帮助您构建符合需求的定制化 AI 应用平台。从简单的对话界面,到复杂的智能工作流,OpenWebUI 提供了完整的工具链和生态支持。
|
||
|
||
---
|
||
|
||
## 全文总结
|
||
|
||
OpenWebUI 不仅仅是一个 AI 对话界面,而是一个完整的 AI 应用开发平台:
|
||
|
||
**第一部分**:通过**多模型并行**、**@提及机制**、**智能合并总结**和**内容选中追问**四大核心功能,构建了强大的多模型协同对话体系。
|
||
|
||
**第二部分**:通过**文件夹管理**、**知识库系统**、**用户提示词**和**自定义模型配置**,实现了从混乱到秩序、从碎片到系统的智能工作台转变,提供了精细化的模型管理能力,满足从个人到企业的各类需求。
|
||
|
||
**第三部分**:通过**Functions**、**Tools**、**OpenAPI Server**和**MCP Server**四大扩展机制,构建了完整的应用生态,实现了从简单对话到复杂业务流程的全面支持。
|
||
|
||
OpenWebUI 将 AI 对话、知识管理、工作流程和应用开发完美融合,为用户提供了一个真正的 AI 智囊团和工作平台。
|