vertex-ai-api-dev について
vertex-ai-api-devは、Vertex AIと統一されたGen AI SDKでGeminiを開発するためのスキルです。マルチモーダル生成、モデル設定、認証、複数言語の実装例を扱います。
主な機能
- 01テキスト・マルチモーダル生成
- 02関数呼び出しと構造化出力
- 03埋め込みとコンテキストキャッシュ
- 04ライブストリーミングとバッチ予測
- 05複数言語向けGen AI SDKの案内
- 06Vertex AIの認証とモデルの案内
活用シーン
- 01Geminiのテキスト・マルチモーダル機能を実装
- 02スキーマ準拠のJSONや埋め込みを生成
- 03Vertex AIの認証情報とクライアントを設定
- 04高度なAPIワークフローの例を参照
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ google-gemini/ gemini-skills --skill vertex-ai-api-devインストール後、Claude Code で/vertex-ai-api-devを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/advanced_features.mdbounding_box.mdembeddings.mdlive_api.mdmedia_generation.mdmodel_tuning.mdsafety.mdstructured_and_tools.mdtext_and_multimodal.md詳細
Vertex AI の Gemini API
企業でのユースケース向けに構築された Google の最先端 AI モデルに、Vertex AI の Gemini API を使ってアクセスできます。
以下の主要な機能を利用できます。
- テキスト生成 - チャット、補完、要約
- マルチモーダル理解 - 画像、音声、動画、ドキュメントを処理
- 関数呼び出し - モデルから関数を呼び出せるようにします
- 構造化出力 - スキーマに一致する有効な JSON を生成
- コンテキスト キャッシュ - 大規模なコンテキストをキャッシュして効率化
- 埋め込み - セマンティック検索用のテキスト埋め込みを生成
- Live Realtime API - 低レイテンシの音声・動画インタラクションを実現する双方向ストリーミング
- バッチ予測 - 大規模な非同期データセット予測ワークロードに対応
基本方針
- 統合 SDK:必ず Gen AI SDK(Python は
google-genai、JS/TS は@google/genai、Go はgoogle.golang.org/genai、Java はcom.google.genai:google-genai、C# はGoogle.GenAI)を使用してください。 - 旧 SDK:
google-cloud-aiplatform、@google-cloud/vertexai、google-generativeaiは使用しないでください。
SDK
- Python:
pip install google-genaiでgoogle-genaiをインストールします - JavaScript/TypeScript:
npm install @google/genaiで@google/genaiをインストールします - Go:
go get google.golang.org/genaiでgoogle.golang.org/genaiをインストールします - C#/.NET:
dotnet add package Google.GenAIでGoogle.GenAIをインストールします - Java:
-
groupId:
com.google.genai、artifactId:google-genai -
最新バージョンはこちらで確認できます:https://central.sonatype.com/artifact/com.google.genai/google-genai/versions(これを
LAST_VERSIONとします) -
build.gradleにインストールします。implementation("com.google.genai:google-genai:${LAST_VERSION}") -
pom.xmlに Maven の依存関係を追加します。<dependency> <groupId>com.google.genai</groupId> <artifactId>google-genai</artifactId> <version>${LAST_VERSION}</version> </dependency>
-
警告
google-cloud-aiplatform、@google-cloud/vertexai、google-generativeaiなどの旧 SDK は非推奨です。移行ガイドに従って、早急に上記の新しい SDK に移行してください。
認証と設定
クライアントの作成時は、パラメーターをハードコードするよりも環境変数を優先してください。パラメーターを指定せずにクライアントを初期化すると、これらの値が自動的に適用されます。
Application Default Credentials(ADC)
標準的なGoogle Cloud 認証では、次の変数を設定します。
export GOOGLE_CLOUD_PROJECT='your-project-id'
export GOOGLE_CLOUD_LOCATION='global'
export GOOGLE_GENAI_USE_VERTEXAI=true
- デフォルトでは、
location="global"を使用してグローバルエンドポイントにアクセスします。このエンドポイントは、利用可能な容量があるリージョンへ自動的にルーティングします。 - ユーザーから特定のリージョン(例:
us-central1、europe-west4)を明示的に指定された場合は、代わりにGOOGLE_CLOUD_LOCATIONパラメーターでそのリージョンを指定します。必要に応じて、サポート対象リージョンのドキュメントを参照してください。
Vertex AI の Express Mode
API キーを使用してExpress Modeを利用する場合は、次の変数を設定します。
export GOOGLE_API_KEY='your-api-key'
export GOOGLE_GENAI_USE_VERTEXAI=true
初期化
環境変数を適用するには、引数を指定せずにクライアントを初期化します。
from google import genai
client = genai.Client()
または、クライアントの作成時にパラメーターをハードコードすることもできます。
from google import genai
client = genai.Client(vertexai=True, project="your-project-id", location="global")
モデル
- 複雑な推論、コーディング、リサーチには
gemini-3.1-pro-previewを使用します(100万トークン)。 - 高速でバランスの取れたマルチモーダル性能には
gemini-3-flash-previewを使用します(100万トークン)。 - Nano Banana Pro による画像生成と編集には
gemini-3-pro-image-previewを使用します。 - ネイティブ音声を含む Live Realtime API には
gemini-live-2.5-flash-native-audioを使用します。
明示的にリクエストされた場合は、以下のモデルを使用してください。
- Nano Banana による画像生成と編集には
gemini-2.5-flash-imageを使用します。 gemini-2.5-flashを使用します。gemini-2.5-flash-liteを使用します。gemini-2.5-proを使用します。
重要
gemini-2.0-*、gemini-1.5-*、gemini-1.0-*、gemini-proなどのモデルはレガシーであり、非推奨です。上記の新しいモデルを使用してください。知識が古くなっています。 本番環境では、安定版モデル(例:gemini-3-flash)について Vertex AI のドキュメントを参照してください。
クイックスタート
Python
from google import genai
client = genai.Client()
response = client.models.generate_content(
model="gemini-3-flash-preview",
contents="Explain quantum computing"
)
print(response.text)
TypeScript/JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({ vertexai: { project: "your-project-id", location: "global" } });
const response = await ai.models.generateContent({
model: "gemini-3-flash-preview",
contents: "Explain quantum computing"
});
console.log(response.text);
Go
package main
import (
"context"
"fmt"
"log"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
Backend: genai.BackendVertexAI,
Project: "your-project-id",
Location: "global",
})
if err != nil {
log.Fatal(err)
}
resp, err := client.Models.GenerateContent(ctx, "gemini-3-flash-preview", genai.Text("Explain quantum computing"), nil)
if err != nil {
log.Fatal(err)
}
fmt.Println(resp.Text)
}
Java
import com.google.genai.Client;
import com.google.genai.types.GenerateContentResponse;
public class GenerateTextFromTextInput {
public static void main(String[] args) {
Client client = Client.builder().vertexAi(true).project("your-project-id").location("global").build();
GenerateContentResponse response =
client.models.generateContent(
"gemini-3-flash-preview",
"Explain quantum computing",
null);
System.out.println(response.text());
}
}
C#/.NET
using Google.GenAI;
var client = new Client(
project: "your-project-id",
location: "global",
vertexAI: true
);
var response = await client.Models.GenerateContent(
"gemini-3-flash-preview",
"Explain quantum computing"
);
Console.WriteLine(response.Text);
API 仕様とドキュメント(信頼できる情報源)
Vertex AI の API 統合を実装またはデバッグする際は、Google Cloud Vertex AI の公式ドキュメントを参照してください。
- Vertex AI Gemini ドキュメント:https://cloud.google.com/vertex-ai/generative-ai/docs/
- REST API リファレンス:https://cloud.google.com/vertex-ai/generative-ai/docs/reference/rest
Vertex AI の Gen AI SDK は、v1beta1 または v1 の REST API エンドポイントを使用します(例:https://{LOCATION}-aiplatform.googleapis.com/v1beta1/projects/{PROJECT}/locations/{LOCATION}/publishers/google/models/{MODEL}:generateContent)。
ヒント
Developer Knowledge MCP Server を使用する:
search_documentsまたはget_documentツールが利用できる場合は、それらを使って Google Cloud と Vertex AI の公式ドキュメントをコンテキスト内で直接検索・取得してください。最新の API 詳細とコードスニペットを入手するには、この方法が推奨されます。
ワークフローとコードサンプル
追加のコードサンプルや具体的な使用例については、Python Docs Samples リポジトリを参照してください。
ユーザーからの具体的なリクエストに応じて、詳細なコードサンプルと使用パターンについて、以下のリファレンスファイルを参照してください(Python の例)。
- テキストとマルチモーダル:チャット、マルチモーダル入力(画像、動画、音声)、ストリーミング。詳細はreferences/text_and_multimodal.mdを参照してください。
- 埋め込み:セマンティック検索用のテキスト埋め込みを生成します。詳細はreferences/embeddings.mdを参照してください。
- 構造化出力とツール:JSON 生成、Function Calling、検索グラウンディング、コード実行。詳細はreferences/structured_and_tools.mdを参照してください。
- メディア生成:画像生成、画像編集、動画生成。詳細はreferences/media_generation.mdを参照してください。
- バウンディングボックス検出:画像や動画内のオブジェクト検出と位置特定。詳細はreferences/bounding_box.mdを参照してください。
- Live API:音声、ビジョン、テキストのリアルタイム双方向ストリーミング。詳細はreferences/live_api.mdを参照してください。
- 高度な機能:コンテンツキャッシュ、バッチ予測、思考/推論。詳細はreferences/advanced_features.mdを参照してください。
- 安全性:責任ある AI フィルターとしきい値を調整します。詳細はreferences/safety.mdを参照してください。
- モデルのチューニング:教師ありファインチューニングと選好チューニング。詳細はreferences/model_tuning.mdを参照してください。