GEMINI LABEN
NANOLITE — Nano Banana 2 Liteが登場しました。Googleで最も速く、最もコスト効率の高いGemini Imageモデルで、軽量な画像生成を安く回したい用途に向いていますOMNIFLASH — Gemini Omni Flashがpublic previewになりました。ネイティブにマルチモーダルなモデルで、企業や開発者が独自の動的な動画ワークフローを構築できますAGENTS — Managed Agentsが拡張されました。background: trueでサーバー側の非同期実行とポーリング、リモートMCPサーバー連携、対話をまたぐ認証情報のリフレッシュに対応しますMEMORY — Memory BankのIngestEvents APIが一般提供になりました。イベントの取り込みとメモリ生成を分離し、コンテンツを継続的にストリームできますTHROUGHPUT — Provisioned Throughputで、同一モデル・同一リージョンに対して最大7件の保留オーダーを提出できるようになりましたDEPRECATE — 画像生成モデルは8月17日に、Gemini Enterprise Agent PlatformのGrok 4.1系は8月20日に停止される予定ですNANOLITE — Nano Banana 2 Liteが登場しました。Googleで最も速く、最もコスト効率の高いGemini Imageモデルで、軽量な画像生成を安く回したい用途に向いていますOMNIFLASH — Gemini Omni Flashがpublic previewになりました。ネイティブにマルチモーダルなモデルで、企業や開発者が独自の動的な動画ワークフローを構築できますAGENTS — Managed Agentsが拡張されました。background: trueでサーバー側の非同期実行とポーリング、リモートMCPサーバー連携、対話をまたぐ認証情報のリフレッシュに対応しますMEMORY — Memory BankのIngestEvents APIが一般提供になりました。イベントの取り込みとメモリ生成を分離し、コンテンツを継続的にストリームできますTHROUGHPUT — Provisioned Throughputで、同一モデル・同一リージョンに対して最大7件の保留オーダーを提出できるようになりましたDEPRECATE — 画像生成モデルは8月17日に、Gemini Enterprise Agent PlatformのGrok 4.1系は8月20日に停止される予定です
記事一覧/高度な活用
高度な活用/2026-05-31上級

Gemini Embedding モデルを切り替える日:無停止リインデックスの設計

埋め込みモデルを新しくすると、過去に作った全ベクトルが使えなくなります。サービスを止めずに数十万件のベクトルを作り直す二重インデックス方式を、再開可能な再生成ジョブとクエリ側の抽象化層のコード付きで設計します。

Gemini API191Embedding3ベクトル検索3アーキテクチャ13本番運用47RAG15

プレミアム記事

Gemini Embedding モデルを切り替える日:無停止リインデックスの設計

埋め込み(Embedding)を使った検索機能は、一度動き始めると驚くほど静かに働き続けます。私が2014年から運営しているアプリ群でも、レビューの意味的クラスタリングやFAQ検索に埋め込みを使っていて、しばらく触らなくても問題なく動きます。ところがある日、必ずこの問いが訪れます。「新しい埋め込みモデルに乗り換えたい。でも、これまで作った数十万件のベクトルはどうなるのか」と。

結論を先に書きます。別のモデルで作ったベクトルは、互いに比較できません。 古いモデルで作った蔵書ベクトルに、新しいモデルで作ったクエリベクトルをぶつけると、検索結果は静かに、しかし確実に壊れます。エラーは出ません。次元数が同じなら計算はできてしまうからです。だからこそ厄介なのです。サービスを止めず、検索品質も落とさずに全ベクトルを作り直すための設計を、これから実際に動くコードとともに組み立てていきましょう。

なぜ「ただ作り直す」では済まないのか

埋め込みモデルが違えば、ベクトルが生きている空間そのものが違います。text-embedding-004 が描く意味の地図と、gemini-embedding-001 が描く地図は、座標系が一致していません。同じ「猫」という単語でも、配置される場所が変わります。

ここで多くの人が最初につまずくのが、次元数の罠です。新旧のモデルがたまたま同じ次元数(たとえば768次元)を返すと、コサイン類似度の計算は何事もなく通ってしまいます。例外も警告も出ません。出力されるのは「それらしいけれど微妙に的を外した検索結果」です。ユーザーは「なんだか検索の精度が落ちた気がする」と感じ、しかし原因は特定されないまま放置されます。これは私が運用初期に実際に冷や汗をかいたパターンで、「動いているように見える」ことが最大の危険だと痛感しました。

つまり、モデルを切り替えるとは、クエリ側の1行を書き換えることではなく、蔵書側の全ベクトルを新しい空間で作り直す(リインデックスする)ことを意味します。そしてその作り直しには、数十万件分のAPI呼び出しと、無視できないコストと、それなりの時間がかかります。

設計の全体像:二重インデックス(Blue/Green)

無停止で切り替える鍵は、データベースのスキーマ移行と同じ発想です。新しいインデックスを裏でこっそり作り上げ、品質が確認できてから一気に切り替えます。

具体的には、次の5段階で進めます。

  1. 新インデックスの準備:新モデル用の格納先を、旧インデックスとは別に用意します。
  2. 背景での再生成:全ドキュメントを新モデルで埋め込み直し、新インデックスへ書き込みます。この間も旧インデックスは通常どおり検索を提供し続けます。
  3. 二重書き込み:移行期間中に追加・更新される新規ドキュメントは、旧・新の両方へ書き込みます。これで作り直しが追い越されません。
  4. シャドー検証とカナリア切り替え:一部のクエリだけ新インデックスへも流し、結果を比較します。問題なければ読み取り先を新インデックスへ切り替えます。
  5. 旧インデックスの撤去:一定期間ロールバック用に残し、安定を確認してから削除します。

この流れを支えるために、まず「ベクトルがどのモデルで作られたか」を必ず記録する設計にします。これが全体の土台です。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
埋め込みモデルを変えると既存ベクトルが互換性を失う理由と、その不整合を検知する具体的な方法がわかる
サービスを止めずに数十万件を作り直す二重インデックス方式を、再開可能な再生成ジョブのコード付きで設計できる
再エンベッドのトークンコストを事前に見積もり、レート制限の中で安全に流し切る運用設計を学べる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Gemini Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

高度な活用2026-06-01
Gemini Embedding の次元を 3072 から 768 へ切り詰める — ベクトルDBのコストとレイテンシを下げる Matryoshka 設計
gemini-embedding-001 は 3072 次元の埋め込みを返しますが、Matryoshka 表現のおかげで前方だけを切り出しても精度がほとんど落ちません。次元を 768 へ削ってベクトルDBのストレージとレイテンシを下げる設計を、再正規化の落とし穴と粗密二段検索のコード付きで組み立てます。
高度な活用2026-07-08
Managed Agent の実行中に知識ベースが書き換わる問題 — File Search を実行エポックで固定する一貫性設計
Managed Agents の自律実行中に File Search ストアが更新されると、同じ実行の中で古い根拠と新しい根拠が混ざります。MVCCに倣った実行エポックの固定で、エージェント1回分の根拠を一貫させる設計と実装をまとめました。
高度な活用2026-07-17
日本語で引いた検索に、対訳の英語記事が出てこない — 埋め込みが内容より先に言語を見ている件
gemini-embedding-2 で日英の対訳ペアを埋め込むと、同じ内容なのに最近傍になりません。言語そのものが類似度を押し上げているためです。対訳ペアを正解として再現率を測り、言語重心を引く方法と翻訳ブリッジを比べた記録をまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →