вы можете воспользоваться услугами веб-студии filandor и filandor.com. Студия работает много лет и предоставляет комплексные услуги.

Хорошо известно, что собственный поиск WordPress неудобен и негибок, и это особенно очевидно для больших веб-сайтов; вот почему так часто используются плагины поиска для расширения этой функциональности.

Плагин JetSearch существует уже некоторое время, улучшая взаимодействие с пользователем, добавляя функциональность AJAX и быстрый, настраиваемый предварительный просмотр результатов, сортировку и т. д. Но сейчас идеальное время, чтобы оживить его новыми функциями искусственного интеллекта и сделать его еще более мощным и ориентированным на пользователя. .

В этой статье я расскажу о наших экспериментах по внедрению Open AI в поиск WordPress, подводных камнях и успехах, которых мы достигли.

Оглавление

Эксперименты с WordPress и открытым искусственным интеллектом

Нашей первой реализацией искусственного интеллекта в одном из наших плагинов было добавление его в инструмент Query Builder JetEngine для генерации SQL-запросов. Но это работа для генеративного ИИ — когда он создает что-то с нуля, а для обработки поиска нам нужно, чтобы он работал с существующими данными для обработки поиска.

В нашем случае мы изначально хотели улучшить результаты поиска в нашем Справочном центре (Базе знаний), потому что там масса информации, и было бы здорово, если бы пользователи всегда могли найти именно то, что им нужно, не прилагая особых усилий. Нашим клиентам иногда приходится спрашивать агентов поддержки о вещах, которые уже существуют в документации; таким образом, есть возможности для улучшения.

Мы планировали выпустить функцию AI-поиска и предложить ее нашим клиентам, как только реализуем и протестируем ее. Нам это действительно удалось, и сейчас мы находимся на этапе активного тестирования экспериментального плагина.

Я расскажу вам о процессе разработки при создании этого плагина.

Откройте AI Embeddings для поиска в WordPress

Официальная документация Open AI предлагает использовать Embeddings для поиска. Он позволяет вам анализировать текст, который вы ему даете, и генерировать математический вектор, который представляет собой последовательность чисел. Следовательно, мы можем дать этой модели большой объем информации, получить ее представление в векторном формате, сохранить, а затем сравнить конкретные векторы.

Это было общее объяснение. Сейчас я разобью это на пункты и расскажу, что именно мы сделали и как работает эта логика.

  1. Разделение содержимого Базы знаний на фрагменты.
  2. Затем с помощью API Embeddings преобразуйте их в векторы.
  3. Сохранение векторов в базе данных сайта.
  4. Создание интерфейса поиска, в котором пользователи будут вводить свои поисковые запросы.
  5. Преобразование запроса пользователя в вектор (с использованием Embeddings API).
  6. Сравнение вектора запросов пользователей с существующими векторами текстовых фрагментов из нашей базы данных. На этом этапе мы сортируем все эти фрагменты с помощью математических методов, чтобы найти наиболее похожие совпадения.

Следовательно, наиболее похожими векторами будут те фрагменты текста, которые наиболее релевантны запросу пользователя.

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

Собственный WordPress против поиска, управляемого искусственным интеллектом

ИИ улучшает поиск в WordPress, и я продемонстрирую это в следующем разделе.

Если во встроенном поиске WordPress есть опечатка, он просто не покажет никаких результатов. Например, я допустил опечатку в слове «свитер» и набрал «кресло с объемными рукавами». Это результаты родного поиска. Как видите, ничего не найдено.

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

Теперь я активировал экспериментальную Реактивный ИИ-поиск плагин и использовал тот же поисковый запрос с той же опечаткой. Посмотрите на разницу – нашлись все существующие свитера с объемными рукавами, плюс блузка с объемными рукавами. Большая разница, не так ли?

Преимущества AI-поиска WordPressПреимущества AI-поиска WordPress

Этот эксперимент показывает разницу в том, как работает нативный поиск и поиск с использованием искусственного интеллекта:

  • Собственный поиск WordPress пытается найти точное совпадение поисковой фразы в базе данных веб-сайта. Это означает, что вы получите нулевой результат, если допустите малейшую орфографическую ошибку в одном из слов.
  • Поиск на основе искусственного интеллекта может понимать контекст, поскольку он работает с векторами и не чувствителен к опечаткам.

Очевидно, это огромное преимущество.

Теперь давайте проверим, как работает нативный поиск и поиск с помощью искусственного интеллекта, если в запросе нет опечаток. Я использовал ту же фразу: «свитер с объемными рукавами».

На снимке экрана ниже показано, что он нашел два релевантных продукта, но затем предложил совершенно нерелевантные домашние страницы.

Плагины поиска WordPressПлагины поиска WordPress

Теперь посмотрите, что сделал AI-поиск: он предложил одни и те же два совершенно релевантных товара, плюс все свитера и все с объемными рукавами, что отлично подходит для хорошего клиентского опыта и дополнительных продаж.

AI-поиск для WooCommerceAI-поиск для WooCommerce

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

Мы сталкиваемся с несколькими проблемами при внедрении ИИ в поиск WordPress. В основном все дело в ресурсах.

Open AI Embeddings API генерирует довольно большие векторы, и для их обработки требуются ресурсы, особенно если мы говорим о PHP, который плохо приспособлен к таким задачам. Это приводит к снижению скорости при работе с большими объемами контента.

Итак, если ваш сайт совсем небольшой, наш AI-поиск инструмент будет работать с нормальной скоростью. Но на больших объемах контента он замедляется в геометрической прогрессии.

Вторая задача – операционная логика. Чтобы получить релевантные результаты, вам следует правильно разбить контент на фрагменты. Фрагменты не должны быть слишком длинными (потому что поисковые запросы не длинные и они должны совпадать).

В то же время, если фрагменты слишком малы, они могут потерять всякий смысл – и результаты поиска не будут релевантными, поскольку не будут отражать смысл, а просто будут соответствовать набору букв.

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

Другое решение — использовать Модель SaaS где хранение данных и обработка запросов будут осуществляться с помощью более подходящих для пользователей инструментов, а веб-интерфейс работает как API для индексации содержимого сайта и поиска этого проиндексированного контента.

В результате мы получим те же результаты, но быстрее и затрачивая меньше ресурсов.

💡 Если хотите узнать подробнее, посмотрите выступление технического директора Crocoblock Андрея Шевченко о развитии ИИ-поиска. Также посетите обсуждение в чате, где люди делились своими мыслями и идеями по этой теме.

Экспериментальный плагин AI Search

Вы можете скачать плагин с нашего сайта. Репозиторий GitHub, протестируйте его и даже используйте на рабочем месте. Все, что вам нужно, это немного денег на счету Open AI для выполнения поиска.

Интерфейс довольно прост; его настройки включены Панель управления > Настройки > Поиск AI.

Плагин поиска AI WPПлагин поиска AI WP

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

ПРИМЕЧАНИЕ

Если Статистика полученного контента не обновился после получения контента, обновите страницу, и появится количество полученных сообщений.

Если вы хотите попробовать, как этот плагин работает на действующем сайте, ознакомьтесь с Сайт JetFormBuilder и как он выполняет поиск в документации. Настоятельно рекомендуется использовать Crocoblock. Плагин JetSearch на базе AJAX и увидите результаты на той же странице, прямо под полем поиска.

Расширенное использование: поиск по настраиваемым полям.

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

add_filter( 'jet-ai-search/post-fragments', function( $fragments, $post, $parser ) {

	// Optional part - making sure we work with posts of need type
	if ( 'product' !== $post->post_type ) {
		return $fragments;
	}

	// Getting field value
	$field_name="description-for-the-search";
	$custom_description = get_post_meta( $post->ID, $field_name, true );

	// If value is empty - nothing to do here
	if ( ! $custom_description ) {
		return $fragments;
	}

	// Reset previously parsed stack and store new fragment
	$parser->reset_results();

	$parser->set_stack_defaults( [
		'post_id'    => $post->ID,
		'post_url'   => $post->guid,
		'post_title' => $post->post_title,
		'source'     => $post->post_type,
	] );

	// Optional - store post title with field value for better context
	$title = $parser->prepare_heading( $post->post_title );

	$fragment = $parser->prepare_fragment( $custom_description );

	$parser->stack_result( [
		'fragment' => $title . $fragment
	], true );

	// Merge stored fragment with all previous fragments
	$fragments = array_merge( $fragments, $parser->get_result() );

	return $fragments;
	
}, 10, 3 );

Будьте в курсе интеграций продуктов искусственного интеллекта и эксклюзивных предложений для эффективного создания веб-сайтов WordPress, подписавшись на наш список рассылки.

Подпишись сейчас

Часто задаваемые вопросы

Хорош ли встроенный поиск WordPress?

Нет, ни функциональность по умолчанию, ни внешний вид встроенной формы поиска не обеспечивают хорошего пользовательского опыта. Для отображения результатов, которые отображаются на странице результатов поиска после перезагрузки, необходимо точное соответствие поисковой фразы существующему контенту. Вот почему дополнительные плагины просто необходимы, особенно для сайтов WooCommerce.

Что такое поиск по сайту с помощью искусственного интеллекта?

Это технология, в которой ИИ подключается к веб-сайту с помощью ключа API для улучшения результатов поиска, используя его способность обрабатывать текстовую информацию.

Еда на вынос

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

Не стесняйтесь протестировать плагин на своем сайте и оставить отзыв на GitHub или в комментарии ниже.