プレビュー画像モデル停止の朝に学んだこと — Gemini 画像モデル GA 移行と廃止に強いパイプライン設計
gemini-3.1-flash-image-preview と gemini-3-pro-image-preview の停止を機に、GA 版への移行手順と、廃止日に振り回されない画像生成パイプラインの設計をコード付きで整理します。動画から画像を生成するサムネイル自動化も扱います。
Gemini APIで商品画像を構造化分析する — 数千枚を回して固めた本番パイプライン
商品画像から自動でタグ・説明文・カテゴリを生成するツールを、単発の試作から数千枚を安定処理する本番パイプラインへ。構造化出力・再開可能なバッチ・実測コスト・モデルルーティングまで、個人開発の運用で固めた知見をまとめます。
Gemini API implicit caching が効かない・課金がおかしい — 原因別トラブルシューティング
Gemini API の implicit caching が効かない、キャッシュヒット率が低い、コスト削減を期待したのに請求が変わらないといった問題を、原因別に整理して解決策をコード付きで紹介します。
Gemini の Maps Grounding が本番で静かに外れるとき — アトリビューション義務・課金の境界・不発時のフォールバックの運用メモ
Gemini の Grounding with Google Maps を本番に載せた後で効いてくる落とし穴を運用視点でまとめます。グラウンディングの不発検知、アトリビューション表示の義務、課金が発生する境界、鮮度のずれに備えるフォールバックの実装です。
Gemini API の usageMetadata で本番アプリのコストを記録する — リクエスト単位で請求書と突き合わせる実装パターン
usageMetadata をリクエスト単位で記録し、エンドポイント・ユーザー・モデル別にコストを按分する実装パターンに加え、3.5 Flash GA で既定モデルが差し替わってもコスト記録が狂わないよう resp.model_version を基点にした単価引き当てと、ドリフト・未知モデルを毎晩監査する仕組みまで解説します。
Gemini CLI 終了前に、自動化スクリプトを API へ載せ替えた記録
6/18 に Gemini CLI のホスト応答が停止します。シェルから gemini を呼んでいた自動化スクリプトを、google-genai SDK へ安全に載せ替える手順を、構造化出力・リトライ・コスト計測まで含めて実装ベースでまとめました。
外部テキストを Gemini API に渡すときのプロンプトインジェクション対策 — レビューや収集データを安全に処理する防御設計
ユーザーレビューや収集した記事など、信頼できない外部テキストを Gemini API に渡すと間接プロンプトインジェクションの入口になります。信頼境界の隔離・スキーマ拘束・二段階検証・出力サニタイズまで、本番パイプラインに組み込める防御をコード付きで整理します。
画像生成モデルを乗り換えると品質は静かに落ちる — 人手レビューなしで検知する自動ゲートの設計
preview から GA への画像モデル移行で、出力品質が落ちていないかを目視に頼らず検証する3層ゲートの実装です。決定的プロパティ検査・マルチモーダル埋め込み類似度・Gemini によるブリーフ遵守スコアを Python のコードでつなぎ、しきい値とカットオーバー手順まで整理しました。
Gemini API の本文が途中で切れる — finish_reason: MAX_TOKENS を検知して続きを継ぎ直す実装メモ
長文生成で末尾が文の途中でぷつりと切れる。原因の多くは finish_reason: MAX_TOKENS です。例外も 200 のまま静かに混入するこの事故を検知し、続きを継ぎ足して全文を取り戻す実装を、思考トークンの落とし穴とあわせてまとめました。
深夜のポーリングをやめる — Gemini Batch API を Webhook 駆動に作り替えた設計記録
Gemini Batch API の完了監視を 60 秒間隔のポーリングから Webhook 駆動へ移行した実作業の記録です。static/dynamic の使い分け、署名検証、実測値をまとめました。
Gemini の画像生成 preview モデルが 6月25日に停止します — GA 版への移行で確認したコード差分と検証手順
6月25日に停止する gemini-3.1-flash-image-preview / gemini-3-pro-image-preview から GA 版へ移行した作業記録です。モデルIDの確認手順、Python のコード差分、停止前にしかできない回帰チェック、切り替え順序まで実例で整理しました。
Gemini API の空応答を finish_reason から逆引きする — 診断フロー・再試行分類・監視の実務
response.text が空になる問題は candidates・prompt_feedback・finish_reason の3層で診断できます。思考トークンによる出力枯渇の検出、再試行可否の分類器、空応答率の監視まで、本番で運用している実装をまとめました。