Vertex AI for Firebase SDK を使用して Gemini API を使ってみる


このガイドでは、Vertex AI for Firebase SDK を使用して、アプリから直接 Vertex AI Gemini API の呼び出しを開始する方法について説明します。

前提条件

このガイドは、読者が Flutter を使ったアプリ開発に精通していることを前提としています。

  • 開発環境とウェブアプリが次の要件を満たしていることを確認します。

    • Dart 3.2.0 以降
  • (省略可)サンプルアプリを確認します。

    サンプルアプリをダウンロード

    SDK をすぐに試したり、さまざまなユースケースの完全な実装を確認したりできます。独自のウェブアプリがない場合は、サンプルアプリを使用できます。サンプルアプリを使用するには、Firebase プロジェクトに接続する必要があります。

ステップ 1: Firebase プロジェクトを設定し、アプリを Firebase に接続する

Firebase プロジェクトと Firebase に接続されたアプリがすでにある場合

  1. Firebase コンソールで [Gemini で構築する] ページに移動し、2 番目のカードをクリックして、次のタスクに役立つワークフローを起動します。コンソールに Vertex AI のタブが表示されている場合、これらのタスクは完了しています。

  2. このガイドの次のステップに進んで、SDK をアプリに追加します。

Firebase プロジェクトと Firebase に接続されたアプリがまだない場合


ステップ 2: SDK を追加する

Firebase プロジェクトを設定し、アプリを Firebase に接続したら(前のステップを参照)、アプリに Vertex AI for Firebase SDK を追加できます。

Flutter 用の Vertex AI for Firebase プラグイン(firebase_vertexai)を使用すると、Vertex AI Gemini API にアクセスできます。

  1. Flutter プロジェクト ディレクトリから、次のコマンドを実行してコアプラグインをインストールします。

    flutter pub add firebase_core
    
  2. lib/main.dart ファイルで、Firebase Core プラグインと、以前に生成した構成ファイルをインポートします。

    import 'package:firebase_core/firebase_core.dart';
    import 'firebase_options.dart';
    
  3. また、lib/main.dart ファイルで、構成ファイルによってエクスポートされた DefaultFirebaseOptions オブジェクトを使用して Firebase を初期化します。

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. Flutter アプリケーションを再ビルドします。

    flutter run
    
  5. Flutter プロジェクト ディレクトリで、次のコマンドを実行します。

    flutter pub add firebase_vertexai
  6. 完了したら、Flutter プロジェクトを再ビルドします。

    flutter run
    

ステップ 3: Vertex AI サービスと生成モデルを初期化する

API 呼び出しを行う前に、Vertex AI サービスと生成モデルを初期化する必要があります。

import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';

// Initialize FirebaseApp
await Firebase.initializeApp();
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-1.5-flash-preview-0514');

スタートガイドを完了したら、Gemini モデルを選択する方法と、(必要に応じて)ユースケースとアプリに適したロケーションを選択する方法を学習する。

ステップ 4: Vertex AI Gemini API を呼び出す

アプリを Firebase に接続し、SDK を追加して、Vertex AI サービスと生成モデルの初期化を行ったので、Vertex AI Gemini API を呼び出す準備が整いました。

generateContent() を使用して、テキストのみのプロンプト リクエストからテキストを生成できます。

import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';

await Firebase.initializeApp();
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-1.5-flash-preview-0514');

// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];

// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);

Google アシスタントの機能

Gemini モデルの詳細

さまざまなユースケースで利用可能なモデルと、その割り当てと料金について学習する。

Gemini API のその他の機能を試す

コンテンツの生成を制御する方法

Vertex AI Studio を使用して、プロンプトとモデル構成を試すこともできます。


Vertex AI for Firebase の使用に関するフィードバックを送信する