Про MUVERA простими словами. Що нам як SEOшникам важливо знати?
У 2024 році дослідники Google представили MUVERA - алгоритм пошуку, що значно змінює підхід до обробки запитів і пошуку релевантного контенту. Раніше Google порівнював запит і сторінку, але це було довго і трудомістко - FDE метод кардинально змінює ситуацію. Так це ще дорого, але з часом Google оптимізує цей метод і більше запитів будуть оброблятися по такому принципу, тому важливо зрозуміти його суть, щоб адаптувати свої стратегії. У цій статті ми спробуємо розібратися, що за звір цей MUVERA, як це впливає на ранжування, і що практичного з цього може винести кожен SEO-фахівець.
В кінці ми розберемо деякі складні, але важливі терміни, які будуть в цій статті.
Що таке MUVERA простими словами?
MUVERA (Multi-Vector Retrieval Algorithm) - це спосіб пошуку, який дозволяє складні багатовекторні запити зводити до одного вектора, з яким вже можна працювати за допомогою стандартних та швидких методів пошуку. Уявіть собі, що ви оцінюєте релевантність не лише за одним вектором (тобто не за однією характеристикою), а за набором слів або смислів MUVERA перетворює цю багатовимірну “палітру” у щось просте для швидкого пошуку.
Muvera’s two-step retrieval process, comapred to PLAID’s multi-stage retrieval process.
Як це працює?
- Багатовекторне представлення (наприклад, кожне слово у запиті та документі має власне векторне представлення).
- Chamfer Similarity - обчислення схожості запиту і документа як суми максимально схожих пар векторів.
- Fixed Dimensional Encodings (FDE) - MUVERA створює єдиний вектор для запиту і документа, який зберігає значущу інформацію з усіх токенів.
- Скалярний добуток - простий, швидкий та точний спосіб пошуку найрелевантнішого результату.
Що це значить для SEO?
MUVERA - це не просто черговий пошуковий алгоритм, це свідчення того, як змінюється сама філософія пошуку. Нижче - конкретні висновки, які варто врахувати при формуванні SEO-стратегій:
1. Покращене розуміння запитів.
Завдяки багатовекторному підходу, Google може краще розуміти контент на рівні смислів. Це означає:
- Просте повторення ключів у заголовках і текстах буде працювати гірше
- Важливо охоплювати різні синоніми, тематичні аспекти, контекстуальні приклади.
- Опрацьовуйте топіки комплексно.
- Розширюйте семантичне ядро не лише точними запитами, а й пов’язаними темами.
2. Структура контенту має значення
Оскільки MUVERA працює з векторами кожного токена (слова), важливі частини тексту (заголовки, підзаголовки) мають вищий пріоритет.
- Виділяйте головні смислові блоки.
- Зведіть до мініму "fluff" в статтях, особливо це помітно по згенериним статтям.
- Використовуйте розмітку (H1-H3) не формально, а логічно.
- Використання структурованних даних стає архіважливим.
3. Інформаційна повнота
MUVERA намагається зрозуміти весь набір значень, що стоїть за запитом. Якщо ваш контент поверхневий або вузький - він програє.
- Додавайте відповіді на суміжні питання (FAQ).
- Розкривайте тему з різних боків.
- Аналізуйте PAA (People Also Ask) і інтегруйте це в структуру контенту.
4. Оптимізація не лише під текст, а й під ефективність індексації
Гугля дуже хвилюється за свої прибутки, тому постійно намагається зекономити кеш на парсингу, індексації та рендерингу ваших сайтів. Чим більше токенів витрачається на обробку вашого сайту, тим більше їх давить жаба і тим менше вони будуть хотіти індексувати, а значить і ранжувати ваш сайт.
- Провести максимальну чистку вашого DOMa.
- Оптимізуйте великі скрипти та виріжте ✂️ зайві елементи.
- Забезпечте швидке завантаження сторінок.
5. Зробіть фокус на "топікальних кластерах"
Алгоритм MUVERA показує, що навіть при великому обсязі даних, він швидко знаходить релевантне. Це підкреслює важливість структурованого контенту в рамках пов'язаних кластерів.
- Створюйте “topic clusters”: хабова сторінка + багато тематичних підсторінок.
- Зв’язуйте контент логічними внутрішніми лінками з анкорами які будуть описувати суть сторінки.
Давайте розберемо декілька важливих термінів для кращого розуміння статті
Embeddings
Embeddings - це спосіб перетворити слова в числа так, щоб комп'ютер зрозумів їх значення.
Життєвий приклад:
Як би ви описали друга за шкалою 1-10?
Це і є простий embedding - опис через числа!
Embedding = Координати слова
Близькі координати = близькі міста. Те саме з словами!
Як це працює зі словами?
Приклад з тваринами:
"Кіт" = [0.8, 0.2, 0.9, 0.1] ↑ ↑ ↑ ↑ пухнастий маленький домашній хижак "Собака" = [0.7, 0.5, 0.9, 0.2] "Тигр" = [0.8, 0.9, 0.1, 0.9] "Риба" = [0.1, 0.3, 0.0, 0.0]
Кіт і собака - близькі числа = схожі тварини Кіт і риба - різні числа = різні тварини
Магія embeddings
"Король" поруч з "Королева" "Лікар" поруч з "Медицина" "Автомобіль" поруч з "Машина"
Король - Чоловік + Жінка = Королева Париж - Франція + Україна = Київ
Простий приклад з супермаркетом
- Молоко = відділ 3, полиця 2, холодильник
- Кефір = відділ 3, полиця 2, холодильник
- Комп'ютер бачить: "А, вони поруч!"
Як Google використовує embeddings?
Ви шукаєте: "купити недорогий ноутбук"
Сторінки теж мають embeddings:
Google порівнює числа і каже: "О, це схоже!"
Що це значить для пошуку?
2. FDE (Fixed Dimensional Encodings) простими словами
FDE Generation Process. Three SimHashes (ksim=3) split space into six regions labelled A-F (in high-dimensions B=2ksim, but B=6 here since d=2). 𝐅q(Q),𝐅doc(P) are shown as B×d matrices, where the k-th row is q→(k),p→(k). The actual FDEs are flattened versions of these matrices. Not shown: inner projections, repetitions, and fill_empty_clusters.
Проблема: Занадто багато деталей
- 1000 книг = 1000 окремих коробок
- Щоб знайти потрібну книгу, треба відкрити кожну коробку. Дуже повільно!
- 1000 книг = 10 великих коробок за темами
- На кожній коробці - опис що всередині
- Швидко знаходимо потрібну коробку!
Як працює FDE?
Замість тисячі окремих слів, FDE групує їх у "кластери":
Кластер "Техніка": iPhone, смартфон, гаджет, телефон Кластер "Покупка": купити, ціна, магазин, доставка Кластер "Характеристики": камера, пам'ять, екран, батарея
Кожен кластер отримує одне число-характеристику:
Тепер замість перевірки 1000 слів, перевіряємо 3 числа!
Життєвий приклад
Ви замовляєте піцу по телефону:
Simhash
Ще в рамках в FDE тре сказати про алгоритм Simhash. Simhash - алгоритм, який дозволяє швидко оцінити схожість двох наборів даних, перетворюючи їх на компактні "відбитки" (хеш-значення) таким чином, що схожі набори даних мають схожі відбитки.
Ви шукаєте: "швидка доставка піци"
SimHash групує сторінки:
Група 1: Про їжу + швидко + сервіс ├── "Експрес доставка піци за 30 хв" ├── "Швидке замовлення суші" └── "Доставка бургерів блискавично" Група 2: Про їжу + повільно + рецепти ├── "Як приготувати піцу вдома" └── "Рецепт італійської піци"
Comparison of FDE recall versus brute-force search over Chamfer similarity.
3. Chamfer Similarity
Уявіть, що ви організовуєте швидкі побачення для групи друзів!
Життєвий приклад
Ситуація: У вас є 3 друзів, які шукають пару, і 5 потенційних кандидатів.
Як працює Chamfer Similarity:
Друг 1 → Кандидат 3 (сумісність 9/10) Друг 2 → Кандидат 1 (сумісність 8/10) Друг 3 → Кандидат 3 (сумісність 7/10) Загальний бал = 9 + 8 + 7 = 24
Як це працює в Google?
Ваш запит: "купити дешевий телефон"
Сторінка в інтернеті:
Має багато слів = "кандидати":
Chamfer рахує:
"купити" → найкраще підходить до "продаж" (8/10) "дешевий" → найкраще підходить до "знижка" (9/10) "телефон" → найкраще підходить до "смартфон" (9/10) Схожість сторінки = 8 + 9 + 9 = 26 балів
Що зміюється?
Старий метод: Всі слова повинні точно збігатися
Chamfer: Кожне слово знаходить свого "найкращого друга"
Ви шукаєте: "швидка доставка піци"
Сторінка 1: "Експрес доставка смачної піци за 30 хвилин"
Сторінка 2: "Піца піца піца доставка доставка доставка"
Chamfer обере Сторінку 1, бо враховує якість зв'язків, а не кількість повторів!
Що це означає для SEO?
Не треба повторювати одне слово 10 разів. Краще мати різні варіації:
Кожне слово запиту шукає свій найкращий контекст на сторінці
Готовий текст має містити достовірну інформацію та максимально розкривати суть заявленої теми, а не переспам ключиками.
4. Скалярний добуток
Уявіть, що ви граєте в гру "наскільки ми схожі?"
Простий приклад з життя
Ви: люблю каву (10), чай (3), сік (5)
Друг 1: любить каву (8), чай (2), сік (6)
Друг 2: любить каву (2), чай (9), сік (1)
Щоб знайти, хто з друзів вам ближчий:
Результат: Друг 1 ближчий (116 > 52)
Як це працює в пошуку Google?
"купити телефон" → [0.8, 0.2, 0.9, 0.1, ...]
2. Кожна сторінка = свій набір чисел
Сторінка про iPhone → [0.7, 0.3, 0.8, 0.2, ...]
Сторінка про рецепти → [0.1, 0.9, 0.2, 0.8, ...]
Чому це "максимальний"?
Google шукає максимальний результат серед мільйонів сторінок:
Сторінка 1: схожість = 0.95 🥇 Сторінка 2: схожість = 0.82 🥈 Сторінка 3: схожість = 0.71 🥉 ... Сторінка 1000000: схожість = 0.02
Проблема: Раніше кожне слово мало свій вектор - це дуже повільно!
Рішення MUVERA: Об'єднати всі вектори в один "супервектор"
- Було: перевіряти 100 векторів для кожного слова 🐌
- Стало: перевірити 1 супервектор для всього тексту ⚡
Ви шукаєте: "найкращий смартфон для фото"
Чому це важливо для SEO?
- Контекст важливіший: "Apple" + "iPhone" = техніка, "Apple" + "pie" = їжа
- Швидкість індексації: Google швидше обробляє нові сторінки
- Точність ранжування: сторінки які відповідаю всьому запиту піднімаються вище, а не сторінки де присутні ті чі інши ключові слова.
Простіше кажучи: Google тепер розуміє не просто слова, а весь зміст цілком - як людина, яка прочитала текст, а не робот, який рахує ключові слова.
Sources:
https://arxiv.org/html/2405.19504v1
https://research.google/blog/muvera-making-multi-vector-retrieval-as-fast-as-single-vector-search/
https://ua.onlinemschool.com/math/library/vector/multiply/
https://medium.com/@sim30217/chamfer-distance-4207955e8612
https://en.wikipedia.org/wiki/Word_embedding
https://www.tensorflow.org/text/tutorials/word2vec
https://github.com/google/graph-mining/tree/main/sketching/point_cloud