LLM API и интеграция

Умный поиск на сайте с нейросетью: как сделать

Умный поиск на сайте с нейросетью: как сделать

Умный поиск обычно понимают неправильно: думают, что нейросеть будет искать по сайту. Она не будет — она не умеет искать, у неё нет доступа к вашему содержимому и она не помнит его между запросами. Ищет ваш индекс, а модель делает следующий шаг: формулирует ответ по найденному человеческим языком. Отсюда простое следствие, определяющее весь проект: качество поиска решает всё, а качество модели — почти ничего. Если индекс находит не те три абзаца, лучшая модель в мире напишет по ним уверенный и бесполезный ответ. Разбираем схему и то, где на этом экономят.

Из чего состоит

Три части, и вторая — самая важная.

Индекс. Содержимое сайта, разбитое на фрагменты: страницы справки, описания товаров, статьи, ответы на вопросы.

Поиск. Находит фрагменты, относящиеся к запросу. Здесь решается качество ответа.

Модель. Формулирует ответ по найденным фрагментам и говорит, если ответа в них нет.

Механику подробно разбирали в материале про поиск по своим документам — здесь то же самое, только содержимое публичное, а пользователь анонимный.

Почему решает поиск, а не модель

Тезис, который экономит основную часть бюджета.

Модель отвечает только по тому, что вы ей дали. Если поиск принёс не те фрагменты, у неё два варианта: сказать, что ответа нет, или достроить правдоподобное. Второе выглядит убедительно и вредит больше, чем отсутствие поиска вообще — почему это неотличимо по стилю.

Отсюда порядок вложений, обратный интуитивному:

Сначала разбиение содержимого. Фрагмент должен быть самодостаточным: «пункт 4.7» без контекста бесполезен.

Потом качество поиска. Найти правильные три абзаца — половина задачи.

Потом переранжирование, если результатов много и порядок плохой.

И только потом выбор модели. На этом этапе разница между позициями обычно уже невелика.

Признак, что вложились не туда: ответы гладкие, но не по делу. Это почти всегда поиск, и смена модели на более дорогую ничего не изменит.

Где модель не нужна вовсе

Три случая, о которых стоит подумать до начала.

У вас каталог с фильтрами. Человек ищет товар по параметрам — улучшение обычного поиска и фильтров даст больше, чем модель поверх него.

Вопросов мало и они повторяются. Двадцать частых вопросов закрываются страницей с ответами. Это быстрее, бесплатно и надёжнее.

Содержимого мало. На тридцати страницах обычный поиск справляется.

Честный ориентир: модель окупается там, где содержимого много и вопросы формулируются свободно. Справка, база знаний, документация, большой каталог с описаниями.

Как не платить за каждый запрос

Четыре приёма, которые сокращают расход в разы.

Готовые ответы на частые вопросы. В типичном поиске несколько вопросов повторяются постоянно. Ответ на них стоит ноль и приходит мгновенно.

Кэш по нормализованному запросу. Одинаковые вопросы, заданные разными словами, приводятся к общей форме и отвечаются из кэша.

Отправляйте фрагменты, а не страницы. Три абзаца вместо трёх статей.

Короткий ответ. Ограничение длины — прямой рычаг на счёт.

Первый приём обычно даёт больше всех и почему-то применяется последним.

Что показывать пользователю

Пять решений интерфейса, от которых зависит доверие.

Ссылки на источники. Ответ со ссылкой на страницу, откуда он взят, проверяем — и заодно ведёт человека внутрь сайта.

Честное «не нашёл». С предложением обычного поиска или контакта. Придуманный ответ хуже отсутствия.

Обозначение, что отвечает автоматика. Не мелким шрифтом.

Выход на человека. Кнопка рядом с ответом.

Быстрый первый отклик. Потоковая передача меняет ощущение скорости при той же реальной задержке — когда она нужна.

Чем это отличается от чат-бота

Разграничение, потому что схемы похожи, а требования разные.

Поиск отвечает на разовый вопрос. Истории нет, контекст — только текущий запрос и найденные фрагменты. Дёшево и предсказуемо.

Чат-бот ведёт диалог. История переотправляется на каждом шаге, расход растёт нелинейно, появляются лимиты на посетителя и защита от злоупотреблений — подробный разбор.

Если задача — «помочь найти», начинайте с поиска: он проще, дешевле и в большинстве случаев решает то же самое.

Что уходит наружу

Короче, чем в других сценариях, но пункты есть.

Запрос пользователя. Может содержать что угодно, включая персональные данные, которые человек ввёл сам.

Найденные фрагменты. Публичные, но всё же ваши.

Ключ — только на сервере. Поиск на сайте — это браузер, а браузер недоверенная среда: между ним и моделью обязателен ваш сервер — где хранить ключи.

