モデル・技術

埋め込みモデルとは?Embedding Model・ベクトル化

読み:うめこみもでる / 英:Embedding Model

更新日: 読了目安:約5分

埋め込みモデル(Embedding Model)は、テキストやコードなどを検索向けのベクトルに変換する専用の機械学習モデルです。本記事は各社モデル名の比較ではなく、LLMとの役割分担——なぜ別モデルが要るか——に焦点を当てます。

試験で問われる見方

単独の略称問題は少ないですが、埋め込みの実体として「テキストをベクトル化するモデル」と理解し、ベクトルDBRAGと接続できることが重要です。

LLMでチャット用と同じモデルをそのまま埋め込みに使える場合もありますが、試験では検索用の表現学習文章生成を分けて考えるとよいです。

演習で確認する

関連:TF-0232HQ-0371

埋め込みモデルとは

入力文(やチャンク)を受け取り、固定次元の実数ベクトルを出力します。意味が近い文は出力ベクトルも近くなるよう学習されています。古典的にはword2vec、現代ではTransformerベースのモデルが主流です。

LLMとの違い

観点埋め込みモデルLLM(チャット用)
出力ベクトル(数値配列)自然言語テキスト
主用途類似検索・クラスタリング回答生成・要約
RAGインデックス・クエリのベクトル化最終回答の生成
コスト一般に軽量・バッチ処理向き生成トークン課金が大きいことも

RAGスタックでの位置

  1. 文書 → チャンキング
  2. 各チャンク → 埋め込みモデル → ベクトル
  3. ベクトル → ベクトルDB
  4. 質問 → 同じ埋め込みモデル → 検索
  5. ヒットチャンク + 質問 → LLM

インデックス時と検索時で同じモデルを使う必要があります(次元・空間の一致)。

選定の観点

  • 日本語・専門用語の性能
  • ベクトル次元とストレージコスト
  • API提供かオンプレか(機密
  • 最大入力長(長いチャンクを扱えるか)

よくある質問

埋め込みモデル=埋め込み?

埋め込みは技術・結果のベクトル、埋め込みモデルはそれを生成するモデルです。

ChatGPTのモデルで埋め込みAPIは?

各クラウドは埋め込み専用APIを提供しています。チャットモデルとは別エンドポイントです。

ファインチューニングする?

ドメイン特化で埋め込みを追加学習することはあります。ファインチューニングの一種として理解できます。