#!/bin/bash # Скрипт для проверки передачи изображений из Open WebUI в Ollama set -e echo "=== Проверка передачи изображений Open WebUI → Ollama ===" echo "" # Определяем команду docker DOCKER_CMD="docker" if ! docker ps >/dev/null 2>&1; then DOCKER_CMD="sudo docker" fi echo "1. Проверка переменной OLLAMA_BASE_URL в контейнере..." OLLAMA_URL=$($DOCKER_CMD exec open-webui env | grep -i "OLLAMA_BASE_URL" | cut -d= -f2) if [ -z "$OLLAMA_URL" ]; then echo " ✗ Переменная OLLAMA_BASE_URL не установлена!" echo " Нужно добавить в docker-compose.yml и перезапустить контейнер" else echo " ✓ OLLAMA_BASE_URL=$OLLAMA_URL" fi echo "" echo "2. Проверка доступности Ollama из Open WebUI..." if $DOCKER_CMD exec open-webui curl -s --max-time 5 http://ollama:11434/api/tags >/dev/null 2>&1; then echo " ✓ Ollama доступен по адресу http://ollama:11434" else echo " ✗ Ollama недоступен из Open WebUI" fi echo "" echo "3. Проверка модели gemma3n:e4b-it-fp16..." MODELS=$($DOCKER_CMD exec open-webui curl -s http://ollama:11434/api/tags 2>/dev/null) if echo "$MODELS" | grep -q "gemma3n:e4b-it-fp16"; then echo " ✓ Модель найдена" else echo " ✗ Модель не найдена" fi echo "" echo "4. Проверка логов Open WebUI на наличие запросов с изображениями..." RECENT_LOGS=$($DOCKER_CMD logs open-webui --tail 100 2>&1) if echo "$RECENT_LOGS" | grep -qi "image.*ollama\|ollama.*image\|vision\|multimodal"; then echo " ✓ Найдены упоминания изображений в логах:" echo "$RECENT_LOGS" | grep -i "image.*ollama\|ollama.*image\|vision\|multimodal" | tail -5 else echo " ⚠ Нет упоминаний изображений в последних логах" fi echo "" echo "5. Проверка логов Ollama на наличие запросов с изображениями..." OLLAMA_LOGS=$($DOCKER_CMD logs ollama --tail 100 2>&1) if echo "$OLLAMA_LOGS" | grep -qi "image\|vision\|multimodal"; then echo " ✓ Найдены запросы с изображениями в логах Ollama:" echo "$OLLAMA_LOGS" | grep -i "image\|vision\|multimodal" | tail -5 else echo " ✗ Нет запросов с изображениями в логах Ollama" echo " Это означает, что изображения не доходят до Ollama!" fi echo "" echo "6. Рекомендации:" echo "" if [ -z "$OLLAMA_URL" ]; then echo " ⚠ КРИТИЧНО: Добавьте OLLAMA_BASE_URL в docker-compose.yml:" echo " - OLLAMA_BASE_URL=http://ollama:11434" echo " Затем: docker compose restart open-webui" echo "" fi echo " Для диагностики проблемы с изображениями:" echo " 1. Убедитесь, что в Settings → Connections → Ollama API" echo " адрес установлен: http://ollama:11434" echo "" echo " 2. Попробуйте отправить изображение через веб-интерфейс" echo " и сразу проверьте логи:" echo " sudo docker logs open-webui --tail 50 -f" echo " sudo docker logs ollama --tail 50 -f" echo "" echo " 3. Проверьте формат изображения (должен быть JPEG/PNG)" echo " и размер (не слишком большой)" echo "" echo "=== Проверка завершена ==="