Встраивание исходных данных (Шаг 0): Построение фундамента

В этой статье объясняется, как мы встраиваем весь доступный для обнаружения исходный контент (товары, детали и страницы сайта) в общее векторное пространство, чтобы обеспечить семантическое сопоставление во всем конвейере SEO и поиска.

Проблема: Сопоставление запросов с контентом по смыслу

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

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

Что встраивается

Мы встраиваем весь контент, который может обнаружить пользователь и на который может направить конвейер:

  • Товары: Продаваемые позиции каталога (название + текст характеристик + любой курируемый/сгенерированный ИИ текст).

  • Детали: Продаваемые компоненты и аксессуары (названия + спецификации).

  • Страницы сайта: Статьи (/a/) и другие навигируемые страницы, которые могут появляться в поиске и внутренних ссылках.

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

Высокоуровневая архитектура

flowchart TD
    A[Каталог + детали + страницы] --> B[Нормализация и построение описаний]
    B --> C[Дедупликация по каноническому URL]
    C --> D[Инкрементальное встраивание]
    D --> E[Матрица эмбеддингов исходных данных + индекс ключей]
    E --> F[Далее: сопоставление, маршрутизация, похожие запросы, поисковый сервис]

Конвейер встраивания

Шаг A: Консолидация исходных данных

  • Цель: Построить один канонический набор исходных элементов.

  • Входные данные: Каталог товаров, набор данных по деталям и содержимое страниц.

  • Выходные данные: Консолидированный набор исходных данных, содержащий:

    • Ключи: Канонические URL-адреса (используются как стабильные идентификаторы)
    • Описания: Текст, используемый для встраивания
    • Типы: Товар / деталь / статья / страница (для последующей маршрутизации)
  • Процесс:

    1. Извлечь элементы из каждого источника.
    2. Построить описание для каждого элемента.
    3. Провести дедупликацию по каноническому URL-адресу, чтобы каждый URL был представлен один раз.

Шаг B: Инкрементальное встраивание

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

  • Цель: Встроить только новые/измененные элементы, повторно используя кэшированные эмбеддинги для неизмененных элементов.

  • Входные данные: Консолидированный набор исходных данных и кэш эмбеддингов (с предыдущего запуска).

  • Выходные данные: Обновленная матрица эмбеддингов и индекс ключей.

  • Процесс:

    1. Загрузить кэшированные ключи и эмбеддинги.
    2. Вычислить сигнал изменения для каждого элемента (на основе текста для встраивания элемента).
    3. Встроить только новые/измененные элементы, используя настроенную модель (см. Стратегия встраивания).
    4. Объединить кэшированные и вновь вычисленные эмбеддинги в стабильном порядке, с ключом по URL.

Шаг C: Сохранение артефактов

Эмбеддинги хранятся в эффективном числовом формате (обычно с помощью NumPy) вместе с отдельным индексом ключей, чтобы последующие шаги могли сопоставлять строки векторов с каноническими URL-адресами.

Построение описаний (Какой текст мы встраиваем)

Товары

Описания товаров строятся из:

  • Упрощенное название: Название товара и ключевые идентификаторы (например, артикул/название серии).

  • Текст характеристик: Человекочитаемое представление характеристик товара (см. Структура артикула).

  • Длинный текст: Курируемый или сгенерированный ИИ текст, где он доступен (см. Генерация контента с помощью ИИ).

Пример (иллюстративный):

<название товара>
<краткое описание>
<ключевые особенности>

Детали

Описания деталей строятся из:

  • Название для покупателя

  • Внутреннее название (Технический идентификатор)

  • Категория

  • Спецификации/атрибуты, представленные в виде текста

Страницы сайта

Описания страниц строятся из:

  • Заголовок

  • Основной фрагмент текста (вводный раздел/лид)

  • Контекстные идентификаторы (метки категории/семейства, где применимо)

Цель — стабильный, репрезентативный для контента текст, который меняется при изменении смысла страницы.

Правила дедупликации

Каждый канонический URL-адрес появляется один раз в консолидированном наборе данных.

  • Зачем: Несколько источников могут описывать один и тот же URL через разные пути генерации; дубликаты нарушают маршрутизацию, сопоставление и последующее индексирование.

  • Как: Построить словарь с ключом по каноническому URL и обеспечить уникальность на этапе консолидации. Если найдены дубликаты, скрипт выводит их количество и удаляет их.

Как другие шаги используют эмбеддинги исходных данных

  • Сопоставление товаров: Кластеры или запросы сопоставляются с ближайшими исходными элементами по семантическому сходству (см. Сопоставление товаров в SEO).

  • Похожие запросы: Генератор похожих запросов использует сходство эмбеддингов для предложения релевантных навигационных ссылок (см. Похожие запросы в SEO).

  • Поисковый сервис: Онлайн-поиск может использовать векторное сходство по индексированным эмбеддингам (см. Архитектура поискового сервиса).

Смотрите также

Ссылки

Краткое содержание

  • Что: Встраивание товаров, деталей и доступных для обнаружения страниц в общее векторное пространство.

  • Как: Консолидация и дедупликация по каноническому URL, затем инкрементальное встраивание только измененных элементов.

  • Зачем: Это обеспечивает семантический поиск и маршрутизацию по всему конвейеру (сопоставление, похожие запросы и онлайн векторный поиск).


← Назад к указателю документации