結論: Googleが2026年3月に公開し、4月にGA(一般提供)となったGemini Embedding 2は、テキスト・画像・動画・音声・PDFを1つのベクトル空間に統合した世界初のネイティブマルチモーダル埋め込みモデルです。MTEB英語スコア68.32でトップクラスの精度を持ち、企業の検索エンジン刷新・RAG構築に大きなインパクトをもたらします。
この記事の要点:
- 5つのモダリティ(テキスト・画像・動画・音声・PDF)を1つのAPIで統合処理し、クロスモーダル検索が可能
- MTEB英語スコア68.32でOpenAI text-embedding-3-largeを約9.4点上回る
- Matryoshka表現学習により再学習不要で128〜2048次元に動的切り替え可能
対象読者: 企業の検索エンジン担当者・エンジニア・RAGシステム構築者・DX推進担当者
読了後にできること: Gemini Embedding 2のAPIを使った基本的なマルチモーダル検索の実装方法が理解できる
「社内の検索が使えない」という声、最近の研修先でよく聞くんです。PDFに書いてあることが検索ヒットしない、画像の内容が検索できない、英語資料と日本語資料を横断して探せない……そういった悩みです。
この根本的な原因は、多くの場合「テキストしか埋め込めない従来の検索エンジン」にあります。テキストと画像は別々のシステムで管理されていて、一緒に検索できない。そんな状況が長く続いていました。
ところが2026年3月、Googleがこの問題を一気に解決するモデルを出してきました。「Gemini Embedding 2」です。テキスト・画像・動画・音声・PDFを全部同じベクトル空間に変換して、一つの検索インデックスで管理できるようになったんです。4月には一般提供(GA)も始まりました。
この記事では、Gemini Embedding 2の仕組みと精度、具体的な実装方法、企業の検索エンジン・RAGシステムへの活用法を実践的に解説します。
マルチモーダル検索の基本概念については、AIエージェント導入完全ガイドでも触れていますが、今回はEmbedding 2に特化した実装ガイドです。
まず結論 — Gemini Embedding 2が解決する「5つの検索課題」
購入決断の前に、何が変わるかを先に整理します。
| 従来の課題 | Gemini Embedding 2での解決 |
|---|---|
| 「製品マニュアルの図が検索できない」 | 画像を直接ベクトル化→テキストと同じインデックスで検索可能 |
| 「会議録音の内容を検索できない」 | 音声をそのままベクトル化→文字起こし不要で意味検索 |
| 「英語PDFと日本語資料を横断検索できない」 | 100言語以上を統一ベクトル空間で処理 |
| 「動画のどこに欲しい情報があるかわからない」 | 動画をベクトル化→「この場面を探して」が可能 |
| 「検索精度が低くて使い物にならない」 | MTEB英語68.32(業界トップクラス) |
Gemini Embedding 2の仕組み — なぜ5モダリティを統合できるのか
Embedding(埋め込み)とは、テキストや画像などの情報を数値のベクトルに変換する技術です。意味が似ているものは数値も近くなるため、「意味検索(Semantic Search)」が可能になります。
従来の問題は「モダリティごとに別のモデルが必要だった」ことです。テキスト用の埋め込みモデル、画像用の埋め込みモデル……それぞれが別の「次元空間」に変換するため、テキストと画像をまたいで検索できませんでした。
Gemini Embedding 2は、5つのモダリティを最初から同じ統一ベクトル空間に変換するよう訓練されています。「ネイティブマルチモーダル」という言葉の意味はここにあります。
処理できる入力の仕様
| モダリティ | 制限 | ユースケース例 |
|---|---|---|
| テキスト | 標準トークン制限 | 文書・メール・FAQ・製品説明 |
| 画像 | 1リクエストに最大6枚 | 製品写真・図面・スライド画像 |
| 動画 | 最大128秒 | 説明動画・研修コンテンツ |
| 音声 | 最大80秒 | 会議録音・顧客コール・議事録 |
| 最大6ページ | 仕様書・契約書・報告書 |
1回のAPIコールで、これらを混合して入力できます。例えば「テキスト2段落+画像3枚+PDFページ2ページ」を1リクエストで処理できます。
Matryoshka表現学習(MRL)— 再学習不要の次元調整
もう一つの大きな特徴が「Matryoshka表現学習(Matryoshka Representation Learning: MRL)」の採用です。
ロシアの入れ子人形(マトリョーシカ)のように、大きなベクトルの中に小さなベクトルが入っている構造で学習されています。これにより、再学習なしに以下の次元数に切り替えられます:
- 128次元(最小:高速・低コスト)
- 256次元
- 512次元
- 768次元
- 1,536次元
- 2,048次元(最大:最高精度)
実用上の意味は大きいです。開発初期は128次元で高速にプロトタイプを作り、精度が必要な本番環境では2,048次元に切り替える、という使い方が再学習なしにできます。
ベンチマーク比較 — OpenAI・Cohereとの精度比較
数字で見てみましょう。MTEBは埋め込みモデルの業界標準ベンチマークです。
MTEB英語ベンチマーク比較
| モデル | MTEB英語スコア | マルチモーダル | 言語数 |
|---|---|---|---|
| Gemini Embedding 2(全体) | 68.16 | ○(5モダリティ) | 100+ |
| gemini-embedding-001(API) | 68.37 | ×(テキストのみ) | 100+ |
| OpenAI text-embedding-3-large | 約58.96〜64.6 | ×(テキストのみ) | 複数 |
| Cohere embed-v3 | 高スコア | ×(テキストのみ) | 100+ |
テキスト単体での精度では gemini-embedding-001 がわずかに上回りますが、Gemini Embedding 2は5つのモダリティを統合しながらほぼ同等の精度を維持しています。
タスク別の得意・不得意
| タスク | Gemini Embedding 2のスコア | 備考 |
|---|---|---|
| MTEB英語(総合) | 68.32 | 業界トップクラス |
| MTEB多言語 | 69.9 | 100言語での検索 |
| MTEB コード検索 | 84.0 | コードリポジトリ検索に強い |
| 動画検索(Vatex/MSR-VTT/Youcook2) | 68.8 | テキスト→動画検索 |
実装ガイド: Gemini Embedding 2のAPIを使う
研修先のエンジニアチームと一緒にGemini Embedding 2を試したとき、「APIの設計がシンプルで拍子抜けした」という感想が多かったです。既存のEmbedding APIと大きく変わらない使い心地で、マルチモーダルに対応できます。
基本セットアップ
# インストール
pip install google-genai pillow
# 認証(Gemini API)
export GEMINI_API_KEY="your-api-key-here"
# または Vertex AI 認証
# gcloud auth application-default loginテキスト埋め込み(基本)
import google.genai as genai
client = genai.Client(api_key="YOUR_API_KEY")
# テキストを埋め込みベクトルに変換
response = client.models.embed_content(
model="gemini-embedding-2",
contents="AIエージェントの導入コストを削減する方法を教えてください",
config={"task_type": "RETRIEVAL_DOCUMENT"} # 検索用途の場合
)
embedding = response.embeddings[0].values
print(f"ベクトル次元数: {len(embedding)}") # デフォルト: 3072
# 不明点があれば質問してから処理してください
# 数値と仕様は実装前に公式ドキュメントで確認してくださいマルチモーダル埋め込み(テキスト+画像)
import google.genai as genai
from PIL import Image
import base64, io
client = genai.Client(api_key="YOUR_API_KEY")
# 画像をBase64に変換
def image_to_base64(image_path):
with open(image_path, "rb") as f:
return base64.b64encode(f.read()).decode()
# テキストと画像を同時に埋め込み
image_b64 = image_to_base64("product_manual_diagram.png")
response = client.models.embed_content(
model="gemini-embedding-2",
contents=[
{"text": "製品マニュアルの配線図"},
{"inline_data": {
"mime_type": "image/png",
"data": image_b64
}}
]
)
# 1つのベクトルが返ってくる(テキスト+画像を統合)
embedding = response.embeddings[0].values
print(f"統合埋め込みベクトル次元数: {len(embedding)}")次元数の動的切り替え(MRL活用)
import google.genai as genai
client = genai.Client(api_key="YOUR_API_KEY")
# 512次元で高速検索(プロトタイプ用)
response_fast = client.models.embed_content(
model="gemini-embedding-2",
contents="顧客満足度向上の施策について",
config={
"task_type": "RETRIEVAL_QUERY",
"output_dimensionality": 512 # MRLで動的切り替え
}
)
# 2048次元で高精度検索(本番用)
response_accurate = client.models.embed_content(
model="gemini-embedding-2",
contents="顧客満足度向上の施策について",
config={
"task_type": "RETRIEVAL_QUERY",
"output_dimensionality": 2048
}
)
print(f"高速モード: {len(response_fast.embeddings[0].values)}次元")
print(f"高精度モード: {len(response_accurate.embeddings[0].values)}次元")ビジネス活用シナリオ別の実装アプローチ
シナリオ1: 社内ナレッジベース検索(RAGシステム)
顧問先の製造業(従業員300名規模)で、「社内規定・マニュアルのPDFをまとめて検索できるシステムが欲しい」という依頼を受けたことがあります。従来は全文検索ツールを使っていたのですが、「書いてあることと言い方が少し違う質問」がヒットしないという問題を抱えていました。
Gemini Embedding 2を使ったRAG(Retrieval-Augmented Generation)システムの基本構成は以下の通りです:
# RAG基本パイプライン(概念コード)
import google.genai as genai
client = genai.Client(api_key="YOUR_API_KEY")
def create_knowledge_index(documents):
"""
文書リストをベクトルインデックスに変換
documents: [{"text": "...", "metadata": {...}}] のリスト
"""
embeddings = []
for doc in documents:
response = client.models.embed_content(
model="gemini-embedding-2",
contents=doc["text"],
config={"task_type": "RETRIEVAL_DOCUMENT"}
)
embeddings.append({
"embedding": response.embeddings[0].values,
"metadata": doc["metadata"]
})
return embeddings
def search_knowledge(query, index, top_k=5):
"""
クエリに最も関連する文書をベクトル検索で取得
"""
query_response = client.models.embed_content(
model="gemini-embedding-2",
contents=query,
config={"task_type": "RETRIEVAL_QUERY"}
)
query_embedding = query_response.embeddings[0].values
# コサイン類似度でランキング(実装省略)
# Vertex AI Vector Search / ChromaDB / pgvector等を使用
return top_k_similar_docs(query_embedding, index, top_k)
# 注: 本番実装にはVectorDBの選定が必要です
# 仮定した点は「推定」として明記してくださいこのシステムを導入した製造業の事例では(想定シナリオ)、「マニュアルのどこに書いてあるか探す時間」が大幅に短縮されると期待できます。実際の効果測定は自社のKPIに合わせて実施することを推奨します。
事例区分: 想定シナリオ
上記は100社以上の研修・コンサル経験をもとに構成した典型的なシナリオです。実際の効果は企業規模・既存システム・導入規模によって異なります。
シナリオ2: ECサイトの商品検索改善
商品の「画像で似たもの検索」と「テキスト検索」を統合することで、「白くてシンプルなソファ」というテキスト検索が、実際のソファ画像と意味的に一致するようになります。
実装上のポイント:
- 商品インデックス作成時: 商品テキスト説明+商品画像を同時に embed_content に渡す
- 検索時: ユーザーのテキストクエリだけでも、画像+テキストの統合インデックスから類似商品を返せる
- 精度向上には task_type の指定が重要(RETRIEVAL_DOCUMENTとRETRIEVAL_QUERYを使い分ける)
シナリオ3: 多言語グローバルナレッジ検索
100言語以上に対応しているため、日本語の質問で英語ドキュメントを検索したり、フランス語とスペイン語の文書を横断検索したりできます。グローバル展開している企業の社内検索システムに特に有効です。
# 多言語クロス検索の例(概念コード)
# 日本語クエリ → 英語文書を検索
query_ja = "AI導入のROI測定方法" # 日本語クエリ
# 英語文書群のインデックスに対して日本語クエリで検索可能
results = search_knowledge(
query=query_ja,
index=english_document_index, # 英語で作成したインデックス
top_k=5
)
# → 言語をまたいだ意味検索で英語文書がヒット料金と既存Embeddingからの移行
Gemini Embedding 2の料金体系
| 用途 | 料金 | 備考 |
|---|---|---|
| テキスト埋め込み(標準) | $0.20 / 100万トークン | Gemini API経由 |
| テキスト埋め込み(バッチ) | $0.10 / 100万トークン | 50%オフ・非リアルタイム用 |
| 画像・動画・音声 | Gemini APIの標準メディアレート | Vertex AI経由で別途確認 |
比較のため、OpenAI text-embedding-3-largeは $0.13 / 100万トークンです。テキスト単体ではOpenAIの方が安価ですが、マルチモーダル対応の価値を考えると、Gemini Embedding 2のコストパフォーマンスは競争力があります。
既存Embedding 1(text-embedding-004等)からの移行ポイント
- APIの変更点: モデル名を
gemini-embedding-2に変更するだけで基本動作 - インデックスの再構築が必要: ベクトル空間が異なるため、既存インデックスは再作成
- 次元数の確認: デフォルト次元数が変わる場合があるため、VectorDBの設定も確認
- コスト試算: バッチAPIを活用すると移行コストを最小化できる
【要注意】Gemini Embedding 2活用の失敗パターン
失敗1: 「マルチモーダル対応=何でもできる」の誤解
❌「動画ファイルをそのまま全部ベクトル化すれば社内動画検索ができる」
⭕「1リクエスト128秒制限があるため、長い動画はチャンク分割が必要」
なぜ重要か: 1時間の会議録画を「そのまま突っ込もう」とすると制限に引っかかります。実装前に各モダリティの制限(画像6枚・動画128秒・音声80秒・PDF6ページ)を把握し、分割処理のパイプラインを設計する必要があります。
失敗2: task_typeの設定ミス
❌ インデックス作成時も検索時も、task_typeを省略か同じ設定にする
⭕ インデックス用は RETRIEVAL_DOCUMENT、検索クエリ用は RETRIEVAL_QUERY を使い分ける
なぜ重要か: task_typeの設定は検索精度に直接影響します。文書とクエリでは埋め込みの最適化方向が異なるため、正しく設定しないと類似度計算の精度が落ちます。
失敗3: VectorDB選定を後回しにする
❌ まず Gemini Embedding 2 の API を試して、VectorDB は後で考える
⭕ 規模・レイテンシ要件に合ったVectorDB(Vertex AI Vector Search、pgvector、ChromaDB等)を先に選定する
なぜ重要か: 埋め込みモデルはあくまでベクトルを生成するだけです。そのベクトルを格納・検索するVectorDBの選定が、実際の検索システムの性能を左右します。小規模ならChromaDB、エンタープライズならVertex AI Vector Searchがよく使われます。
失敗4: Preview期間のAPI仕様変更を見逃す
❌「プレビュー期間の仕様をそのまま本番実装に使う」
⭕「GAリリース後の公式ドキュメントを参照し、仕様変更を確認してから実装する」
なぜ重要か: Gemini Embedding 2は2026年3月にプレビュー、4月にGAとなりました。プレビュー期間にAPIを試した場合、GA後に仕様が変更されている可能性があります。GAドキュメントを必ず確認してください。
OpenAI vs Gemini: どちらを選ぶか
用途別おすすめ早見表
| 用途 | 推奨モデル | 理由 |
|---|---|---|
| テキストのみのRAG(コスト重視) | OpenAI text-embedding-3-large | テキスト精度同等でコスト35%安い |
| テキスト・画像の統合検索 | Gemini Embedding 2 | ネイティブマルチモーダルで唯一の選択肢 |
| 100言語以上の多言語検索 | Gemini Embedding 2 | MTEB多言語69.9で最高クラス |
| コードリポジトリ検索 | Gemini Embedding 2 | MTEB Code 84.0の高スコア |
| 音声・動画コンテンツ検索 | Gemini Embedding 2 | 他に選択肢がない(唯一対応) |
| Google Cloud / Vertex AIを利用中 | Gemini Embedding 2 | エコシステム統合でコスト効率が高い |
正直にお伝えすると、テキストのみのシンプルなRAGで現行OpenAIを使っている場合、すぐに乗り換えるほどの優位性はないかもしれません。Gemini Embedding 2の真価は、複数のモダリティを扱う場合に発揮されます。
まとめ: 今日から始める3つのアクション
- 今日やること: Google AI Studio(aistudio.google.com)でGemini Embedding 2の無料枠を使ってAPIを試す。まずテキストだけで動作確認。
- 今週中: 自社の「検索できなくて困っている情報」をリストアップし、テキスト・画像・PDFのどのモダリティが関わるかを整理する。マルチモーダル対応が必要かを判断する。
- 今月中: 小規模なPoC(概念実証)として、社内文書10〜50件のRAGシステムをChromaDB+Gemini Embedding 2で構築し、検索精度を評価する。
次回予告: 次の記事では「Google Cloud Next 2026で発表された$7.5億エンタープライズAI支援ファンド」の全貌と、日本企業が活用するための戦略を解説します。
参考・出典
- Gemini Embedding 2 is now generally available | Google Blog — Google(参照日: 2026-04-24)
- Gemini Embedding 2 | Vertex AI Documentation — Google Cloud(参照日: 2026-04-24)
- Gemini Developer API pricing — Google AI for Developers(参照日: 2026-04-24)
- Gemini Embedding 2: Specs, Benchmarks, Pricing, and What It Means for RAG — Medium(参照日: 2026-04-24)
- Gemini Embedding 2 Supports Search Across 100+ Languages — Geeky Gadgets(参照日: 2026-04-24)
著者: 佐藤傑(さとう・すぐる)
株式会社Uravation代表取締役。早稲田大学法学部在学中に生成AIの可能性に魅了され、X(旧Twitter)で活用法を発信(@SuguruKun_ai、フォロワー約10万人)。100社以上の企業向けAI研修・導入支援を展開。著書『AIエージェント仕事術』(SBクリエイティブ)。
ご質問・ご相談は お問い合わせフォーム からお気軽にどうぞ。