И специфичный риск: запрос пользователя — внешний недоверенный текст. Если ваша схема умеет что-то делать помимо поиска, это канал воздействия — как защититься.

Сколько это стоит

Порядок величин.

Вопрос плюс три найденных фрагмента на входе, короткий ответ на выходе — тысячи токенов. Тысяча запросов в день при ставках за миллион складывается в единицы рублей — как перевести объём в рубли.

Задача не требует сильной модели: ответ по предоставленному тексту — это изложение. В каталоге на 9 сентября 2026 года 49 позиций в пятнадцати семействах, платные текстовые от 1 ₽ за миллион, шесть тарифицируются по нулевой ставке.

Как измерять

Четыре величины, которые показывают, работает ли схема.

Доля ответов «не нашёл». Растёт — дыры в содержимом. Ноль — модель угадывает вместо того, чтобы признаваться.

Доля переходов по ссылкам из ответа. Если человек идёт читать источник, ответ был по делу.

Повторные запросы того же человека. Переформулировал — значит не помогли.

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

Плюс привычка, полезнее цифр: читайте сами запросы. Двадцать штук в неделю показывают, чего людям не хватает на сайте, — и часто это дешевле починить контентом, чем моделью.

Как готовить содержимое

Работа, которая делается до всякого поиска и решает больше всего.

Разбейте страницы на самодостаточные фрагменты. Абзац, начинающийся с «в этом случае», без предыдущего бесполезен, каким бы способом его ни нашли.

Заголовки включайте во фрагмент. Они дают контекст, которого в тексте нет.

Пишите ответы, а не описания. Страница «Возврат товара», начинающаяся с истории компании, отвечает на вопрос в четвёртом абзаце — и найдётся хуже, чем страница, где ответ в первом.

Уберите из индекса служебное. Меню, футеры, повторяющиеся блоки — они добавляют шум в каждый фрагмент.

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

Отдельно про то, чего в содержимом нет: список запросов без ответа — самый ценный результат первого месяца. Он показывает, каких страниц вам не хватает, и обычно две-три новые страницы закрывают заметную долю потока дешевле, чем любая настройка модели.

Чего мы не утверждаем

Не рекомендуем конкретные поисковые движки. Выбор зависит от объёма и стека.

Не сравниваем модели по качеству ответов. Своих замеров мы не делали.

Не обещаем, что модель компенсирует плохой индекс. Она его не компенсирует, а маскирует.

Цифры каталога — на дату. Состояние на 9 сентября 2026 года.

Что нужно, чтобы попробовать

Ключ заводится за минуту на keydealer.ru/login — почта и пароль, без документов и без зарубежной карты. Оплата российской картой в рублях, один ключ на весь каталог.

Платные текстовые модели доступны сразу на приветственном бонусе: взять двадцать реальных вопросов из поддержки, найти по ним фрагменты руками и посмотреть, соберёт ли модель нормальный ответ, — проверка на вечер без пополнения. Она же покажет, хватает ли содержимого.

Что держать в голове

Модель не ищет — она объясняет найденное. Значит вкладываться нужно в разбиение содержимого и качество поиска, а выбор позиции решает меньше всего.

И закройте частые вопросы готовыми ответами до того, как подключите модель: это быстрее, бесплатно и снимает заметную часть потока. Начать проще всего с двадцати вопросов из поддержки: они и покажут, чего не хватает на сайте, и станут выборкой для проверки поиска.

Как мы проверяем факты и что храним из запросов — на странице о проекте и в llms.txt. Проверить на своих вопросах: keydealer.ru/login.

Частые вопросы

Как сделать умный поиск на сайте?

Нужны три части: индекс содержимого, поиск по нему и модель, которая формулирует ответ по найденному. Модель не ищет сама — она объясняет то, что нашёл ваш поиск.

Чем это отличается от обычного поиска?

Обычный ищет совпадение слов. Человек спрашивает своими словами, и совпадения часто нет, хотя ответ на сайте есть.

Нужна ли модель для каждого запроса?

Нет. Частые вопросы дешевле закрывать готовыми ответами: это быстрее и бесплатно. Модель нужна для остальных.

Что делать, если ответа на сайте нет?

Честно говорить об этом и предлагать поиск или контакт. Придуманный ответ хуже отсутствия ответа.

Сколько это стоит?

Вопрос плюс найденные фрагменты на входе, короткий ответ на выходе — тысячи токенов. Тысяча запросов в день обходится в единицы рублей.

Можно ли обойтись без модели?

Часто да. Если у вас каталог с фильтрами, улучшение обычного поиска даст больше, чем добавление модели поверх плохого индекса.

Источники