|
Gemini API プロバイダをクリックして、このページでプロバイダ固有のコンテンツとコードを表示します。 |
Google の生成 AI モデルは、特定のリージョンで利用できます。
を使用するリクエストには、モデルにアクセスするためのロケーション
を含める必要があります。Vertex AI Gemini APIFirebase AI Logic は、すべてのリクエストでデフォルトで
us-central1 に設定されます。
ほぼすべての Gemini モデルで、Vertex AI Gemini API は
global ロケーションをサポートしています。つまり、リクエストはグローバル プール内の任意の利用可能な
モデルによって処理されます。リクエストに global ロケーションを使用すると、モデルの容量制限に達するのを防ぎ、「サービス過負荷」(503)エラーを減らすことができます。また、モデルによっては、global ロケーションの使用が必須になる場合があります。
ロケーションを明示的に設定する必要があるのはいつですか?
Firebase AI Logic は、すべての
リクエストでデフォルトで us-central1 に設定されるため、別のロケーションを使用する必要がある場合は、コード内で Vertex AI Gemini API バックエンド サービスの初期化時にロケーションを
明示的に指定する必要があります。
モデルによっては、ロケーションを明示的に設定することが必須になる場合があります。 リクエストが、モデルが利用できないロケーションのモデルにアクセスしようとすると、モデルが見つからないか、プロジェクトにアクセス権がないことを示す 404 エラーが返されます。 was not found or your project does not have access to it
Gemini プレビュー版モデル: ロケーション を
globalに明示的に設定する必要があります(Live API プレビュー版モデルを除く)。Gemini 3.x モデル: Firebase AI Logic を使用する場合は、ロケーション を
globalに明示的に設定する必要があります。 Firebase AI Logic は、usロケーションとeuロケーションをまだサポートしていません。Gemini 2.5 モデル: ロケーションを明示的に設定することは 省略可能ですが、指定することをおすすめします。ロケーションを指定しない場合、デフォルトは
us-central1です。Gemini Live API モデル: ロケーション を明示的に設定することは省略可能ですが、指定することをおすすめします。ロケーションを指定しない場合、デフォルトは
us-central1です。globalロケーションはサポートされていないことに注意してください。
利用可能なすべてのロケーションのリストについては、この ページの後半をご覧ください。
一般的な事実とベスト プラクティス
ロケーションに関する重要な事実とベスト プラクティスをいくつかご紹介します。
容量制限は、モデルごと、リージョンごと 、分ごとに設定されます。
容量制限に予期せず達しないようにするには、ロケーションを
globalに設定することを検討してください(モデルがglobalロケーションをサポートしている場合)。Firebase Remote Config を使用して、モデルにアクセスするロケーションを制御することを検討してください。これにより、アプリの新しいバージョンをリリースせずにロケーションを変更できます。
ユースケースでロケーションを
globalに設定できない場合や、サポートされていない場合は、モデルにアクセスする場所を明示的に分散することを検討してください。たとえば、 Firebase Remote Config を使用して、エンドユーザーのロケーションに基づいてロケーションを設定できます。 Firebase Remote Config
コードサンプル
Firebase AI Logic は、すべての
リクエストでデフォルトで us-central1 に設定されます。別のロケーションを使用する必要がある場合は、コード内でバックエンド サービスの初期化時にロケーションを
明示的に指定する必要があります。Vertex AI Gemini API
これらのサンプルでは Gemini モデルへのアクセスを示していますが、 Imagen モデルにアクセスするときにロケーションを指定することもできます。
LOCATION は、このページの後半にある 利用可能なロケーション のリストから、ロケーション コード(global や
europe-west4 など)に置き換えます。
Swift
// ...
// Initialize the Vertex AI Gemini API backend service
// Specify a supported location for where you want to access the model
let ai = FirebaseAI.firebaseAI(backend: .vertexAI(location: "LOCATION"))
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "MODEL_NAME")
// ...
Kotlin
// ...
// Initialize the Vertex AI Gemini API backend service
// Specify a supported location for where you want to access the model
val model = Firebase.ai(backend = GenerativeBackend.vertexAI(location = "LOCATION"))
.generativeModel("MODEL_NAME")
// ...
Java
// ...
// Initialize the Vertex AI Gemini API backend service
// Specify a supported location for where you want to access the model
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.vertexAI("LOCATION"))
.generativeModel("MODEL_NAME");
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
// ...
Web
// ...
// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);
// Initialize the Vertex AI Gemini API backend service
// Specify a supported location for where you want to access the model
const ai = getAI(firebaseApp, { backend: new VertexAIBackend('LOCATION') });
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: 'MODEL_NAME' });
// ...
Dart
// ...
// Initialize the Vertex AI Gemini API backend service
// Specify a supported location for where you want to access the model
final ai = await FirebaseAI.vertexAI(location: 'LOCATION');
// Create a `GenerativeModel` instance with a model that supports your use case
final model = ai.generativeModel(model: 'MODEL_NAME');
// ...
Unity
// ...
// Initialize the Vertex AI Gemini API backend service
// Specify a supported location for where you want to access the model
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.VertexAI(location: "LOCATION"));
// Create a `GenerativeModel` instance with a model that supports your use case
var model = ai.GetGenerativeModel(modelName: "MODEL_NAME");
// ...
モデルが利用できないロケーションを指定すると、モデルが見つからないか、プロジェクトにアクセス権がないことを示す 404 エラーが返されます。 was not found or your project does not have access to it
利用できるロケーション
Google Cloud では リージョンを使用します。 Google Cloud は、生成 AI のすべての一般提供機能について、お客様が指定したリージョンにのみ顧客データを保存します。Vertex AI
Vertex AI の生成 AI は、次のリージョンで利用できます。 一部のモデルや特定のバージョンは、すべてのロケーションで利用できるとは限りません。 (ロケーションの可用性の詳細については、 Google Cloud ドキュメントをご覧ください)。
次の点にご注意ください。
Firebase AI Logic のデフォルトのロケーションは
us-central1です。すべての Gemini プレビュー版 モデル(Live API モデルを除く)でサポートされているロケーションは
globalのみです。Firebase AI Logic を使用して Gemini 3.x モデルにアクセスする場合、サポートされているロケーションは のみ です。
globalFirebase AI Logic は、usロケーションとeuロケーションをまだサポートしていません。すべての Live API モデルとすべての Imagen モデルで、
globalロケーションはサポートされていません。
グローバル
global
米国
- オハイオ州コロンバス(
us-east5) - テキサス州ダラス(
us-south1) - アイオワ(
us-central1) - ラスベガス、ネバダ州(
us-west4) - モンクスコーナー、サウスカロライナ州(
us-east1) - 北バージニア(
us-east4) - オレゴン(
us-west1)
カナダ
- モントリオール(
northamerica-northeast1)
南アメリカ
- サンパウロ、ブラジル(
southamerica-east1)
ヨーロッパ
- ベルギー(
europe-west1) - フィンランド(
europe-north1) - フランクフルト、ドイツ(
europe-west3) - ロンドン、イギリス(
europe-west2) - マドリード、スペイン(
europe-southwest1) - ミラン、イタリア(
europe-west8) - オランダ(
europe-west4) - パリ、フランス(
europe-west9) - ワルシャワ、ポーランド(
europe-central2) - チューリッヒ、スイス(
europe-west6)
アジア太平洋
- 彰化県、台湾(
asia-east1) - 香港、中国(
asia-east2) - ムンバイ、インド(
asia-south1) - ソウル、韓国(
asia-northeast3) - シンガポール(
asia-southeast1) - シドニー、オーストラリア(
australia-southeast1) - 東京、日本(
asia-northeast1)
中東
- ダンマーム、サウジアラビア(
me-central2) - ドーハ、カタール(
me-central1) - テルアビブ、イスラエル(
me-west1)