firebase-ai-logic について
クライアント SDK で Firebase AI Logic をモバイルアプリや Web アプリに導入するための開発スキルです。Gemini の呼び出し、マルチモーダル入力、チャット、ストリーミング、本番環境の安全対策を扱います。
主な機能
- 01Gemini API プロバイダーの設定
- 02テキストとマルチモーダル生成
- 03複数ターンのチャットセッション
- 04ストリーミング応答
- 05JSON 構造化出力
- 06検索グラウンディングとハイブリッド端末内推論
活用シーン
- 01モバイルアプリへの Gemini 機能の追加
- 02画像、音声、動画、PDF の分析
- 03履歴を保持するチャット機能の構築
- 04生成内容の逐次表示
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ firebase/ agent-skills --skill firebase-ai-logicインストール後、Claude Code で/firebase-ai-logicを入力して読み込まれたか確認します。
同梱ファイルreferences/usage_patterns_web.md
詳細
Firebase AI Logic の基本
概要
Firebase AI Logic は Firebase の製品で、クライアント側 SDK を使用して、開発者がモバイルアプリやウェブアプリに生成 AI を追加できるようにします。専用のバックエンドを管理せずに、アプリから Gemini モデルを直接呼び出せます。以前は「Vertex AI for Firebase」として知られていた Firebase AI Logic は、モバイルおよびウェブの開発者向けに Google の AI 統合プラットフォームを進化させたものです。
次の 2 つの Gemini API プロバイダーに対応しています。
- Gemini Developer API:プロトタイピングに最適な無料枠があり、本番環境では従量課金制です。
- Vertex AI Gemini API:大規模な利用に適しており、エンタープライズ向けの本番環境対応が整っています。Blaze プランが必要です。
デフォルトでは Gemini Developer API を使用し、アプリケーションで必要な場合にのみ Vertex AI Gemini API を使用してください。
セットアップと初期化
前提条件
- 始める前に、Node.js 16+ と npm がインストールされていることを確認してください。まだ利用できない場合はインストールしてください。
- 開始前に、ユーザーが構築を希望するプラットフォーム(Android、iOS、Flutter、Web)を確認してください。
- プラットフォームがサポートされていない場合は、Firebase ドキュメントを案内して、アプリケーション向けに AI Logic を設定する方法を確認してもらってください(次のリンクをユーザーに共有してください:https://firebase.google.com/docs/ai-logic/get-started)。
インストール
このライブラリは標準の Firebase Web SDK に含まれています。
npm install -g firebase@latest
firebase ディレクトリ(firebase.json があるディレクトリ)にいる場合、次のコマンドを実行すると、現在選択されているプロジェクトに「current」と表示されます。
npx -y firebase-tools@latest projects:list
現在のプロジェクトに少なくとも 1 つのアプリが関連付けられていることを確認してください。
npx -y firebase-tools@latest apps:list
init コマンドで AI Logic SDK を初期化します。
npx -y firebase-tools@latest init # Choose AI logic
これにより、Firebase コンソールで Gemini Developer API が自動的に有効になります。
詳しくは、Firebase AI Logic のスタートガイドをご覧ください。
主な機能
テキストのみの生成
マルチモーダル(テキスト+画像/音声/動画/PDF入力)
Firebase AI Logic を使用すると、Gemini モデルでアプリから画像ファイルを直接分析できます。これにより、キャプションの作成、画像についての質問への回答、オブジェクトの検出、画像の分類などの機能を実現できます。画像に加えて、MIME タイプを指定してインラインデータとして渡すことで、Gemini は音声、動画、PDF などのメディアも分析できます。20 メガバイトを超えるファイルは、インラインデータとして渡すと HTTP 413 エラーが発生する可能性があるため、Cloud Storage for Firebase に保存し、その URL を Gemini Developer API に渡してください。
チャットセッション(複数ターン)
startChat を使用すると、履歴を自動的に保持できます。
ストリーミング応答
入力中のように、部分的な結果を受信と同時に表示してユーザーエクスペリエンスを向上させるには、generateContent の代わりに generateContentStream を使用すると、結果をより速く表示できます。
Nano Banana で画像を生成する
- ほとんどのユースケースでは Gemini から始め、画像の品質や特定のスタイルが重要な専門的なタスクには Imagen を選択してください。(例:gemini-2.5-flash-image)
- Blaze の従量課金制にアップグレードする必要があります。
組み込みの googleSearch ツールによる検索グラウンディング
サポートされているプラットフォームとフレームワーク
サポートされているプラットフォームとフレームワークには、Android 向けの Kotlin と Java、iOS 向けの Swift、ウェブアプリ向けの JavaScript、Flutter 向けの Dart、Unity 向けの C Sharp が含まれます。
高度な機能
構造化出力(JSON)
応答に特定の JSON スキーマを適用します。
オンデバイス AI(ハイブリッド)
ウェブアプリ向けのハイブリッドなオンデバイス推論では、Firebase Javascript SDK が Gemini Nano の利用可能性を(インストール後に)自動的に確認し、オンデバイスまたはクラウドホスト型のプロンプト実行に切り替えます。Chrome ブラウザーでモデルを使用するには、特定の手順に従って有効化する必要があります。詳しくは、ハイブリッド・オンデバイス推論のドキュメントをご覧ください。
セキュリティと本番環境
App Check
警告
重要な安全要件: AI Logic を安全に使用するには、アプリで App Check を必ず設定する必要があります。これにより、許可されていないクライアントが API の割り当て量を使用したり、バックエンドリソースにアクセスしたりするのを防げます。
設定手順については、reCAPTCHA Enterprise を使用した App Checkをご覧ください。
Remote Config
モデル名(例:gemini-flash-lite-latest)をハードコードする必要はありません。Firebase Remote Config を使用すると、新しいクライアントコードをデプロイせずにモデルのバージョンを動的に更新できます。詳しくは、モデル名をリモートで変更するをご覧ください。
初期化コードの参照先
| 言語、フレームワーク、プラットフォーム | Gemini API プロバイダー | コンテキスト URL |
|---|---|---|
| Web Modular API | Gemini Developer API(Developer API) | firebase://docs/ai-logic/get-started |
ドキュメントまたはユーザーから別のモデルを指定されない限り、常に最新バージョンの Gemini(gemini-flash-latest)を使用してください。gemini-1.5-flash は使用しないでください。