Skip to main content
Pipelines provide a powerful plugin framework that allows you to seamlessly integrate custom logic and Python libraries into Open WebUI. The framework acts as middleware between the UI and your language models, enabling you to modify requests and responses.

Overview

Pipelines can be used to:
  • Add custom logic before and after model inference
  • Implement rate limiting and usage monitoring
  • Filter and transform messages
  • Integrate third-party services
  • Enable live translation
  • Monitor and log conversations
Pipelines run as a separate service and communicate with Open WebUI through OpenAI-compatible API endpoints.

Installation

1

Install Pipelines

Clone and set up the Pipelines repository:
2

Start Pipelines Server

Launch the Pipelines service:
By default, the server runs on http://localhost:9099
3

Configure Open WebUI

In Open WebUI admin settings, add the Pipelines URL as an OpenAI API endpoint:
  • Navigate to Admin Panel → Settings → Connections
  • Add new OpenAI API URL: http://localhost:9099
  • Set an API key (any string will work for local development)

Pipeline Architecture

Pipelines implement two main filter types:

Inlet Filters

Process requests before they reach the model:

Outlet Filters

Process responses after the model generates them:

Managing Pipelines

Upload Pipeline

Admin users can upload custom pipeline files through the API:

Add Pipeline from URL

Install pipelines directly from a URL:

List Available Pipelines

Retrieve all configured pipeline instances:

Valves Configuration

Pipelines support configurable parameters called “valves”:

Get Pipeline Valves

Update Pipeline Valves

Common Use Cases

Pipeline Priority

Multiple pipelines can be chained together. The execution order is determined by priority:
Inlet filters execute in descending priority order (highest first). Outlet filters execute in ascending priority order (lowest first).

Troubleshooting

Ensure your pipeline file:
  • Is a valid Python file (.py extension)
  • Contains a Pipeline class
  • Implements inlet() and/or outlet() methods
  • Handles exceptions appropriately

Common Issues

Pipeline not appearing in Open WebUI:
  • Check that the Pipelines server is running
  • Verify the OpenAI API URL is correctly configured
  • Ensure the pipeline file was uploaded successfully
Pipeline errors:
  • Check server logs for Python exceptions
  • Validate that all dependencies are installed
  • Ensure valve configuration is valid

Next Steps