- NSFW Video API
- У OpenWebUI есть API? Да, в двух направлениях
У OpenWebUI есть API? Да, в двух направлениях
Есть ли у Open WebUI API? Да, и этот вопрос имеет два смысла: Open WebUI предоставляет собственный API, а также может использовать API другого сервиса в качестве бэкенда для моделей. На этой странице описаны оба варианта и показано, как они сочетаются.

Два разных API, которые имеют в виду люди
Когда кто-то спрашивает, есть ли у Open WebUI API, он может спрашивать о любом из двух направлений. Путаница между ними — главная причина, почему руководства по настройке кажутся запутанными, поэтому сначала полезно их разделить.
- Входящий: ваша программа отправляет запросы в Open WebUI. Она действует как сервер с эндпоинтами для чата, моделей и файлов, защищенными API-ключом, который вы создаете внутри приложения.
- Исходящий: Open WebUI отправляет запросы на сервер модели, чтобы окну чата было с чем общаться. Это подключение вы настраиваете в разделе «Настройки администратора».
Так что короткий ответ — да, в обоих направлениях. Проект документирует API с маршрутом чата в стиле OpenAI и поддерживает подключение к любому серверу, поддерживающему протокол OpenAI. Детали, такие как точные пути и обработка ключей, могут меняться между версиями, поэтому проверьте документацию для выпуска, который вы используете.
Этот сайт предоставляет модель на исходящей стороне: размещённое текстовое API, совместимое с OpenAI, с единственным идентификатором модели uncensored. Это не Open WebUI и не запускает его за вас. Open WebUI — это программное обеспечение, которое вы размещаете самостоятельно.
Использование собственного API Open WebUI
Open WebUI позволяет авторизованному пользователю создать API-ключ в настройках своего аккаунта. С этим ключом вы можете вызывать его эндпоинты из скриптов. Эндпоинт чата следует формату OpenAI, поэтому существующий код клиента часто можно направить на него. Маршрут, задокументированный проектом на момент написания, — /api/chat/completions; сверьтесь с вашей версией.
# Open WebUI running locally on port 3000, key created in Settings > Account
curl http://localhost:3000/api/chat/completions \
-H "Authorization: Bearer $OPENWEBUI_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"Summarize this scene in one line."}]}'
Обратите внимание, что в этом случае имя модели — это та модель, которую Open WebUI зарегистрировал. Если вы подключили это API в качестве бэкенда, это имя — uncensored. Ключ в этом запросе — это ключ Open WebUI, а не ключ API модели. Это два отдельных набора учетных данных с разными задачами.
Зачем вообще использовать входящее API? Оно полезно, когда вам нужны дополнительные возможности Open WebUI за вашей программой, такие как хранимые коллекции знаний, учетные записи пользователей или пресеты моделей, и вы хотите получить к ним доступ без браузера.
Использование внешнего API в качестве бэкенда
Другое направление — это то, что нужно большинству людей. У Open WebUI есть раздел для подключений, совместимых с OpenAI, где вы вводите URL и ключ. Для этого сервиса значения следующие:
- URL:
https://api.nsfwvideo.top/v1 - Ключ: тот, что со страницы ключей
- Модель:
uncensored, обнаруживается автоматически черезGET /v1/models
Пошагово: откройте «Настройки администратора», перейдите в «Подключения», добавьте подключение API OpenAI, вставьте URL и ключ, сохраните и выберите модель в новом чате. Если вы предпочитаете запуск через командную строку, установите переменные окружения OPENAI_API_BASE_URL и OPENAI_API_KEY при запуске контейнера.
docker run -d -p 3000:8080 \
-e OPENAI_API_BASE_URL=https://api.nsfwvideo.top/v1 \
-e OPENAI_API_KEY=$API_KEY \
-v open-webui:/app/backend/data \
ghcr.io/open-webui/open-webui:main
Имейте в виду, что Open WebUI сохраняет множество настроек в свою базу данных при первом запуске. Если позже вы измените переменную окружения и ничего не произойдет, отредактируйте подключение в панели администратора. В быстром руководстве есть формат запроса, который ожидает бэкенд, если вы хотите проверить его с помощью curl.
Связывание двух
Вы можете использовать оба направления одновременно. Ваше приложение вызывает входящее API Open WebUI с ключом Open WebUI, Open WebUI перенаправляет чат в настроенный бэкенд, и ответ возвращается. Такая конфигурация имеет смысл в нескольких ситуациях: команда уже использует Open WebUI с учетными записями и хочет, чтобы скрипты использовали его предустановки, или вы хотите одно место, которое хранит настройки персонажей как для людей, так и для программ.
Это добавляет лишний переход. Каждый запрос теперь проходит через ваш сервер Open WebUI, прежде чем достичь API модели, поэтому есть еще один компонент, который нужно поддерживать, обновлять и защищать. Лимиты запросов также суммируются неочевидным образом: ключ бэкенда позволяет 8 параллельных запросов и 300 в минуту для полного ключа, и каждый пользователь и скрипт, проходящие через ваш экземпляр Open WebUI, делят это ограничение. Если бэкенд отвечает HTTP 429 с кодом ошибки rate_limited или concurrency, сбой обычно отобразится как ошибка в Open WebUI и у вызывающей стороны.
Когда стоит пропустить Open WebUI и обращаться к API напрямую
Если вам нужен только скрипт для генерации текста, например, планов, описаний сцен или черновой озвучки, Open WebUI не нужен. Этот сервис — обычный эндпоинт, совместимый с OpenAI, поэтому стандартный SDK обращается к нему напрямую.
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwvideo.top/v1", api_key=os.environ["API_KEY"])
resp = client.chat.completions.create(
model="uncensored",
messages=[
{"role": "system", "content": "You write concise shot lists for short films."},
{"role": "user", "content": "Shot list for a ninety second chase through a night market."},
],
temperature=0.7,
)
print(resp.choices[0].message.content)
Прямые вызовы дают вам потоковую передачу через SSE, вызов функций, JSON-режим и все параметры сэмплирования без промежуточного слоя. Open WebUI — лучший выбор, когда вам нужен интерфейс чата для людей с историей, учетными записями и предустановками. Скрипт — лучший выбор для пакетной работы. API генерирует только текст: оно не рендерит видео, изображения или аудио, поэтому для видеопроекта оно предоставляет текстовые части, такие как сценарии и промпты для других инструментов. На странице видеопайплайна подробно описано это использование.
Краткое руководство по принятию решений
- Вам нужно окно чата для себя или команды: запустите Open WebUI и добавьте исходящее подключение.
- Вам нужно, чтобы скрипты переиспользовали предустановки или учетные записи Open WebUI: используйте его входящее API с ключом Open WebUI.
- Вам нужна пакетная генерация текста: вызывайте API модели напрямую с помощью SDK OpenAI и пропускайте лишний слой.
- Вам нужны изображения или голос: ни Open WebUI, ни это текстовое API не создадут их самостоятельно. Подключите отдельные инструменты для этого шага.
Какой бы путь вы ни выбрали, факты со стороны модели остаются неизменными: контекстное окно на 100 000 токенов, разделяемое промптом и ответом, доступные вызов функций и JSON-режим, и строгое правило против сексуального контента с участием несовершеннолетних.
Заметки по безопасности при открытии любого API
Относитесь к обоим ключам как к секретам. Ключ Open WebUI предоставляет любые права, которые есть у создавшего пользователя в вашем экземпляре; ключ модели расходует ваш предоплаченный баланс. Не вставляйте ни один из них в клиентский код или публичные репозитории.
- Поместите Open WebUI за HTTPS, если он доступен за пределами вашей собственной машины.
- Создавайте отдельные ключи Open WebUI для каждого скрипта, чтобы можно было отозвать один, не ломая другие.
- Смените ключ API модели, если он когда-либо появится в логе или на скриншоте.
- Следите за заголовком ответа
X-Balance-USDна бэкенде, чтобы видеть расходы за вызов.
Что касается конфиденциальности, промпты, отправляемые в это API, не используются для обучения. Сам Open WebUI хранит историю чатов в своей собственной базе данных на вашем сервере, поэтому ваши решения по размещению определяют, кто может прочитать это.
Сколько стоит запустить эту настройку
Open WebUI — бесплатное программное обеспечение, которое вы размещаете; ваши затраты — это сервер плюс токены. Токены тарифицируются по $0,15 за 1M входных и $0,50 за 1M выходных токенов из предоплаченного баланса без подписки. Возьмите ход чата с 3 000 входных токенов и 500 выходных токенов: 3 000 x $0,15 / 1M = $0,00045 за вход и 500 x $0,50 / 1M = $0,00025 за выход, всего $0,0007. Тысяча таких ходов стоит $0,70.
Пополнения — любая целая сумма от $20 до $500, с +5% от $50, +10% от $100 и +15% от $200. Оплата криптовалютой, USDT по сети TRC20 или USDC в сети Base. Неудавшиеся или отклонённые запросы не тарифицируются, а кредит не сгорает. Новые пользователи могут получить пробный баланс $0,50 на 7 дней в один клик без ввода платежных данных. См. страницу цен для полной картины.
Напоминание о контенте: модель настроена на ответы без отказов по содержанию для законного использования взрослыми, а контент сексуального характера с участием несовершеннолетних никогда не допускается.
Дополнительные руководства
Вопросы и ответы
Есть ли у Open WebUI собственный API?
Да. Вы можете создать API-ключ в настройках аккаунта и вызывать его эндпоинты, включая маршрут чата в стиле OpenAI. Уточните точные пути в документации для вашей версии.
Может ли Open WebUI использовать внешний API, совместимый с OpenAI?
Да. Добавьте его в разделе «Настройки администратора», «Подключения», указав базовый URL и ключ. Для этого сервиса URL — https://api.nsfwvideo.top/v1, а модель — uncensored.
Являются ли ключ Open WebUI и ключ API модели одним и тем же?
Нет. Первый авторизует запросы к вашему серверу Open WebUI. Второй авторизует запросы к API модели и списывает ваш баланс.
Нужен ли мне Open WebUI для использования этого API?
Нет. Любой SDK OpenAI или HTTP-клиент может вызывать его напрямую. Open WebUI — это просто удобный интерфейс чата.
Ваш ключ — в одном клике
Создайте аккаунт, скопируйте ключ, измените базовый URL. Вот и вся настройка.