Sentence Transformers による Multi-Vector (Late Interaction) Embedding モデル
Multi-Vector (Late Interaction) Embedding Models with Sentence Transformers
Sentence Transformers は、ColBERT スタイルのラテインタラクション検索のための MultiVectorEncoder を導入しました。このモデルは、テキスト全体を単一のベクトルに圧縮する従来の埋め込みモデルとは異なり、トークンごとにベクトルを保持し、MaxSim オペレーターを使用してクエリとドキュメントを照合します。これにより、トークンレベルのマッチング情報を保持し、検索精度を向上させます。ColBERT、PyLate、ColPali のチェックポイント形式に対応しており、インストールは pip install -U sentence-transformers で可能です。特に、視覚文書検索や、単一ベクトルモデルでは平均化されてしまうような特定のエンティティや重要な節の検索に有効です。ただし、インデックスサイズは大きくなる傾向がありますが、PLAID などの圧縮技術や Token Pooling、Retrieve and Rerank といった手法で効率化が可能です。モデルのロードやエンコーディング、スコアリングは既存の Sentence Transformers API と同様に行えますが、クエリとドキュメントで異なる処理を行うため、encode_query() と encode_document() を使い分ける必要があります。スコアリングには MaxSim が用いられ、クエリトークンごとに最も類似度の高いドキュメントトークンを見つけ、それらを合計します。スコアの比較可能性を高めるために MeanMaxSim も利用可能です。小規模コーパスでは直接的な MaxSim 検索が有効ですが、大規模コーパスではラテインタラクションインデックスや、高速なバイエンコーダーと MultiVectorEncoder を組み合わせたリランキング手法が推奨されます。
- Sentence Transformers が ColBERT スタイルのラテインタラクション検索のための MultiVectorEncoder を導入し、pip install -U sentence-transformers で利用可能になった。
- ColBERT、PyLate、ColPali のチェックポイント形式に対応しており、視覚文書検索(ColPali 経由)にも利用可能。
Sentence Transformers による MultiVectorEncoder の導入は、RAG や文書検索の精度向上に寄与する実用的なオープンソース技術アップデートであり、AI 基盤層の進化として注目に値する。ただし、特定企業の業績や調達に直結する具体的な事象ではなく、投資判断を直接左右するインパクトは限定的。エンタープライズ検索や視覚文書検索市場での競争力向上に資する技術的マイルストーンとしてウォッチ対象。