このガイドでは、選択したプラットフォームの Vertex AI in Firebase SDK を使用して、アプリから直接 Vertex AI Gemini API を呼び出す方法について説明します。
前提条件
このガイドは、JavaScript を使用したウェブアプリ開発に精通していることを前提としています。このガイドはフレームワークに依存していません。
開発環境とウェブアプリが次の要件を満たしていることを確認します。
- (省略可)Node.js
- 最新のウェブブラウザ
(省略可)サンプルアプリを確認する。
SDK を簡単に試したり、さまざまなユースケースの実装を確認したり、独自のウェブアプリがない場合はサンプルアプリを使用したりできます。サンプルアプリを使用するには、Firebase プロジェクトに接続する必要があります。
ステップ 1: Firebase プロジェクトを設定してアプリを Firebase に接続する
Firebase プロジェクトと Firebase に接続されたアプリがすでにある場合
Firebase コンソールで、[Gemini を使用した構築] ページに移動します。
[Vertex AI in Firebase] カードをクリックして、次のタスクを完了するためのワークフローを開始します。
プロジェクトをアップグレードして、従量課金制の Blaze のお支払いプランを使用します。
プロジェクトで必要な API(Vertex AI API と Vertex AI in Firebase API)を有効にします。
このガイドの次のステップに進んで、SDK をアプリに追加します。
Firebase プロジェクトと Firebase に接続されたアプリがまだない場合
ステップ 2: SDK を追加する
Firebase プロジェクトが設定され、アプリが Firebase に接続されている(前の手順を参照)ので、Vertex AI in Firebase SDK をアプリに追加できます。
Vertex AI in Firebase ライブラリは Vertex AI Gemini API へのアクセスを提供します。このライブラリは、Firebase JavaScript SDK for Web の一部として含まれています。
npm を使用して Firebase JS SDK for Web をインストールします。
npm install firebase
アプリで Firebase を初期化します。
import { initializeApp } from "firebase/app"; // TODO(developer) Replace the following with your app's Firebase configuration // See: https://firebase.google.com/docs/web/learn-more#config-object const firebaseConfig = { // ... }; // Initialize FirebaseApp const firebaseApp = initializeApp(firebaseConfig);
ステップ 3: Vertex AI サービスと生成モデルを初期化する
API 呼び出しを行う前に、Vertex AI サービスと生成モデルを初期化する必要があります。
import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
// ...
};
// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);
// Initialize the Vertex AI service
const vertexAI = getVertexAI(firebaseApp);
// Initialize the generative model with a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
const model = getGenerativeModel(vertexAI, { model: "gemini-1.5-flash" });
スタートガイドを読み終えたら、ユースケースとアプリに適した Gemini モデルと(必要に応じて)ロケーションを選択する方法を学びます。
ステップ 4: Vertex AI Gemini API を呼び出す
アプリを Firebase に接続し、SDK を追加して、Vertex AI サービスと生成モデルを初期化したので、Vertex AI Gemini API を呼び出す準備ができました。
generateContent()
を使用すると、テキストのみのプロンプト リクエストからテキストを生成できます。
import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
// ...
};
// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);
// Initialize the Vertex AI service
const vertexAI = getVertexAI(firebaseApp);
// Initialize the generative model with a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
const model = getGenerativeModel(vertexAI, { model: "gemini-1.5-flash" });
// Wrap in an async function so you can use await
async function run() {
// Provide a prompt that contains text
const prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
const result = await model.generateContent(prompt);
const response = result.response;
const text = response.text();
console.log(text);
}
run();
Google アシスタントの機能
Gemini モデルの詳細
さまざまなユースケースで使用できるモデルと、その割り当てと料金について学びます。
Gemini API のその他の機能を試す
- レスポンスのストリーミング方法など、テキストのみのプロンプトからテキストを生成する方法について学習する。
- マルチモーダル プロンプト(テキスト、画像、PDF、動画、音声など)からテキストを生成します。
- マルチターンの会話(チャット)を構築します。
- テキストとマルチモーダル プロンプトの両方から構造化出力(JSON など)を生成します。
- 関数呼び出しを使用して、生成モデルを外部システムと情報に接続します。
コンテンツ生成を制御する方法
- プロンプトの設計を理解する。ベスト プラクティス、戦略、プロンプトの例などをご覧ください。
- 温度や最大出力トークンなどのモデル パラメータを構成します。
- 安全性設定を使用すると、有害と見なされる可能性のある回答が生成される可能性を調整できます。
Vertex AI in Firebase の使用感に関するフィードバックを送信する