112 lines
4.2 KiB
Markdown
112 lines
4.2 KiB
Markdown
# Диагностика проблемы с передачей изображений в Ollama
|
||
|
||
## Проблема
|
||
Open WebUI не передает изображения в Ollama для модели gemma3n:e4b-it-fp16, хотя:
|
||
- ✅ Адрес Ollama правильный: `http://ollama:11434`
|
||
- ✅ Модель поддерживает vision
|
||
- ✅ Изображения загружаются в Open WebUI
|
||
- ❌ Но не доходят до Ollama (нет запросов с изображениями в логах)
|
||
|
||
## Возможные причины
|
||
|
||
### 1. Open WebUI v0.8.3 не распознает gemma3n как vision-модель
|
||
|
||
Open WebUI может не знать, что gemma3n:e4b-it-fp16 поддерживает vision. Нужно проверить список vision-моделей в коде.
|
||
|
||
### 2. Модель не помечена как vision в настройках
|
||
|
||
Возможно, нужно явно указать в настройках Open WebUI, что модель поддерживает vision.
|
||
|
||
### 3. Проблема с форматом передачи изображений
|
||
|
||
Open WebUI может передавать изображения в неправильном формате для Ollama API.
|
||
|
||
## Решения
|
||
|
||
### Решение 1: Проверка настроек модели в Open WebUI
|
||
|
||
1. Откройте https://odo.iieasy.ru
|
||
2. Перейдите в **Settings → Models**
|
||
3. Найдите модель `gemma3n:e4b-it-fp16`
|
||
4. Проверьте, есть ли опция "Vision" или "Multimodal"
|
||
5. Включите её, если есть
|
||
|
||
### Решение 2: Обновление Open WebUI
|
||
|
||
Версия v0.8.3 может иметь проблемы с vision. Попробуйте обновить до последней версии:
|
||
|
||
```yaml
|
||
# В docker-compose.yml измените:
|
||
image: ghcr.io/open-webui/open-webui:latest
|
||
# или
|
||
image: ghcr.io/open-webui/open-webui:v1.x.x
|
||
```
|
||
|
||
Затем:
|
||
```bash
|
||
docker compose pull open-webui
|
||
docker compose up -d open-webui
|
||
```
|
||
|
||
### Решение 3: Проверка через прямой API запрос
|
||
|
||
Проверьте, работает ли vision напрямую через Ollama API:
|
||
|
||
```bash
|
||
cd /home/its/iiEasyWeb/test_images
|
||
IMAGE_B64=$(base64 -w 0 test_image.jpg)
|
||
|
||
sudo docker exec ollama curl -s -X POST http://localhost:11434/api/generate \
|
||
-H 'Content-Type: application/json' \
|
||
-d "{
|
||
\"model\": \"gemma3n:e4b-it-fp16\",
|
||
\"prompt\": \"Опиши это изображение на русском языке\",
|
||
\"images\": [\"$IMAGE_B64\"],
|
||
\"stream\": false
|
||
}" | jq -r '.response'
|
||
```
|
||
|
||
Если это работает, значит проблема в Open WebUI, а не в Ollama.
|
||
|
||
### Решение 4: Проверка логов при отправке изображения
|
||
|
||
1. Откройте два терминала
|
||
|
||
2. В первом терминале:
|
||
```bash
|
||
sudo docker logs open-webui -f | grep -i "image\|ollama\|generate"
|
||
```
|
||
|
||
3. Во втором терминале:
|
||
```bash
|
||
sudo docker logs ollama -f | grep -i "generate\|image"
|
||
```
|
||
|
||
4. Отправьте изображение через веб-интерфейс
|
||
|
||
5. Проверьте, что появляется в логах:
|
||
- В Open WebUI должен быть запрос с изображением
|
||
- В Ollama должен быть запрос к `/api/generate` с полем `images`
|
||
|
||
### Решение 5: Проверка версии Open WebUI
|
||
|
||
```bash
|
||
sudo docker exec open-webui cat /app/backend/version.txt
|
||
```
|
||
|
||
Если версия старая, обновите до последней.
|
||
|
||
## Альтернативное решение: Использование API напрямую
|
||
|
||
Если Open WebUI не поддерживает vision для gemma3n, можно использовать API напрямую или создать свой клиент.
|
||
|
||
## Проверка работы vision модели
|
||
|
||
Убедитесь, что модель действительно поддерживает vision:
|
||
|
||
```bash
|
||
sudo docker exec ollama ollama show gemma3n:e4b-it-fp16
|
||
```
|
||
|
||
В выводе должна быть информация о поддержке vision/multimodal.
|