GEMINI LABEN
MEMORY — Memory Bank の Memory Profiles が GA になりました。静的スキーマの構造化プロファイルにより、セッション中の検索を挟まずに情報へ到達できますSCOPE — プロファイルは取り込み時のスコープごとに分離され、スキーマとスコープの組み合わせに対して単一のプロファイルが維持されますINGEST — IngestEvents API が GA になり、イベントのストリーミング・メモリのリビジョン管理・メタデータの付与が扱えるようになりましたAUDIO — gemini-3.1-flash-tts-preview が streamGenerateContent 経由のストリーミングに対応し、読み上げ開始までの待ち時間が縮みましたCLASSROOM — 8月10日から、既にアクセス権を付与されている K-12 と高等教育の全年齢の学生が Gemini in Classroom を利用できるようになりますSUNSET — 停止日が迫っています。8月17日に画像生成モデル、20日に Grok 4.1 ファミリー、31日に gemini-robotics-er-1.6-preview ですMEMORY — Memory Bank の Memory Profiles が GA になりました。静的スキーマの構造化プロファイルにより、セッション中の検索を挟まずに情報へ到達できますSCOPE — プロファイルは取り込み時のスコープごとに分離され、スキーマとスコープの組み合わせに対して単一のプロファイルが維持されますINGEST — IngestEvents API が GA になり、イベントのストリーミング・メモリのリビジョン管理・メタデータの付与が扱えるようになりましたAUDIO — gemini-3.1-flash-tts-preview が streamGenerateContent 経由のストリーミングに対応し、読み上げ開始までの待ち時間が縮みましたCLASSROOM — 8月10日から、既にアクセス権を付与されている K-12 と高等教育の全年齢の学生が Gemini in Classroom を利用できるようになりますSUNSET — 停止日が迫っています。8月17日に画像生成モデル、20日に Grok 4.1 ファミリー、31日に gemini-robotics-er-1.6-preview です
記事一覧/開発ツール
開発ツール/2026-04-03上級

Next.js 15 App Router × Gemini API フルスタック本番構築

Next.js 15 App RouterとGemini APIを組み合わせたフルスタックAIアプリを本番レベルで構築する完全ガイド。Server Actions、Streaming、RAG、認証・レート制限まで徹底解説します。

nextjs3gemini-api280app-routerserver-actionsstreaming18rag21typescript15production105

プレミアム記事

取り組みの背景:Next.js × Gemini API が最強の組み合わせである理由

Next.js 15 は 2025 年末に安定版がリリースされ、App Router によるサーバーコンポーネント・Server Actions・Partial Prerendering(PPR)が実用段階に達しました。これと Gemini 2.5 Pro の組み合わせは、AI 機能を持つウェブアプリ開発において現在最も生産性の高い選択肢の一つです。

ここで扱うのは単なる "hello world" を超えた 本番運用に耐えうるフルスタック AI アプリ を構築するために必要な知識を体系的に解説します。対象読者は Next.js の基礎を理解しており、Gemini API を本格的なプロダクトに組み込みたい中〜上級者です。

この記事で扱うトピックは以下の通りです。

  • Next.js 15 App Router のアーキテクチャと Gemini API の統合方針
  • Server Components・Server Actions からの Gemini 呼び出しパターン
  • Streaming レスポンスの完全実装(Edge Runtime 対応)
  • RAG(Retrieval-Augmented Generation)パイプラインの構築
  • 認証・レート制限・エラーハンドリングの本番実装
  • Vercel / Cloudflare Workers へのデプロイと環境変数管理
  • コスト最適化とキャッシング戦略

環境準備とプロジェクトセットアップ

Next.js 15 プロジェクトの初期化

npx create-next-app@latest my-gemini-app \
  --typescript \
  --tailwind \
  --app \
  --src-dir \
  --import-alias "@/*"
 
cd my-gemini-app
 
# Gemini API SDK をインストール
npm install @google/generative-ai
# Vercel AI SDK(Streaming 対応)
npm install ai @ai-sdk/google
# 認証(オプション)
npm install next-auth@beta

環境変数の設定

.env.local を作成し、APIキーを設定します。

# .env.local
GEMINI_API_KEY=YOUR_GEMINI_API_KEY
# Vercel AI SDK 用(@ai-sdk/google で自動的に参照される)
GOOGLE_GENERATIVE_AI_API_KEY=YOUR_GEMINI_API_KEY

重要: GEMINI_API_KEY という変数名には NEXT_PUBLIC_ プレフィックスを絶対に付けないでください。クライアントサイドにAPIキーが露出します。すべての Gemini API 呼び出しはサーバーサイド(Server Component / Server Actions / Route Handler)から行います。

Gemini API クライアントの初期化(シングルトンパターン)

// src/lib/gemini.ts
import { GoogleGenerativeAI } from "@google/generative-ai";
 
// Next.js の開発環境でのホットリロード対策(シングルトン)
const globalForGemini = globalThis as unknown as {
  geminiClient: GoogleGenerativeAI | undefined;
};
 
export const geminiClient =
  globalForGemini.geminiClient ??
  new GoogleGenerativeAI(process.env.GEMINI_API_KEY!);
 
if (process.env.NODE_ENV !== "production") {
  globalForGemini.geminiClient = geminiClient;
}
 
// よく使うモデルを取得するヘルパー
export function getModel(modelName = "gemini-2.5-pro") {
  return geminiClient.getGenerativeModel({ model: modelName });
}

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

この記事の続きを読む

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

この記事で得られること
Next.js 15 App Router の Server Components・Server Actions × Gemini API を使った本番品質のアーキテクチャを習得できる
Streaming レスポンス・RAG パイプライン・レート制限の実装パターンを完全なコード付きで理解できる
Vercel / Cloudflare Workers へのデプロイ戦略と API キー管理・コスト最適化の実践手法を学べる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

開発ツール2026-06-15
Firestore × Gemini Embeddings の RAG が静かに劣化する — 埋め込み世代交代に耐える再埋め込み設計
Firestore のネイティブベクトル検索と Gemini Embeddings で組んだ RAG は、埋め込みモデルの世代交代でベクトル空間がずれ、検索品質が静かに落ちます。ドリフトの検知、無停止の再埋め込み移行、取得コストの抑え方を実装で詰めます。
開発ツール2026-03-31
Gemini API × React Native 本番運用ノート — 個人開発アプリで踏んだ落とし穴と設計判断
iOS/Android 両対応の個人開発アプリで Gemini API を React Native/Expo から呼ぶ時に踏んだ落とし穴、AdMob 連携時のモデル振り分け、Cold Start とコスト、AsyncStorage キャッシュの TTL 設計をまとめた運用ノート
開発ツール2026-03-27
Gemini 3.1 Pro × Cloud Run:サーバーレスAI APIの本番構築
Gemini 3.1 Pro を Cloud Run にデプロイし、SSE ストリーミング・オートスケール・コールドスタート最適化・本番監視までを含むサーバーレス AI API の構築手順です。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →