Что такое саджест в браузере
Добрый день ! В предыдущей статье я уже рассказала, как использовать глагол offer , и какие устойчивые выражения он образует. Сегодня же посмотрим на глагол с похожим переводом, но со своей особой ролью и нестандартным поведением – глагол suggest .
Основное отличие глаголов offer и suggest – это то, что offer всегда предлагает что-то сделать сам, даёт нам что-то, помощь ли, предмет ли, в дар, безвозмездно. А если после offer идёт глагол-действие, то человек собирается выполнить это действие сам, вызывается это сделать.
А вот с suggest всё по-другому. Если кто-то что-то suggest , значит, нам предлагается какая-то идея, какой-то план действий. Предложить этот план действий, предположить, что кто-то что-то должен сделать, можно в отношении других людей, можно и в отношении себя в компании других людей, чтобы все вместе что-то сделали.
✅ Есть два грамматических варианта, как выстроить предложение с глаголом suggest . В первом случае suggest требует после себя прямого дополнения – ЧТО мы предлагаем.
📌 Это может быть, в самом простом случае, существительное:
We needed a place for our reunion party, and so Ann suggested this Thai restaurant. Нам нужно было место для нашей встречи выпускников, и Аня предложила этот ресторан тайской кухни.
📌 Прямое дополнение может быть привязано через вопросительное местоимение:
I don’t ask you to organise everything, but you can at least suggest where we could stay during our trip. Я не прошу тебя организовать всё полностью, но ты мог хотя бы предложить, где мы могли бы остановиться во время нашей поездки.
📌 И также формы герундия используются после suggest в роли прямого дополнения. Например:
He suggested not wasting any more time on this project. Он предложил (что?) не тратить больше времени на этот проект (предложил всем тем, кто участвовал в этом проекте, перестать этим заниматься)
Вы видите, что в примерах выше мы просто понимаем, что человек предлагает какой-то план действий, который будет выполняться другими людьми и, вероятно, самим человеком тоже. То есть, они совместно в чём-то участвуют или собираются участвовать – поэтому предложение касается всех. Конструкция, использованная выше – suggest + gerund – подразумевает такое понимание ситуации.
Давайте теперь посмотрим, как выстроить предложение, если человек даёт советы как поступить другим людям. Здесь есть несколько вариантов. Во-первых, можно указать человека через притяжательное местоимение прямо к действию-герундию. Это довольно редкий случай, но грамматически он допустим – герундий может употребляться с притяжательным местоимением, и не только в этом случае. Примеры:
Peter suggested my participating in this project. Питер предложил мне принять участие в этом проекте.
We suggested their visiting Moscow and staying with us. Мы предположили, что они могли бы заехать в Москву и остановиться у нас.
✅ Второй вариант, более распространённый – это построение придаточного предложения. Тот, кому мы предлагаем свой план – оказывается в подлежащем второго предложения.
Самое важное при построении таких предложений – запомнить, что предложения с глаголом suggest выстраиваются по схеме главное предложение + придаточное предложение в сослагательном наклонении . После suggest появляется получатель совета в форме именительного падежа – she , we , Mary и тп. А затем идёт предложенное действие-глагол в форме Bare Infinitive или в виде Should + Bare Infinitive . Вот примеры таких предложений:
Mary suggested that we should stay at school after the classes. Мэри предложила нам остаться в школе после уроков.
Granny suggested that Mary should get this dress back to the shop. Бабушка предложила Мэри вернуть это платье в магазин.
Peter suggested that Mary apply for this job straight away. Питер предположил Мэри подать заявление о приёме на эту работу прямо сейчас.
Получается, что даже после подлежащего в третьем лице единственном числе, в третьем примере, всё равно используется форма Bare Infinitive – и нет никакого окончания s .
Многие же глаголы, которые помогают нам выразить, что должен сделать другой человек, позволяют выстраивать предложение с придаточным дополнением после местоимения в косвенном падеже. Это все выше перечисленные глаголы и некоторые с похожим значением – want , ask , tell , advise , order и им подобные. По типу:
Mary wanted me to pick up a film for the evening. Мэри хотела, чтобы я выбрал фильм на вечер.
Отсюда часто, к сожалению, происходят ошибки – ученики ставят suggest в такую же конструкцию. Ещё раз запоминаем – suggest НИКОГДА не сопровождается формой to-Infinitive . И НИКОГДА напрямую не присоединяет к себе получателя наших советов в форме косвенного падежа.
✅ Припоминаю частую на занятиях ситуацию, когда ученики на следующем же после новой темы занятии тыкают меня носом в вырванное из контекста нечто и кричат – а вот вы говорили, что так не бывает, а вот вам пожалуйста .. И поэтому сразу хочу объяснить ещё два момента. Сразу же предупреждаю – эти моменты редкие, и для счастья вполне достаточно знать и использовать конструкции, описанные выше. Даже не все, а самые основные:
Но вот отдельно два особо тяжёлых случая:
📌 Да, вы можете встретить ситуацию, когда после глагола suggest будет стоять местоимение в форме косвенного падежа, к примеру, him .. Но это возможно только в том случае, если человек, этот неизвестный «он», САМ является частью предложенного плана. Поясняю на примере:
We are going to employ Tyra, also because Mary, who’s been working for this company for 12 years, suggested her for this post. Мы собираемся взять на работу Тайру ещё и потому, что Мэри, которая работает в этой компании уже 12 лет, предложила взять именно её на эту должность (то есть, не Тайре что-то предлагают сделать, а сама Тайра «предложена» на эту должность, Тайра сама по себе и есть то «решение», которое предложили, вероятно, менеджеру по персоналу)
📌 И да, после suggest иногда может встретиться предлог to . НО в этом случае после to вы увидите не глагол, а местоимение. Да, очень редко, но после suggest ставится местоимение в форме косвенного падежа, тот самый me , him и тп, но только через предлог to . Бывает это относительно редко, тк при использовании сослагательного наклонения и так понятно, кому мы советуем и предлагаем. Но бывает. Выглядит примерно вот так:
We suggested to Jane that she should check all her papers one more time. Мы посоветовали Джейн, чтобы она проверила все свои документы ещё раз.
Это момент немного похож на ситуацию с глаголами tell и say . Да, по правилам грамматики допустимо говорить, что мы say something to somebody .. Но ведь сказать просто tell somebody куда проще, и так говорят чаще.
На самом деле, это ещё не всё, на что способен suggest . Несколько другое, неожиданное значение его мы рассмотрим в следующий раз.
Поисковые подсказки (саджест) — это не только пользовательский сервис, но ещё и очень мощная языковая модель, хранящая миллиарды поисковых запросов, поддерживающая нечёткий поиск, персонализацию и многое другое. Мы научились использовать саджест для того, чтобы предугадывать итоговый запрос пользователя и загружать поисковую выдачу до нажатия кнопки «Найти».
Внедрение этой технологии – пререндера – потребовало многих интересных решений в мобильной разработке, разработке поискового рантайма, логов, метрик. И, конечно, нам нужен был крутой классификатор, определяющий, нужно ли загружать поисковый запрос заранее: этот классификатор должен соблюдать баланс между ускорением загрузки, дополнительным трафиком и нагрузкой на Поиск. Сегодня я расскажу о том, как нам удалось создать такой классификатор.
1. Сработает ли идея?
В исследовательских задачах редко заранее бывает очевидно, что хорошее решение существует. И в нашем случае мы тоже изначально не знали, какие данные необходимы для того, чтобы построить достаточно хороший классификатор. В такой ситуации полезно начать с нескольких очень простых моделей, которые позволят оценить потенциальную пользу от разработки.
Самой простой идеей оказалась следующая: будем загружать выдачу по первой подсказке из поискового саджеста; когда подсказка меняется, мы выкидываем предыдущую загрузку и начинаем скачивать уже нового кандидата. Оказалось, что такой алгоритм работает неплохо и почти все запросы удаётся предзагрузить, однако соответственно возрастает нагрузка на поисковые бекенды и соответственно же возрастает пользовательский трафик. Ясно, что такое решение внедрить не получится.
Следующая идея тоже была достаточно простой: необходимо загружать вероятные поисковые подсказки не во всех случаях, а только тогда, когда мы в достаточной степени уверены, что они и правда нужны. Самым простым решением будет классификатор, работающий прямо в рантайме по тем данным, которые и так есть у саджеста.
Метрики для пререндера устроены не совсем так, как в обычной бинарной классификации. Важны всего два параметра, но это не точность и не полнота.
Пусть — общее количество запросов, — общее количество всех пререндеров, — общее количество удачных пререндеров, т.е. таких, которые в итоге совпали с пользовательским вводом. Тогда две интересные характеристики вычисляются следующим образом:
Скажем, если совершается ровно один пререндер на один запрос, а успешными оказывается половина пререндеров, то эффективность пререндера составит 50%, и это означает, что удалось ускорить загрузку половины запросов. При этом для тех запросов, в которых пререндер сработал успешно, дополнительный трафик не был создан; для тех запросов, в которых пререндер сработал неуспешно, пришлось задать один дополнительный запрос; так что общее количество запросов в полтора раза больше исходного, «лишних» запросов 50% от исходного количества, поэтому .
В этих координатах я и нарисовал первый scatter plot. Он выглядел вот так:
Эти значения содержали изрядное количество допущений, но по крайней мере было уже понятно, что, скорее всего, хороший классификатор получится: ускорять загрузку для нескольких десятков процентов запросов, увеличивая нагрузку на несколько десятков процентов — интересный размен.
Интересно было наблюдать за тем, как срабатывает классификатор. Действительно, оказалось, что очень сильным фактором является длина запроса: если пользователь уже почти ввёл первую подсказку, и она при этом достаточно вероятна, можно осуществить префетч. Так что предсказание классификатора резко возрастает к концу запроса.
Пререндер будет полезен, даже если он произошёл в момент ввода самой последней буквы запроса. Дело в том, что пользователи всё-таки тратят некоторое время на то, чтобы нажать на кнопку «Найти» после ввода запроса. Это время тоже можно сэкономить.
2. Первое внедрение
Через некоторое время удалось собрать полностью работающую конструкцию: приложение ходило за поисковыми подсказками в демон саджеста. Тот присылал, среди прочего, информацию о том, нужно ли предзагружать первую подсказку. Приложение, получив соответствующий флаг, скачивало выдачу и, если пользовательский ввод в итоге совпадал с кандидатом, осуществляло рендеринг выдачи.
Классификатор к этому моменту обзавёлся новыми факторами, а моделью была уже не логистическая регрессия, а вполне себе CatBoost. Изначально мы выкатили достаточно консервативные пороги для классификатора, однако даже они позволили мгновенно загружать почти 10% поисковых выдач. Это был очень удачный релиз, т.к. нам удалось значительно сместить младшие квантили скорости загрузки выдачи, а пользователи заметили это и начали статистически значимо возвращаться в поиск: существенное ускорение работы поиска сказалось на том, как часто пользователи совершают поисковые сессии!
3. Дальнейшие улучшения
Хотя внедрение и оказалось удачным, решение было всё ещё крайне несовершенным. Внимательное изучение логов срабатываний показало, что есть несколько проблем.
Классификатор нестабилен. Например, может так оказаться, что по префиксу «янд» он предсказывает запрос «яндекс», по префиксу «янде» он не предсказывает ничего, а по префиксу «яндек» он снова предсказывает запрос «яндекс». Тогда наша первая прямолинейная реализация делает два запроса, хотя вполне могла обойтись и одним.
Пререндер не умеет обрабатывать пословные подсказки. Клик по пословной подсказке приводит к появлению в запросе дополнительного пробела. Например, если пользователь ввёл «яндекс», его первой подсказкой будет запрос «яндекс»; но если пользователь воспользовался пословной подсказкой, вводом будет уже строка «яндекс », а первой подсказкой — «яндекс карты». Это приведёт к плачевным последствиям: уже загруженный запрос «яндекс» будет выкинут, вместо него загрузится запрос «яндекс карты». После этого пользователь нажмёт на кнопку «Найти» и… будет дожидаться полной загрузки выдачи по запросу «яндекс».
В некоторых случаях у кандидатов нет никаких шансов стать успешными. В саджесте работает поиск по неточному совпадению, так что кандидат может, например, содержать только одно слово из введённых пользователем; либо пользователь может совершить опечатку, и тогда первая подсказка никогда не совпадёт в точности с его вводом.
Конечно, оставлять пререндер с такими несовершенствами было обидно, пусть даже он и полезен. Особенно мне было обидно за проблему с пословными подсказками. Я считаю внедрение пословных подсказок в мобильном поиске Яндекса одним из лучших своих внедрений за всё время работы в компании, а тут пререндер не умеет с ними работать! Позор, не иначе.
В первую очередь мы исправили проблему нестабильности классификатора. Решение выбрали крайне простое: даже если классификатор вернул негативное предсказание, мы не прекращаем загрузку предыдущего кандидата. Это помогает экономить дополнительные запросы, поскольку, когда этот же кандидат вернётся в следующий раз, не нужно будет качать соответствующую выдачу заново. В то же время, это позволяет загружать выдачи быстрее, так как кандидат скачивается в тот момент, когда классификатор впервые сработал для него.
Затем настал черед пословных подсказок. Саджестовый сервер является stateless-демоном, так что в нём тяжело реализовать логику, связанную с обработкой предыдущего кандидата для того же пользователя. Осуществлять поиск подсказок одновременно для запроса пользователя и для запроса пользователя без концевого пробела означает фактически удвоить RPS на саджестовый демон, так что это тоже не было хорошим вариантом. В итоге мы сделали так: клиент передаёт специальным параметром текст кандидата, который загружается прямо сейчас; если этот кандидат с точностью до пробелов похож на пользовательский ввод, мы отдаём его, даже если кандидат для текущего ввода поменялся.
После этого релиза наконец-то стало можно вводить запросы при помощи пословных подсказок и наслаждаться префетчем! Довольно забавно, что до этого релиза префетчем пользовались только те пользователи, что заканчивали ввод своего запроса при помощи клавиатуры, без саджеста.
Наконец, с третьей проблемой мы разобрались при помощи ML: добавили факторов про источники подсказок, совпадение с пользовательским вводом; кроме того, благодаря первому запуску мы смогли собрать побольше статистики и обучиться по месячным данным.
4. Что в итоге
Каждый из этих релизов давал рост количества мгновенно загружаемых выдач на десятки процентов. Самое приятное в том, что нам удалось улучшить показатели пререндера более чем в два раза, практически не трогая часть про machine learning, а лишь улучшая физику процесса. Это важный урок: зачастую качество классификатора не является самым узким местом в продукте, зато его улучшение является самой интересной задачей и поэтому разработка отвлекается именно на него.
К сожалению, мгновенно загруженные выдачи — это ещё не полный успех; загруженную выдачу нужно ещё отрендерить, что происходит не мгновенно. Так что нам ещё предстоит работать над тем, чтобы лучше конвертировать мгновенные загрузки данных в мгновенные отрисовки поисковых выдач.
К счастью, сделанные внедрения уже позволяют говорить о пререндере как о достаточно стабильно работающей фиче; мы дополнительно проверили внедрения, описанные в пункте 2: они все вместе тоже приводят к тому, что пользователи сами по себе начинают чаще совершать поисковые сессии. Отсюда ещё один полезный урок: значительные улучшения в скорости работы сервиса могут статистически значимо влиять на его retention.
На видео ниже можно посмотреть, как сейчас работает пререндер на моём телефоне.
Саджесты нужны, чтобы сэкономить время пользователя и увеличить его лояльность. Но для начала пользователей нужно изучить: какие вопросы они задают в начале разговора чаще всего? Именно их и нужно вынести в саджесты:
tuiydd.jpg 398.38 KB
В МультиЧате Callibri вы можете настроить один набор саджестов для показа на всех страницах сайта, а можете показывать разные саджесты на разных страницах через функцию «Ловцы лидов». Сейчас разберем, как настроить оба варианта.
Настраиваем основные саджесты
Перейдите в Основные настройки МультиЧата — таб Чат. Здесь же вы найдете раздел Саджесты, перейдите в него. А затем нажмите кнопку «Добавить саджест».
xcvbn.jpg 131.54 KB
В появившемся облачке введите текст саджеста. Максимум — 35 символов:
mjnhvg.jpg 119.18 KB
Добавьте от одного до трех саджестов, а затем передвиньте слайдер «Включить саджесты» и сохраните изменения.
vbhgvb.jpg 118.33 KB
Готово! Саджесты уже отображаются в МультиЧате на вашем сайте.
Вы можете проверить отображение саджестов в режиме Инкогнито, предварительно закрыв все вкладки с сайтом. Только в таком случае кэш браузера не помешает корректному отображению МультиЧата на сайте.
Как настроить саджесты по страницам сайта
Например, на сайте вы предлагаете несколько разных услуг, и у каждой из них есть своя посадочная страница. Пользователи задают разные вопросы по услугам, поэтому для каждой страницы лучше настроить свои саджесты.
Чтобы показывать разные саджесты на разных страницах сайта, вам нужно настроить их через Ловцы лидов. Вы можете использовать саджесты как в сочетании с другими инструментами (поп-ап окна, крючки, подмена контента, квизы), так и отдельно.
Сначала вам нужно настроить группу страниц и группу ловцов. Сделать это поможет пошаговая инструкция.
Когда вы настроете группу ловцов, перейдите в раздел саджесты и добавьте их по тому же принципу, что и в основных настройках:
loda.jpg 138.53 KB
Не забудьте сохранить изменения.
После этого саджесты начнут показываться на выбранных вами страницах и для выбранных сегментов пользователей.
Саджесты нужны, чтобы сэкономить время пользователя и увеличить его лояльность. Но для начала пользователей нужно изучить: какие вопросы они задают в начале разговора чаще всего? Именно их и нужно вынести в саджесты:
tuiydd.jpg 398.38 KB
В МультиЧате Callibri вы можете настроить один набор саджестов для показа на всех страницах сайта, а можете показывать разные саджесты на разных страницах через функцию «Ловцы лидов». Сейчас разберем, как настроить оба варианта.
Настраиваем основные саджесты
Перейдите в Основные настройки МультиЧата — таб Чат. Здесь же вы найдете раздел Саджесты, перейдите в него. А затем нажмите кнопку «Добавить саджест».
xcvbn.jpg 131.54 KB
В появившемся облачке введите текст саджеста. Максимум — 35 символов:
mjnhvg.jpg 119.18 KB
Добавьте от одного до трех саджестов, а затем передвиньте слайдер «Включить саджесты» и сохраните изменения.
vbhgvb.jpg 118.33 KB
Готово! Саджесты уже отображаются в МультиЧате на вашем сайте.
Вы можете проверить отображение саджестов в режиме Инкогнито, предварительно закрыв все вкладки с сайтом. Только в таком случае кэш браузера не помешает корректному отображению МультиЧата на сайте.
Как настроить саджесты по страницам сайта
Например, на сайте вы предлагаете несколько разных услуг, и у каждой из них есть своя посадочная страница. Пользователи задают разные вопросы по услугам, поэтому для каждой страницы лучше настроить свои саджесты.
Чтобы показывать разные саджесты на разных страницах сайта, вам нужно настроить их через Ловцы лидов. Вы можете использовать саджесты как в сочетании с другими инструментами (поп-ап окна, крючки, подмена контента, квизы), так и отдельно.
Сначала вам нужно настроить группу страниц и группу ловцов. Сделать это поможет пошаговая инструкция.
Когда вы настроете группу ловцов, перейдите в раздел саджесты и добавьте их по тому же принципу, что и в основных настройках:
loda.jpg 138.53 KB
Не забудьте сохранить изменения.
После этого саджесты начнут показываться на выбранных вами страницах и для выбранных сегментов пользователей.
Лучшим бесплатным инструментом для подбора ключевых слов является сам Google, а особенно его функции, с помощью которых он помогает или упрощает людям поиск необходимой информации. Возьмем тот же Google Suggest. Инструмент, который появился еще в 2008 году и предназначенный для ускорения поиска, сейчас стал отличным способом для оптимизаторов найти новые ключевые слова, под которое можно продвигать свои сайты.
Google Suggest, как вы знаете, это выпадающий список из наиболее частых поисковых запросов, соответствующих вводимой в данный момент пользователем информации. К примеру, если ввести запрос «как сделать», то вот что отобразится в Google Suggest:
По сути, Google пытается угадать, что вы собираетесь ввести дальше, чтобы сэкономить вам время, необходимое для набора этого текста. Значительно ускоряет поиск при вводе длинных запросов, к примеру, таких, как «как правильно целоваться» или «как быстро похудеть».
Как работает Google Suggest?
На основании каких данных Google выводит поисковые подсказки? Вот что говорит об этом сам Google:
По мере ввода символов в поисковую строку, Google Suggest делает запросы к серверам Google, которые и возвращают показываемые предложения в подсказках, ранжируя их по популярности. Если вы вошли в свой аккаунт Google, то подсказки будут еще и зависеть от ваших предпочтений, они будут основаны на истории веб-поиска. Если же вы не войдете в свой аккаунт, то подсказки будут отображаться только в зависимости от популярности.
К примеру, если ввести в строку поиска по картинкам букву «а», то на первом месте отобразиться запрос «аватары», т.к. он является самым популярным запросом в поиске на эту букву:
Я пишу это для того, чтобы вы знали, что более разумно пользоваться поисковыми подсказками тогда, когда вы не залогинены в Google, в таком случае ваши интересны и история веб-поиска не будет влиять на содержание подсказок.
Google Suggest и Google Adwords
Мало кто использует Google Suggest для составления списков стоп-слов при создании рекламных компаний в Google Adwords. Приведу простой пример. Допустим, вам нужно провести рекламную компанию по запросу «little black dress». Введите в поиск запрос «little black» и вы увидите в подсказках кроме фразы «little black dress» следующие фразы: «little black book», «little black ants», «little black grasshoppers». Их можно использовать как стоп слова в компаниях Google AdWords, чтобы ваши объявления не показывались на несоответствующих поисковых страницах.
Как правильно подбирать ключевые слова с помощью Google Suggest
Когда вы прочитали заголовок, то, скорее всего, подумали: «Нашелся мне капитан очевидность, как будто мы не знаем, что с помощью гуглоподсказом можно подбирать ключевые слова». То, что использовать подсказки можно знают все, но не все знают, как делать это правильно. Давайте попробуем разобраться.
Возьмите ручку и бумагу, либо подготовьте электронный блокнот, в который бы можно было бы записать найденные ключевые слова. Теперь выберите одно из ключевых слов, под которое продвигается или будет продвигаться ваш сайт. Это может быть что угодно. Теперь медленно, по одной букве, начинайте вводить этот запрос в поиск Google.
По мере ввода текста, обращайте внимание на все подсказки, которые отображает нам Google. Они будут изменяться после ввода новых символов. Некоторые будут оставаться на месте, некоторые изменяться и дополняться, а некоторые заменяться совсем другими фразами.
Запомните! Те ключевые слова, которые отобразились при наименьшем введенном количестве символов, вероятнее всего, слишком конкуренты, чтобы под них продвигаться. Возможно, это далеко не самый лучший выбор, который вы можете сделать.
Каждый раз, когда вы будете видеть интересные ключевые слова, подходящие вашей тематике – записывайте их. Повторите процедуру ввода ключевых фраз побуквенно для множества вариантов ключевых слов. Когда вы закончите, у вас уже должен быть внушительный список ключевых слов.
Найти ключевые слова мало. Еще нужно проверить, есть ли по ним трафик, стоят ли они времени, потраченного на них. Поэтому, вставляем весь список из добытых ключевых слов в Google Keyword tool . Нажимаем на кнопку «filter my results» и выбираем пункт «Don't show ideas for new keywords».
Но и это еще не все. Есть такое понятие, как сезонные запросы, либо просто временные всплески популярности конкретных запросов в определенные промежутки времени. К примеру, когда умер Майкл Джексон, популярность запроса «Майкл Джексон» увеличилась в тысячи раз за несколько дней, а через пару дней вернулась практически до прежнего уровня. Поэтому, каждый из запросов крайне желательно проверить в Google Insights , чтобы определить его действительную популярность.
Теперь это действительно все, что необходимо знать о Google Suggest. Немного терпения и времени – и у вас может оказаться внушительный список новых ключевых слов, по которым с большой долей вероятности есть качественный тематический трафик. Удачи!
Миниатюры
Читайте также: