🧰 Функции
🚀 Что такое функции?
Функции похожи на плагины для Open WebUI. Они помогают вам расширить его возможности — будь то добавление поддержки новых поставщиков моделей ИИ, таких как Anthropic или Vertex AI, настройка обработки сообщений или добавление настраиваемы х кнопок в интерфейс для повышения удобства использования.
В отличие от внешних инструментов, которые могут требовать сложной интеграции, функции встроены и работают внутри среды Open WebUI. Это означает, что они быстрые, модульные и не зависят от внешних зависимостей.
Думайте о функциях как о модульных строительных блоках, которые позволяют вам улучшать работу WebUI, адаптируя ее именно к вашим потребностям. Они легковесны, легко настраиваются и написаны на чистом Python, предоставляя вам свободу создавать что угодно — от новых рабочих процессов на основе ИИ до интеграций с используемыми вами системами, такими как Google Search или Home Assistant.
🏗️ Типы функций
В Open WebUI существует три типа функций, каждая из которых имеет свою конкретную цель. Давайте разберем их и объясним, что именно они делают:
1. Pipe Function – Создание настраиваемых «агентов/моделей»
Pipe Function — это способ создания настраиваемых агентов/моделей или интеграций, которые затем появляются в интерфейсе как самостоятельные модели.
Что это делает?
- Функции Pipe позволяют вам определить сложные рабочие процессы. Например, вы можете создать функцию Pipe, которая отправляет данные в Модель А и Модель B, обрабатывает их выходные данные и объединяет результаты в один окончательный ответ.
- Функции Pipe даже не обязательно должны использовать ИИ! Это могут быть настройки для API поиска, данных о погоде или даже систем, таких как Home Assistant. По сути, все, с чем вы хотите взаимодействовать, может стать частью Open WebUI.
Пример использования: Представьте, что вы хотите выполнить поиск в Google напрямую из Open WebUI. Вы можете создать функцию Pipe, кот орая:
- Принимает ваше сообщение в качестве поискового запроса.
- Отправляет этот запрос в API поискового сервиса Google.
- Обрабатывает ответ и возвращает его вам в WebUI как обычный ответ модели.
Когда включены, Pipe Functions отображаются как их собственная модель, доступная для выбора. Используйте функции Pipe, когда вам нужна настраиваемая функциональность, работающая как модель в интерфейсе.
Подробное руководство смотрите в Pipe Functions.
2. Filter Function – Изменение входных и выходных данных
Filter Function — это инструмент для изменения данных перед их отправкой в ИИ или после получения результата.
Что это делает? Фильтры действуют как «хуки» в рабочем процессе и имеют две основные части:
- Вход: Изменение входных данных, отправляемых в модель. Например, добавление инструкций, ключевых слов или форматирование.
- Выход: Изменение выходных данных, которые вы получаете от модели. Например, очистка ответа, изменение тона или форматирование данных в определенном стиле.
Пример использования: Предположим, вы работаете над проектом, который требует точного форматирования. Вы можете использовать фильтр для обеспечения:
- Трансформации входных данных в требуемый формат.
- Очистки выходных данных модели перед их отображением.
Фильтры могут быть связаны с конкретными моделями или включены для всех моделей глобально, в зависимости от ваших потребностей.
Изучите полное руководство для получения дополнительных примеров и инструкций: Filter Functions.