◉GEMINI LABEN
●ARGON — gemini-4-argon が 10/13 に GA。複雑なコーディング・エージェント・数学・科学向けです●DEEP RES — deep-research-pro-preview-12-2025 は 10/23 に停止、残り6日。移行先は deep-research-preview-04-2026●NANO — gemini-nano-banana-2.1 が GA(10/06)。gemini-3.1-flash-image は非推奨で停止日は未発表です●MCP — ツール結果が 8.5万トークンに膨らんだ事例を、ADK で 310 トークンに包んで抑えた報告が出ています●FLASH — gemini-3.7-flash と 3.5-flash は新しい Flash モデルに自動で回されます(10/08)●NEW — クラッシュ報告を毎回ゼロから読ませない — 既知バグ早見表を先に grep し…●ARGON — gemini-4-argon が 10/13 に GA。複雑なコーディング・エージェント・数学・科学向けです●DEEP RES — deep-research-pro-preview-12-2025 は 10/23 に停止、残り6日。移行先は deep-research-preview-04-2026●NANO — gemini-nano-banana-2.1 が GA(10/06)。gemini-3.1-flash-image は非推奨で停止日は未発表です●MCP — ツール結果が 8.5万トークンに膨らんだ事例を、ADK で 310 トークンに包んで抑えた報告が出ています●FLASH — gemini-3.7-flash と 3.5-flash は新しい Flash モデルに自動で回されます(10/08)●NEW — クラッシュ報告を毎回ゼロから読ませない — 既知バグ早見表を先に grep し…
記事一覧/高度な活用
⬡ 高度な活用/2026-03-25上級

Firebase Genkit × Gemini でサーバーレスAIアプリを組む実装ノート

Firebase Genkit と Gemini でサーバーレスAIアプリを組む実装ノートです。Genkit 1.x の現行APIで Flow・エージェント・RAG を実装し、usage をフロー単位で記録して費用を明細化する手順、Dev UI と本番の差で落ちる箇所、コールドスタート対策までをまとめます。

Firebase GenkitGemini91サーバーレスAI10開発

✦ プレミアム記事

Flow を1本デプロイして気づいた「フレームワークの薄さ」の価値

最初に Firebase Genkit を触ったとき、正直なところ「また新しい抽象化層か」という警戒がありました。個人開発で Dolice Labs を回している私にとって、増えるのは覚えることばかりで、得られるものが見合わない道具はむしろ負債になります。

その警戒が解けたのは、挨拶を返すだけの小さな Flow を1本、ローカルの Dev UI で動かし、そのまま Cloud Functions にデプロイできたときでした。入出力のスキーマ、ローカル検証、トレース、デプロイ。これらが同じ書き味の中に収まっている。フレームワークが薄いからこそ、Gemini の呼び出しそのものに集中できる。

本稿は、その最初の一本から RAG とエージェントまでを、私が実際に書いて確かめたコードでたどる実装ノートです。公式ドキュメントの逐条訳ではなく、個人開発で運用するときに詰まる箇所を中心にまとめています。なお Genkit は API の変遷が速い領域です。ここでは 1.x 系の genkit() コンストラクタと zod スキーマを前提にしています。

インストールと初期化 — まず1箇所に集約する

Genkit 本体と Google AI プラグインを入れます。TypeScript で書くのが素直です。

npm install genkit @genkit-ai/googleai
npm install -D typescript tsx @types/node

初期化は1ファイルに集約し、他のモジュールはここから ai を取り込む形にしておくと、モデルの差し替えが一箇所で済みます。

// src/genkit.ts
import { genkit } from "genkit";
import { googleAI } from "@genkit-ai/googleai";
 
// モデルIDは利用したいものに置き換えてください(現行の Flash / Pro 系)
export const ai = genkit({
  plugins: [googleAI({ apiKey: process.env.GOOGLE_API_KEY })],
  model: googleAI.model("gemini-2.5-flash"),
});

apiKey はコードに直書きせず、必ず環境変数から渡します。ローカルでは .env、本番では後述の Secret Manager 経由が安全です。

✦

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

この記事の続きを読む

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

この記事で得られること
✦Genkit 1.x の現行API(genkit コンストラクタと zod スキーマ)で書いた、そのまま動く Flow・Tool・RAG の実装
✦usage をフロー単位で記録して1,000呼び出しあたりの費用を出す集計スクリプトと、入力トークンの裾の潰し方
✦Dev UI では通るのに本番で落ちる4か所の切り分けと、最小インスタンスを置くかどうかの判断基準
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

⬡ 高度な活用2026-09-17
Gemini の色判定が同じ壁紙で入れ替わったのは、モデルではなく渡し方の側でした
同じ壁紙を渡しているのに色名の判定が入れ替わる原因を、書き出し5通りで数えた記録です。色空間を先に決め、閉じた語彙と機械側の基準値で検算するところまでまとめました。
⬡ 高度な活用2026-10-14
PC では直るのに Safari でだけ画像が読み込まれない — AI に診断を頼む前に、手元で揃えておく 4 つの材料
並べ替えのあとで画像が二度と読み込まれない不具合が、iPhone の Safari でだけ起きました。PC のブラウザでは再現しない不具合を Gemini などの AI に診断してもらうとき、先に手元で揃えておく材料と、そのまま使える依頼文をまとめます。
⬡ 高度な活用2026-10-10
家計や健康の相談を履歴に残さない — Gemini の一時チャットと設定を確認する順番
家計の見直しや体調の相談を Gemini に持ちかける前に、一時チャットと「アクティビティ」設定をどの順で確かめればよいかを整理しました。残す話と残さない話を、ご自身で選べるようになるための最初の一歩です。