You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**Open-WebUI-Functions** is a collection of Python-based functions designed to extend the capabilities of [Open WebUI](https://own.dev/github-com-open-webui-open-webui) with additional **pipelines**, **filters**, and **integrations**. These functions allow users to interact with various AI models, process data efficiently, and customize the Open WebUI experience.
4
10
5
-
---
6
11
7
-
## Features
12
+
## Features ⭐
8
13
9
-
-**Custom Pipelines**: Extend Open WebUI with AI processing pipelines, including model inference and data transformations.
10
-
-**Filters for Data Processing**: Apply custom filtering logic to refine, manipulate, or preprocess input and output data.
11
-
-**Azure AI Support**: Seamlessly connect Open WebUI with **Azure OpenAI** and other **Azure AI** models.
12
-
-**N8N Workflow Integration**: Enable interactions with [N8N](https://own.dev/n8n-io) for automation.
13
-
-**Flexible Configuration**: Use environment variables to adjust function settings dynamically.
14
-
-**Streaming and Non-Streaming Support**: Handle both real-time and batch processing efficiently.
15
-
-**Secure API Key Management**: Automatic encryption of sensitive information like API keys.
14
+
- 🧩 **Custom Pipelines**: Extend Open WebUI with AI processing pipelines, including model inference and data transformations.
16
15
17
-
---
16
+
- 🔍 **Filters for Data Processing**: Apply custom filtering logic to refine, manipulate, or preprocess input and output data.
17
+
18
+
- 🤝 **Azure AI Support**: Seamlessly connect Open WebUI with **Azure OpenAI** and other **Azure AI** models.
19
+
20
+
- 🤝 **N8N Workflow Integration**: Enable interactions with [N8N](https://own.dev/n8n-io) for automation.
21
+
22
+
- 📱 **Flexible Configuration**: Use environment variables to adjust function settings dynamically.
18
23
19
-
## Prerequisites
24
+
- 🚀 **Streaming and Non-Streaming Support**: Handle both real-time and batch processing efficiently.
25
+
26
+
- 🛡️ **Secure API Key Management**: Automatic encryption of sensitive information like API keys.
27
+
28
+
29
+
## Prerequisites 🔗
20
30
21
31
To use these functions, ensure the following:
22
32
23
33
1.**An Active Open WebUI Instance**: You must have [Open WebUI](https://own.dev/github-com-open-webui-open-webui) installed and running.
34
+
24
35
2.**Required AI Services (if applicable)**: Some pipelines require external AI services, such as [Azure AI](https://own.dev/ai-azure-com).
36
+
25
37
3.**Admin Access**: To install functions in Open WebUI, you must have administrator privileges.
26
38
27
-
---
28
39
29
-
## Installation
40
+
## Installation 🚀
30
41
31
42
To install and configure functions in Open WebUI, follow these steps:
32
43
@@ -50,9 +61,8 @@ To install and configure functions in Open WebUI, follow these steps:
50
61
6.**Save and Activate**:
51
62
- Save the function, and it will be available for use within Open WebUI.
52
63
53
-
---
54
64
55
-
## Security Features
65
+
## Security Features 🛡️
56
66
57
67
### API Key Encryption
58
68
@@ -63,22 +73,21 @@ The functions include a built-in encryption mechanism for sensitive information:
63
73
-**Transparent Usage**: The encryption/decryption happens automatically when values are accessed.
64
74
-**No Configuration Required**: Works out-of-the-box when [WEBUI_SECRET_KEY](https://own.dev/docs-openwebui-com-getting-started-env-configuration-webui-secret-key) is set.
65
75
66
-
To enable encryption:
76
+
77
+
**To enable encryption:**
67
78
```bash
68
79
# Set this in your Open WebUI environment or .env file
69
80
WEBUI_SECRET_KEY="your-secure-random-string"
70
81
```
71
82
72
-
---
73
-
74
-
## Pipelines
83
+
## Pipelines 🧩
75
84
76
85
Pipelines are processing functions that extend Open WebUI with **custom AI models**, **external integrations**, and **data manipulation logic**.
77
86
78
87
### **1. [Azure AI Foundry Pipeline](https://own.dev/github-owndev-open-webui-functions-azure-ai-foundry)**
79
88
80
89
- Enables interaction with **Azure OpenAI** and other **Azure AI** models.
81
-
- Supports multiple Azure AI models selection via the `AZURE_AI_MODEL` environment variable (e.g. `gpt-4o, gpt-4o-mini`).
90
+
- Supports multiple Azure AI models selection via the `AZURE_AI_MODEL` environment variable (e.g. `gpt-4o;gpt-4o-mini`).
82
91
- Filters valid parameters to ensure clean requests.
83
92
- Handles both streaming and non-streaming responses.
84
93
- Provides configurable error handling and timeouts.
@@ -87,6 +96,8 @@ Pipelines are processing functions that extend Open WebUI with **custom AI model
87
96
88
97
🔗 [Azure AI Pipeline in Open WebUI](https://own.dev/openwebui-com-f-owndev-azure-ai)
89
98
99
+
🔗 [Learn More About Azure AI](https://own.dev/azure-microsoft-com-en-us-solutions-ai)
@@ -112,9 +123,8 @@ Pipelines are processing functions that extend Open WebUI with **custom AI model
112
123
113
124
🔗 [Learn More About Infomaniak](https://own.dev/infomaniak-com-en-hosting-ai-tools)
114
125
115
-
---
116
126
117
-
## Filters
127
+
## Filters 🔍
118
128
119
129
Filters allow for **preprocessing and postprocessing** of data within Open WebUI.
120
130
@@ -126,32 +136,53 @@ Filters allow for **preprocessing and postprocessing** of data within Open WebUI
126
136
- Uses OpenAI's `tiktoken` library for token counting (only accurate for OpenAI models).
127
137
- Optional: Can send logs to [Azure Log Analytics Workspace](https://own.dev/learn-microsoft-com-en-us-azure-azure-monitor-logs-log-analytics-workspace-overview).
128
138
129
-
🔗 [How to Setup](https://own.dev/github-owndev-open-webui-functions-setup-azure-log-analytics)
130
-
131
139
🔗 [Time Token Tracker in Open WebUI](https://own.dev/openwebui-com-f-owndev-time-token-tracker)
132
140
133
-
---
141
+
🔗 [How to Setup Azure Log Analytics](https://own.dev/github-owndev-open-webui-functions-setup-azure-log-analytics)
134
142
135
-
## Azure AI Integration
143
+
## Integrations 🤝
136
144
137
-
The repository includes functions specifically designed for **Azure AI**, supporting both **Azure OpenAI** models and general **Azure AI** services.
145
+
### Azure AI
138
146
139
-
### Features:
140
-
-**Azure OpenAI API Support**: Access models like **GPT-4o, o3**, and **other fine-tuned AI models** via Azure.
141
-
-**Azure AI Model Deployment**: Connect to **custom models** hosted on Azure AI.
142
-
-**Secure API Requests**: Supports API key authentication and environment variable configurations.
147
+
Look here for [Azure AI Integration](https://own.dev/github-owndev-open-webui-functions-azure-ai-integration-md).
AZURE_AI_MODEL="gpt-4o, gpt-4o-mini"# Optional model name, only necessary if not Azure OpenAI or if model name not in URL (e.g. "https://<your-endpoint>/openai/deployments/<model-name>/chat/completions").
150
-
```
151
149
152
-
---
150
+
### N8N
151
+
152
+
Look here for [N8N Integration](https://own.dev/github-owndev-open-webui-functions-n8n-integration-md).
153
+
154
+
155
+
### Infomaniak
153
156
154
-
## Contribute
157
+
Look here for [Infomaniak Integration](https://own.dev/github-owndev-open-webui-functions-infomaniak-integration-md).
158
+
159
+
160
+
## Contribute 💪
155
161
156
162
We accept different types of contributions, including some that don't require you to write a single line of code.
157
-
For detailed instructions on how to get started with our project, see [About contributing to Open-WebUI-Functions](https://own.dev/github-owndev-open-webui-functions-contributing).
163
+
For detailed instructions on how to get started with our project, see [about contributing to Open-WebUI-Functions](https://own.dev/github-owndev-open-webui-functions-contributing).
164
+
165
+
166
+
## License 📜
167
+
168
+
This project is licensed under the [Apache License 2.0](https://own.dev/github-owndev-open-webui-functions-license) - see the [LICENSE](https://own.dev/github-owndev-open-webui-functions-license) file for details. 📄
169
+
170
+
171
+
## Support 💬
172
+
173
+
If you have any questions, suggestions, or need assistance, please open an [issue](https://own.dev/github-owndev-open-webui-functions-issues-new) to connect with us! 🤝
# Optional: model names (if not embedded in the URL)
39
+
# Supports semicolon or comma separated values: "gpt-4o;gpt-4o-mini" or "gpt-4o,gpt-4o-mini"
40
+
AZURE_AI_MODEL="gpt-4o;gpt-4o-mini"
41
+
42
+
# If true, the model name will be included in the request body
43
+
AZURE_AI_MODEL_IN_BODY=true
44
+
45
+
# Whether to use a predefined list of Azure AI models
46
+
USE_PREDEFINED_AZURE_AI_MODELS=false
47
+
48
+
# If true, use "Authorization: Bearer" instead of "api-key" header
49
+
AZURE_AI_USE_AUTHORIZATION_HEADER=false
50
+
```
51
+
52
+
> [!TIP]
53
+
> To use **Azure OpenAI** and other **Azure AI** models **simultaneously**, you can use the following URL: `https://<your project>.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview`
This integration allows Open WebUI to communicate with workflows created in **n8n**, a powerful workflow automation tool. Messages are sent and received via webhook endpoints, making it easy to plug Open WebUI into your existing automation pipelines.
0 commit comments