このガイドでは、選択したプラットフォームの Vertex AI in Firebase SDK を使用して、アプリから直接 Vertex AI Gemini API を呼び出す方法について説明します。
前提条件
このガイドは、Xcode を使用して Apple プラットフォーム(iOS など)向けのアプリを開発することに精通していることを前提としています。
開発環境と Apple プラットフォーム アプリが次の要件を満たしていることを確認します。
- Xcode 15.0 以降
- アプリのターゲットは iOS 15 以降または macOS 12 以降に設定する必要があります。
(省略可)サンプルアプリを確認する。
SDK を簡単に試したり、さまざまなユースケースの完全な実装を確認したり、独自の Apple プラットフォーム アプリがない場合はサンプルアプリを使用したりできます。サンプルアプリを使用するには、サンプルアプリを 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 をアプリに追加できます。
Swift Package Manager を使用して Firebase の依存関係のインストールと管理を行います。
Vertex AI in Firebase ライブラリは Vertex AI Gemini API へのアクセスを提供します。このライブラリは、Apple プラットフォーム用の Firebase SDK(firebase-ios-sdk
)の一部として含まれています。
Xcode でアプリのプロジェクトを開いたまま、[File] > [Add Packages] の順に移動します。
プロンプトが表示されたら、Firebase Apple プラットフォーム SDK リポジトリを追加します。
https://github.com/firebase/firebase-ios-sdk
最新の SDK バージョンを選択します。
FirebaseVertexAI
ライブラリを選択します。上記の作業が完了すると、Xcode は依存関係の解決とバックグラウンドでのダウンロードを自動的に開始します。
ステップ 3: Vertex AI サービスと生成モデルを初期化する
API 呼び出しを行う前に、Vertex AI サービスと生成モデルを初期化する必要があります。
FirebaseVertexAI
モジュールをインポートします。import FirebaseVertexAI
Vertex AI サービスと生成モデルを初期化します。
import FirebaseVertexAI // Initialize the Vertex AI service let vertex = VertexAI.vertexAI() // 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 let model = vertex.generativeModel(modelName: "gemini-1.5-flash")
スタートガイドを読み終えたら、ユースケースとアプリに適した Gemini モデルと(必要に応じて)ロケーションを選択する方法を学びます。
ステップ 4: Vertex AI Gemini API を呼び出す
アプリを Firebase に接続し、SDK を追加して、Vertex AI サービスと生成モデルを初期化したので、Vertex AI Gemini API を呼び出す準備ができました。
generateContent()
を使用すると、テキストのみのプロンプト リクエストからテキストを生成できます。
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// 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
let model = vertex.generativeModel(modelName: "gemini-1.5-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")
Google アシスタントの機能
Gemini モデルの詳細
さまざまなユースケースで使用可能なモデルと、その割り当てと料金について学びます。
Gemini API の他の機能を試す
- レスポンスのストリーミング方法など、テキストのみのプロンプトからテキストを生成する方法について学習する。
- マルチモーダル プロンプト(テキスト、画像、PDF、動画、音声など)からテキストを生成します。
- マルチターンの会話(チャット)を構築します。
- テキストとマルチモーダル プロンプトの両方から構造化出力(JSON など)を生成します。
- 関数呼び出しを使用して、生成モデルを外部システムと情報に接続します。
コンテンツ生成を制御する方法
- プロンプトの設計を理解する。ベスト プラクティス、戦略、プロンプトの例などをご覧ください。
- 温度や最大出力トークンなどのモデル パラメータを構成します。
- 安全性設定を使用すると、有害と見なされる可能性のある回答が生成される可能性を調整できます。
Vertex AI in Firebase の使用感に関するフィードバックを送信する