GEMINI LABEN
PRO35 — Gemini 3.5 Proのリリース目標が7月17日と報じられています。ただし日付・コンテキスト長・価格のいずれもGoogleの公式発表ではありませんREBUILD — 2.5 Proのアーキテクチャを白紙化した全面再設計とされ、再帰的なツール呼び出しとSVG生成での構造的な失敗が理由と報じられていますFLASH35 — 広く提供中の最新リリースはGemini 3.5 Flash。コーディング・エージェント・マルチモーダル・長文書処理を高速かつ低コストで担いますSAATHI — Gemini 3.5 Flashを核にしたATL Saathiが、インドの100校でパイロット開始。教員向けに24時間対応の授業計画・研修アシスタントを提供しますSEA — 東南アジアレポートでは、プロンプトの約70%が現地語(ベトナム89%・タイ87%・インドネシア84%)。リクエストの約4分の3がモバイル発ですSHEETS — 7月15日から、AI Expanded Accessライセンス保有者はFill with GeminiとSheetsのAI関数の利用上限が引き上げられましたPRO35 — Gemini 3.5 Proのリリース目標が7月17日と報じられています。ただし日付・コンテキスト長・価格のいずれもGoogleの公式発表ではありませんREBUILD — 2.5 Proのアーキテクチャを白紙化した全面再設計とされ、再帰的なツール呼び出しとSVG生成での構造的な失敗が理由と報じられていますFLASH35 — 広く提供中の最新リリースはGemini 3.5 Flash。コーディング・エージェント・マルチモーダル・長文書処理を高速かつ低コストで担いますSAATHI — Gemini 3.5 Flashを核にしたATL Saathiが、インドの100校でパイロット開始。教員向けに24時間対応の授業計画・研修アシスタントを提供しますSEA — 東南アジアレポートでは、プロンプトの約70%が現地語(ベトナム89%・タイ87%・インドネシア84%)。リクエストの約4分の3がモバイル発ですSHEETS — 7月15日から、AI Expanded Accessライセンス保有者はFill with GeminiとSheetsのAI関数の利用上限が引き上げられました
記事一覧/開発ツール
開発ツール/2026-07-16上級

生成ログを丸ごと残すのをやめました — 3層の保持設計とプロンプト指紋で追跡性だけを残す

障害調査のために Gemini API のリクエストとレスポンスを丸ごと保存していました。3層の保持設計とプロンプト指紋に切り替え、本文を消しても原因を辿れる状態を保った記録です。

Gemini API186ログ設計データ保持運用7Firestore

プレミアム記事

深夜の自動処理が同じカテゴリばかり返してくるようになり、原因を探そうとログを開きました。

3ヶ月前のレコードまで遡れました。リクエスト本文も、レスポンス本文も、そっくり残っていました。便利です。便利すぎました。

そこにはアプリの利用者が打ち込んだ文章が、そのままの形で並んでいました。障害調査のために残したはずのものが、いつのまにか「消す理由を誰も検討していないデータ」になっていた。画面を見ながら、少し手が止まりました。

ストレージの請求額の話ではありません。私が個人で回している処理に、他人の言葉を無期限に置いておく理由があるのか、という話です。

私自身、消す設計を一度も書いていませんでした。書かなければ残る。ログとは、そういうものでした。

全部残す設計は、何を抱えていたのか

当時のログは素朴でした。Gemini API を呼ぶラッパーの中で、リクエストとレスポンスを丸ごと JSON にして Firestore へ書く。それだけです。

3ヶ月動かした結果が次の通りでした。壁紙分類・記事メタデータ生成・レビュー返信の下書きを合わせた、個人開発規模の数字です。

項目実測
レコード数約 41,000 件(3ヶ月)
1件あたり平均サイズ約 11 KB(本文込み)
合計約 450 MB
実際に人が開いたレコード62 件

41,000 件を保存して、開いたのは 62 件。0.15% です。

しかも開いた 62 件のうち、本文を読む必要が本当にあったのは 20 件ほどでした。残りは「どのモデルで」「いつ」「どれくらいのトークンで」「どう終了したか」を見れば足りていました。

つまり本文は、調査の主役ではなかった。主役は文脈のほうでした。

原因を辿るのに、最小限どこまで要るのか

先に「捨てた場合に何が困るか」を書き出しました。実際に過去に起きた調査だけを対象にしています。

  1. 出力の傾向が変わった → いつから変わったか、その前後でモデルまたはプロンプトが変わったか
  2. コストが跳ねた → どの処理が、どのトークン内訳で膨らんだか
  3. 特定の入力で必ず失敗する → その入力の(長さ・言語・添付の有無)と finishReason
  4. 出力が途中で切れる → maxOutputTokens と実際の出力トークン

4つとも、本文そのものを必要としていませんでした。必要なのは「そのとき何を投げたかを一意に識別できること」でした。

同じ入力を投げていたのか、違う入力だったのか。それさえ分かれば、あとは条件を再現して手元で試せます。

ここから設計が決まりました。本文を消す代わりに、本文の同一性だけを残す

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

この記事の続きを読む

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

この記事で得られること
本文を残さずに原因を辿るための「プロンプト指紋」の作り方と、指紋に何を含めて何を含めないかの線引き
Tier 0/1/2 の保持階層と Firestore TTL ポリシーの実装。保存量を約 92% 減らしても調査可能率を保った実測
失敗100%・成功3%の層別サンプリングと、指紋だけでモデル入れ替えを特定できた実例
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

開発ツール2026-07-09
例外にならない失敗を型で閉じる — Gemini API のレスポンスを判別可能ユニオンに正規化する
HTTP 200 なのに本文が空、という失敗は try/catch では捕まりません。finishReason と blockReason を判別可能ユニオンに正規化し、never による網羅性チェックで処理漏れをコンパイル時に潰す設計をまとめました。
開発ツール2026-07-03
音声が全部できるまで待たせない — Gemini TTS ストリーミング生成を配信経路に組み込む設計
gemini-3.1-flash-tts-preview が streamGenerateContent に対応しました。最初の音が出るまで実測1.8秒の配信経路を、PCM境界処理・文単位の再開・preview停止フォールバックまで含めて設計します。
開発ツール2026-07-02
元データを消しても生成物は残る — Gemini 派生データに削除を伝播させる台帳設計
ユーザーが元データを削除しても、Gemini で生成した埋め込みやキャッシュにはテキストが残り続けます。生成時に由来を記録する provenance 台帳、シンク別の削除伝播ワーカー、取りこぼしを数える検証スイープまで、削除を派生データに追随させる設計をまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →