ソースデータの埋め込み(ステップ0):基盤の構築

この記事では、SEOおよび検索パイプライン全体でセマンティックマッチングをサポートするために、発見可能なすべてのソースコンテンツ(製品、パーツ、オンプレミスページ)を共有のベクトル空間に埋め込む方法を説明します。

問題点:意味によるクエリとコンテンツのマッチング

ユーザーは意図を多くの異なる言い回しで表現します。クエリの文言がカタログの文言と重ならない場合、キーワードマッチングは機能しません。

クエリとソースコンテンツの両方を意味によって比較できるようにするため、セマンティック埋め込みを使用します(通常はコサイン類似度を介して)。

埋め込まれる対象

ユーザーが発見可能で、パイプラインがルーティングできるすべてのコンテンツを埋め込みます:

  • 製品: 販売可能なカタログアイテム(タイトル + 機能テキスト + 任意のキュレーション/AI生成コピー)。

  • パーツ: 販売可能なコンポーネントとアクセサリ(名称 + 仕様)。

  • オンプレミスページ: 記事(/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にマッピングできるように、別個のキーインデックスとともに保存されます。

説明文の構築(埋め込むテキスト)

製品

製品の説明文は以下から構築されます:

  • 簡易名: 製品名と主要な識別子(例:SKU/シリーズ名)。

  • 機能テキスト: 製品機能の人間が読める表現(SKU構造を参照)。

  • 長文コピー: 利用可能な場合はキュレーションまたはAI生成のコピー(コンテンツAI生成を参照)。

例(説明用):

<製品名>
<短い説明>
<主要機能のハイライト>

パーツ

パーツの説明文は以下から構築されます:

  • 顧客向け名称

  • 内部名称(技術識別子)

  • カテゴリ

  • 仕様/属性(テキストとしてレンダリング)

オンプレミスページ

ページの説明文は以下から構築されます:

  • タイトル

  • 本文の主要スニペット(イントロ/リードセクション)

  • 文脈的識別子(該当する場合のカテゴリ/ファミリーラベル)

目標は、ページの意味が変わったときに変化する、安定したコンテンツを代表するテキストです。

重複排除ルール

各正規URLは統合データセットに一度だけ出現します。

  • 理由: 複数のソースが異なる生成パスを通じて同じURLを記述する可能性があり、重複はルーティング、マッチング、下流のインデックス作成を破壊します。

  • 方法: 正規URLをキーとした辞書を構築し、統合時に一意性を強制します。重複が見つかった場合、スクリプトはその数を表示して削除します。

他のステップがソース埋め込みをどのように使用するか

  • 製品マッチング: クラスターまたはクエリは、セマンティック類似度によって最も近いソースアイテムにマッチングされます(SEO製品マッチングを参照)。

  • 関連検索: 関連検索ジェネレーターは、埋め込みの類似度を使用して関連するナビゲーションリンクを提案します(SEO関連検索を参照)。

  • 検索サービス: オンライン検索では、インデックス付けされた埋め込みに対するベクトル類似度を使用できます(検索サービスアーキテクチャを参照)。

関連項目

参考文献

まとめ

  • 内容: 製品、パーツ、発見可能なページを共有のベクトル空間に埋め込む。

  • 方法: 正規URLで統合および重複排除し、次に変更されたアイテムのみを増分的に埋め込む。

  • 理由: これにより、パイプライン全体(マッチング、関連検索、オンラインベクトル検索)でのセマンティック検索とルーティングが可能になる。


← ドキュメントインデックスに戻る