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関数の利用上限が引き上げられました
記事一覧/API / SDK
API / SDK/2026-07-17上級

途中で切れた Gemini のストリーミングを、引き直すか続きから書かせるか — 二重に払わないための分岐設計

モバイル回線でストリーミングが切れたあと、無条件に全部引き直していませんか。受信済み出力を続きに使う方式との費用差を式で出し、継ぎ目の壊れ方まで含めて分岐条件を決める設計をまとめます。

Gemini API187ストリーミング11コスト設計5冪等性4モバイル

プレミアム記事

電車で移動しながら自分のアプリを触っていて、生成中の文章が途中で止まりました。ホームに入った瞬間です。アプリは黙って最初からやり直し、同じ書き出しがもう一度流れてきました。

そのとき引っかかったのは待たされたことよりも、いま消えた 600 トークン分の文章にも、おそらく料金は発生しているという事実でした。ユーザーには一度も届かないまま、二度目の生成が始まっています。

Google が公開した東南アジアのレポートでは、Gemini アプリへのリクエストのおよそ 75% がモバイルからで、音声・写真・動画を伴うものも 40% を超えていました。回線が揺れる前提で作らなければならない、という話が数字として出てきたことになります。個人開発でモバイル向けに Gemini を組み込んでいる立場からすると、切断は例外ではなく通常運転の一部です。

なぜ切れるのかの切り分けはストリーミングが本番で途中で切れるときの原因切り分けの順序に譲ります。ここで扱うのは、切れた後に何を選ぶかという一点です。

切れたストリームは「どこまで課金されたか」が分からない

streamGenerateContentusageMetadata は、チャンク列の終盤で届きます。最後まで受け取れた場合はそこに入力・出力・思考のトークン数が入っています。

逆に言えば、途中で切れた試行については、この数字が手元に来ません。何トークン分を生成したところで切れたのか、クライアントからは確定できないということです。

そして、クライアントが接続を落とした時点でサーバ側の生成がどう扱われるか、課金がどこで止まるかは、公開ドキュメントに明示されていません。

ここで「たぶん課金されない」と仮定してしまうと、設計が崩れます。私自身は、受信済みチャンク分は課金されたものとして扱う前提で組んでいます。分からないものを楽観側に倒さない、というだけの話です。本番運用で効いてくる注意点は、この不確かさが再試行のたびに積み上がることのほうです。

状況usageMetadata実際の課金
最後まで受信取得できる数字どおりに把握できる
途中で切断届かない不明(悲観側に見積もる)
クライアント側で中止届かない不明(同上)

計測できない支出があるなら、せめて発生回数だけは数えておきます。切断イベントに受信済み文字数を添えてログに落とすだけでも、後で効いてきます。

引き直しと継続では、費用の形が違う

記号を置きます。プロンプトのトークン数を P、完成までに必要な出力を O、切れるまでに受け取った出力を R とします。入力単価を Ci、出力単価を Co とします。

切れた試行のぶん(Ci×P + Co×R)は、どちらを選んでも既に出ていきます。差が出るのはその後です。

方式二度目の入力二度目の出力捨てるもの
引き直すPO受信済みの R トークン
続きから書かせるP + RO − R継ぎ目の滑らかさ

差額を出すと、こうなります。

引き直し − 継続
 = (Ci×P + Co×O) − (Ci×(P+R) + Co×(O−R))
 = Co×R − Ci×R
 = R × (Co − Ci)

Gemini の価格表では出力単価が入力単価より高く置かれています。つまり Co − Ci は正で、継続は常に名目上は安くなるという結論になります。

ただし式をよく見ると、節約額は R に比例します。R が 60 トークンなら、浮くのは 60 × (Co − Ci) です。実装の複雑さと釣り合う額ではありません。

費用だけを見て「常に継続」と決めるのは、この式の読み違えです。効いてくるのは R が大きいとき、つまり長い文章を書かせている最中に落ちたときだけです。

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

この記事の続きを読む

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

この記事で得られること
切れるたびに全部引き直していた再試行を、受信済み出力を活かす方式に切り替える判断基準が手に入る
継続と引き直しの費用差を R×(出力単価−入力単価) という式で自分の構成に当てはめて計算できる
継ぎ目の重複・文体の段差・構造化出力の破綻という副作用を、実装レベルで潰せる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

API / SDK2026-07-05
Nano Banana 2 Lite で大量画像生成のコストを設計する — 実測で使い分けを決める
最速・最安の画像モデル Nano Banana 2 Lite を、大量生成の現場でどう組み込むか。1枚あたりコストの測り方、品質モデルとの二層構成、失敗リトライまで含めた実測ベースの設計を書きます。
API / SDK2026-07-05
Nano Banana 2 Lite で大量画像生成のコストを二段に分ける — 一次生成と本番レンダを切り離した設計メモ
Nano Banana 2 Lite を一次生成、標準の Nano Banana 2 を採用後の本番レンダに回す二段構成のコスト設計を、最小のPythonルーターとともにまとめました。
API / SDK2026-07-03
Webhook が本物である保証はどこにもない — Gemini Webhooks 受信エンドポイントの三層防御設計
Gemini Webhooks の受信エンドポイントは公開 URL である以上、偽イベント・リプレイ・二重処理を想定する必要があります。ペイロードを事実として信じず API へ照会し直す構造を軸に、到達検証・重複排除・軽量ハンドラの三層防御を動くコードで示します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →