Open WebUI: дефолт cc/claude-opus-4-8 + фикс 0 моделей (ключ OmniRoute = пустой)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
dttb
2026-06-22 05:19:03 +03:00
parent 0da0350341
commit 993bc95f05
2 changed files with 9 additions and 1 deletions

View File

@@ -30,6 +30,14 @@ tags: [homelab, proxmox, open-webui, omniroute, npm, ai]
3. **Первый старт Open WebUI**: тянет embedding-модель с HuggingFace (~1 ГБ, 30 файлов) — из РФ медленно, стартап висит на «Fetching 30 files» пару минут. Это нормально; DNS 1.1.1.1 помогает. RAG-эмбеддинги можно позже переключить на OmniRoute. 3. **Первый старт Open WebUI**: тянет embedding-модель с HuggingFace (~1 ГБ, 30 файлов) — из РФ медленно, стартап висит на «Fetching 30 files» пару минут. Это нормально; DNS 1.1.1.1 помогает. RAG-эмбеддинги можно позже переключить на OmniRoute.
4. **Open WebUI signup**: первый зарегистрированный = admin. Открытую регистрацию выключать в Admin Panel → Settings (env `ENABLE_SIGNUP` не действует — persistent config хранится в БД и перебивает env). 4. **Open WebUI signup**: первый зарегистрированный = admin. Открытую регистрацию выключать в Admin Panel → Settings (env `ENABLE_SIGNUP` не действует — persistent config хранится в БД и перебивает env).
5. **Max-кап**: `cc/claude-opus-4-8` делит 5-часовой кап Max с german/openclaw/swarmclaw/code-server → при нагрузке 400 «out of extra usage» (транзиентно). Для тяжёлых сессий fallback `kr/claude-sonnet-4.5` (free). 5. **Max-кап**: `cc/claude-opus-4-8` делит 5-часовой кап Max с german/openclaw/swarmclaw/code-server → при нагрузке 400 «out of extra usage» (транзиентно). Для тяжёлых сессий fallback `kr/claude-sonnet-4.5` (free).
6. **Ключ OmniRoute = пустой, НЕ dummy** (важно!). Open WebUI сначала показывал **0 моделей**. Причина: домашний OmniRoute с **непустым неизвестным** ключом (`sk-omniroute`) отдаёт `{"data":[]}` (скоупит по ключу→0 провайдеров), а с **отсутствующим/пустым** auth — полный каталог (LAN-доверие). Open WebUI всегда шлёт `Authorization: Bearer <key>`. Фикс: ключ коннекта = **пустая строка** (`OPENAI_API_KEYS:[""]`). German/openclaw ходят так же (без auth); найденный в их конфигах `ork_VQo75…` — это inbound-ключ openclaw, к OmniRoute-авторизации отношения не имеет (тоже даёт 0).
## Настройка Open WebUI (через API, токен = signin админом)
- **Коннект**: `POST /openai/config/update` `{ENABLE_OPENAI_API:true, OPENAI_API_BASE_URLS:["http://10.0.0.179:20128/v1"], OPENAI_API_KEYS:[""], OPENAI_API_CONFIGS:{}}`. NB: `POST /openai/config` (без `/update`) уходит в passthrough-роут → ошибка «Direct API passthrough is disabled».
- **Дефолтная модель**: `POST /api/v1/configs/models` `{"DEFAULT_MODELS":"cc/claude-opus-4-8", ...}`. Персистится в БД, переживает рестарт. Публичный `/api/config` поле `default_models` НЕ отдаёт в v0.9.6 — это норма, не индикатор.
- **Регистрация**: `ENABLE_SIGNUP=false` по умолчанию (проверять `GET /api/v1/auths/admin/config`).
- Проверка end-to-end: `POST /api/chat/completions {model:"cc/claude-opus-4-8", messages:[...], stream:false}` → ответ от Opus 4.8.
- `openapi.json` отключён (0 байт) — интроспекции нет, эндпоинты выше зафиксированы вручную.
## Команды ## Команды
```bash ```bash

View File

@@ -240,7 +240,7 @@ tags: [dttb, proxmox]
| ОС/рантайм | Debian 12, unprivileged + nesting/keyctl, Docker 20.10; контейнер `ghcr.io/open-webui/open-webui:main` v0.9.6 (`-p 3000:8080`, volume `open-webui`, restart=always, onboot=1) | | ОС/рантайм | Debian 12, unprivileged + nesting/keyctl, Docker 20.10; контейнер `ghcr.io/open-webui/open-webui:main` v0.9.6 (`-p 3000:8080`, volume `open-webui`, restart=always, onboot=1) |
| Ресурсы | 2 vCPU / 2 GB / 12 GB (rootfs на `work`, НЕ local-lvm — тот забит на 93%) | | Ресурсы | 2 vCPU / 2 GB / 12 GB (rootfs на `work`, НЕ local-lvm — тот забит на 93%) |
| Веб | **https://chat.dttb.ru** (NPM proxy host id39, LE cert id129 до 2026-09-20, Force SSL + WebSockets) — публично + LAN/NetBird | | Веб | **https://chat.dttb.ru** (NPM proxy host id39, LE cert id129 до 2026-09-20, Force SSL + WebSockets) — публично + LAN/NetBird |
| Бэкенд | OmniRoute `http://10.0.0.179:20128/v1` (OpenAI-совместимый; LAN-доступ без авторизации → dummy-ключ `sk-omniroute`) → все 145 моделей; рабочий Opus = `cc/claude-opus-4-8` (делит Max-кап с german/openclaw/swarmclaw/code-server, бывает 400 «out of extra usage») | | Бэкенд | OmniRoute `http://10.0.0.179:20128/v1` (OpenAI-совместимый; ключ коннекта = **пустая строка**, НЕ dummy — с непустым неизвестным ключом OmniRoute отдаёт 0 моделей) → 242 модели; дефолт `cc/claude-opus-4-8` (делит Max-кап с german/openclaw/swarmclaw/code-server, бывает 400 «out of extra usage», fallback `kr/claude-sonnet-4.5`) |
| Авторизация | встроенная Open WebUI (1 admin = Олег). Открытую регистрацию выключать в Admin Panel → Settings (env `ENABLE_SIGNUP` не рулит — persistent config в БД) | | Авторизация | встроенная Open WebUI (1 admin = Олег). Открытую регистрацию выключать в Admin Panel → Settings (env `ENABLE_SIGNUP` не рулит — persistent config в БД) |
| Назначение | Личный веб-клиент «как ChatGPT» поверх OmniRoute. Грабли: первый старт тянет embedding-модель с HuggingFace (~1 ГБ, медленно из РФ → DNS контейнера = 1.1.1.1 против FakeIP роутера). См. [[../../decisions/2026-06-22-open-webui-deploy]] | | Назначение | Личный веб-клиент «как ChatGPT» поверх OmniRoute. Грабли: первый старт тянет embedding-модель с HuggingFace (~1 ГБ, медленно из РФ → DNS контейнера = 1.1.1.1 против FakeIP роутера). См. [[../../decisions/2026-06-22-open-webui-deploy]] |