Gemini 機能の「使われ方」を測る — 受け入れ率・再生成率・編集距離で見る製品計測の設計
トークン消費やエラー率だけでは、Gemini で作った機能がユーザーに受け入れられているかは分かりません。生成のライフサイクルを5つのイベントに分解し、受け入れ率・再生成率・編集距離を Swift と BigQuery で計測してプロンプト改善につなげた設計と実測値をまとめました。
Gemini の画像生成 preview モデルが 6月25日に停止します — GA 版への移行で確認したコード差分と検証手順
6月25日に停止する gemini-3.1-flash-image-preview / gemini-3-pro-image-preview から GA 版へ移行した作業記録です。モデルIDの確認手順、Python のコード差分、停止前にしかできない回帰チェック、切り替え順序まで実例で整理しました。
Gemini Interactions API の outputs が使えなくなったら — 6月6日廃止の旧スキーマから steps へ移行する手順
2026年6月6日、Gemini Interactions API のレガシー outputs スキーマが削除されました。AttributeError・無言の空応答・履歴の400エラーという症状別に、steps と response_format への書き換え手順を整理します。
Gemini API の空応答を finish_reason から逆引きする — 診断フロー・再試行分類・監視の実務
response.text が空になる問題は candidates・prompt_feedback・finish_reason の3層で診断できます。思考トークンによる出力枯渇の検出、再試行可否の分類器、空応答率の監視まで、本番で運用している実装をまとめました。
Bun と Hono で Gemini API の軽量バックエンドを組む — 個人開発の小さなツールを自分の手に取り戻す実装メモ
Node と Express で書いた Gemini バックエンドが、依存関係とビルド時間で重くなっていませんか。Bun と Hono に載せ替えて、ストリーミング・レート制限・コスト上限・セルフホストまでを一つの軽い実行環境にまとめた実装と判断軸を、現場で踏んだ落とし穴とあわせて整理します。
Firebase AI Logic で iOS から Gemini を呼ぶと 403 になる原因と対処
Firebase AI Logic(旧 Vertex AI in Firebase)で iOS アプリから Gemini を呼び出すと 403 PERMISSION_DENIED が返る問題。App Check の強制適用・API 未有効化・Blaze 未設定の3つの原因を切り分けて解決する手順を、実機検証の経験から整理します。
App Store のプロモーションテキストを Gemini で週次更新した1ヶ月の所感
App Store のプロモーションテキスト(説明文の上に出る170文字)を、Gemini API で週次に書き直す小さな運用を1ヶ月続けた実体験を整理します。審査不要で差し替えられる枠をどう使い回したか、AI に任せた所と人間が必ず触る所、効きの有無を淡々と共有します。
Gemini 2.5/3 で本文が空なのに finish_reason が MAX_TOKENS になるときの原因と対処
プロンプトはほんの数行なのに、maxOutputTokens を絞った gemini-2.5-flash が空文字を返し finish_reason が MAX_TOKENS になる — 犯人は思考トークンです。原因と3通りの対処を実装コードで整理します。
アプリ説明文のローカライズで Gemini 2.5 Flash と Flash-Lite を使い分けた所感
壁紙アプリの説明文を多言語へ展開する作業で、Gemini 2.5 Flash と Flash-Lite を同じ素材に通して比べた運用ログです。コスト差、崩れる場面、ロケールごとの使い分けの落とし所まで、現場でつまずいた点を淡々と記録しました。
Gemini を組み込んだ機能の採算を、機能単位で見る設計 — 残す・直す・畳むを判断するために
Gemini API のコストはアカウント単位では見えても、機能単位の採算までは見えてきません。リクエストに機能タグを付けてコスト台帳を作り、AdMob や課金の収益シグナルと突き合わせて貢献利益を算出し、残す・直す・畳むを判断する設計を、実際に運用しているコードとともにまとめました。
Gemini APIで「Unsupported MIME type」エラーが出るときの原因と対処
画像や音声をGemini APIに渡したときに発生する『Unsupported MIME type』エラーを、MIMEタイプの綴り間違い・octet-stream問題・非対応フォーマットの3つの観点から切り分けて、確実に動くコードで解決します。
Gemini 2.5 Flash で App Store のキーワード欄を多言語最適化した1ヶ月の所感
App Store Connect の100文字キーワード欄を、40本の壁紙アプリ×複数ロケールで Gemini 2.5 Flash に下書きさせた1ヶ月の運用ログです。CJK のバイト数問題、タイトル重複の排除、禁止語の落とし穴まで、現場でつまずいた点を淡々と記録します。