Перейти к содержанию
Публикация AiManual

Почему AI-поиск с SearXNG перестал работать: диагностика блокировок и альтернативы для OpenWebUI

Пошаговый гайд по диагностике блокировок SearXNG в OpenWebUI. Альтернативы AI-поиску: локальные решения, прокси, другие метапоисковые системы.

Коротко

Что будет в материале

  1. 01

    Тишина там, где должен быть поиск

  2. 02

    Как понять, что вас заблокировали

  3. 03

    Почему это происходит (и будет происходить чаще)

  4. 04

    Что делать, если блокировка уже случилась

Тишина там, где должен быть поиск

Вы настроили OpenWebUI с Qwen, подключили SearXNG для веб-поиска, и все работало. А потом перестало. Пустая страница вместо результатов, ошибки соединения, или просто бесконечное ожидание. Знакомая картина? Добро пожаловать в клуб - ваш IP попал в черный список.

SearXNG - метапоисковая система. Она запрашивает результаты у Google, Bing, DuckDuckGo и других, а затем агрегирует их. Проблема в том, что поисковые гиганты не любят, когда их скребут. Особенно массово. Особенно с одного IP.

Как понять, что вас заблокировали

Сначала исключите очевидное. Проверьте, что SearXNG вообще запущен и доступен. Потом переходите к детективной работе.

1 Проверка прямого доступа

Откройте в браузере адрес вашего SearXNG инстанса. Если видите поисковую форму - хорошо. Введите простой запрос, например "test". Если результатов нет или появляется капча - это первый признак блокировки.

2 Анализ логов OpenWebUI

Запустите OpenWebUI с флагом --verbose или посмотрите логи контейнера. Ищите ошибки соединения с SearXNG. Типичные сообщения:

  • "Connection refused" - SearXNG не отвечает
  • "Timeout" - запросы не проходят
  • "HTTP 429 Too Many Requests" - вас уже ограничили
  • "HTTP 403 Forbidden" - полная блокировка

3 Тест с других IP

Попробуйте подключиться к вашему SearXNG с другого IP. Если с другого адреса все работает - ваш основной IP в черном списке. Если не работает нигде - проблема в настройках SearXNG.

💡
Google особенно агрессивно блокирует IP. Иногда достаточно 100-200 запросов в день с одного адреса, чтобы попасть в бан. Bing и DuckDuckGo терпимее, но тоже не безгранично.

Почему это происходит (и будет происходить чаще)

AI-агенты стали популярны. Каждый, кто читал статью про WebSearch AI, попробовал настроить локальный поиск. Тысячи пользователей - тысячи запросов. Поисковые системы заметили аномальную активность и начали защищаться.

Проблема усугубляется тем, что многие используют публичные SearXNG инстансы. Один IP обслуживает сотни пользователей - и бан наступает быстрее. А когда интернет не готов к агентам, защитные механизмы работают против нас.

Поисковая система Лимит запросов Скорость блокировки
Google ~100 в день Очень быстро
Bing ~1000 в день Средне
DuckDuckGo ~500 в день Быстро

Что делать, если блокировка уже случилась

1 Сменить IP (самое простое)

Если у вас динамический IP - переподключите интернет. Если статический - обратитесь к провайдеру или используйте VPN. Но помните: публичные VPN тоже часто в черных списках.

2 Настроить прокси в SearXNG

В файле конфигурации SearXNG (settings.yml) добавьте:

# Использовать HTTP прокси для всех запросов
server:
proxy: "http://ваш-прокси:порт"

Или настройте прокси только для определенных поисковых систем. Это сложнее, но эффективнее.

3 Уменьшить частоту запросов

В OpenWebUI настройте задержки между запросами. Если ваш AI-агент делает 10 запросов в секунду - это гарантированный бан. Добавьте sleep между запросами, кэшируйте результаты.

Не используйте публичные SearXNG инстансы для продакшена. Их IP меняются редко, и они уже давно в черных списках всех поисковиков.

Альтернативы, которые работают

SearXNG - не единственный вариант. Есть решения, которые не зависят от капризов Google.

Локальный поиск с Whoosh

Если вам нужно искать по локальным документам или заранее скачанным страницам - используйте Whoosh или Elasticsearch. Это полностью локальное решение без внешних запросов.

Настройте периодический сбор данных с интересующих сайтов (скажем, раз в день), индексируйте их локально и ищите. Медленнее, чем Google? Да. Зато стабильно и бесплатно.

Metaphor API

Платный, но специально созданный для AI. Не блокирует запросы от автоматических систем. Стоит от $0.0005 за запрос. Если у вас небольшой объем - это дешевле, чем настраивать собственную инфраструктуру.

Brave Search API

У Brave есть собственный индекс и API для разработчиков. Лимиты щедрее, чем у Google. Интеграция с OpenWebUI требует кастомной настройки, но работает стабильно.

Собственный ротатор прокси

Самый сложный, но самый надежный вариант. Арендуйте несколько дешевых VPS в разных датацентрах, настройте на них Squid или аналоги, и ротируйте запросы через них.

Плюсы: полный контроль, высокие лимиты. Минусы: нужно администрировать, стоит денег, требует знаний. Если вы читали статью про аренду GPU, то знаете, что инфраструктура - это всегда расходы.

💡
Для тестирования и разработки используйте мок-сервисы поиска. Они возвращают фиктивные данные, но позволяют отладить логику приложения без риска блокировки.

Настройка OpenWebUI без SearXNG

OpenWebUI поддерживает разные провайдеры поиска через litellm. Вот как переключиться:

  1. В настройках OpenWebUI найдите раздел "Search Providers"
  2. Удалите или закомментируйте секцию с SearXNG
  3. Добавьте нового провайдера (например, Metaphor)
  4. Укажите API ключ и endpoint
  5. Перезапустите OpenWebUI

Если используете Docker, передавайте настройки через переменные окружения:

docker run -e SEARCH_PROVIDER="metaphor" -e METAPHOR_API_KEY="ваш-ключ" ...

Когда поиск вообще не нужен

Самый радикальный совет: пересмотрите архитектуру. Нужен ли вам реальный веб-поиск? Возможно, достаточно локальной базы знаний.

Если ваш AI-агент отвечает на вопросы по специфичной тематике - соберите датасет, обучите RAG. Как в статье про арабские документы в RAG. Это даст более точные ответы, чем случайные результаты из интернета.

Или используйте гибридный подход: сначала локальный поиск по своей базе, и только если ответа нет - запрос к внешним источникам. Так вы сократите количество запросов на 80-90%.

Будущее без поиска (или с другим поиском)

Тренд очевиден: поисковые системы защищают свои данные. Бесплатный сыр только в мышеловке. Платные API становятся нормой.

Что делать? Привыкать. Бюджетировать расходы на поиск как часть инфраструктуры. Или инвестировать в локальные решения. Или ждать, когда появятся децентрализованные поисковые системы для AI (они уже появляются, но пока сырые).

Пока Google и другие гиганты убивают бесплатные API, мелкие игроки пытаются занять эту нишу. Но их масштаб не сравним с Google.

Не храните все яйца в одной корзине. Настройте несколько провайдеров поиска с фолбэком. Если один перестал работать - автоматически переключайтесь на другой.

И последнее: мониторьте. Настройте алерты на ошибки поиска. Отслеживайте количество успешных запросов. Автоматизируйте смену прокси при превышении лимитов. Как в статье про AI-агента для SSH - пусть система сама решает проблемы.

Поиск для AI - это не фича, а инфраструктура. И относиться к нему нужно соответственно.