Vertex AI の DeepSeek モデルは、API としてフルマネージド モデルとサーバーレス モデルを提供します。Vertex AI で DeepSeek モデルを使用するには、Vertex AI API エンドポイントにリクエストを直接送信します。DeepSeek モデルはマネージド API を使用します。インフラストラクチャをプロビジョニングしたり、管理する必要はありません。
レスポンスをストリーミングして、エンドユーザーのレイテンシを軽減できます。ストリーミング レスポンスでは、サーバー送信イベント(SSE)を使用してレスポンスを段階的にストリーミングします。
使用可能な DeepSeek モデル
Vertex AI で使用できる DeepSeek のモデルは次のとおりです。DeepSeek モデルにアクセスするには、Model Garden のモデルカードに移動します。
DeepSeek-V3.1
DeepSeek-V3.1 は、思考モードと非思考モードの両方をサポートするハイブリッド モデルです。以前のバージョンと比較して、このアップグレードでは、ハイブリッド思考モード、ツール呼び出し、思考効率が改善されています。
DeepSeek R1(0528)
DeepSeek R1(0528)は、DeepSeek R1 モデルの最新バージョンです。DeepSeek-R1 と比較して、推論の深さと推論機能が大幅に向上しています。DeepSeek R1(0528)は、クリエイティブな文書作成、一般的な質問応答、編集、要約など、幅広いタスクに優れています。
考慮事項
- 本番環境に対応した安全性を確保するには、DeepSeek R1(0528)を Model Armor と統合します。これにより、LLM のプロンプトとレスポンスがさまざまなセキュリティと安全性のリスクについてスクリーニングされます。
DeepSeek モデルを使用する
curl コマンドを使用すると、次のモデル名を使用して Vertex AI エンドポイントにリクエストを送信できます。
- DeepSeek-V3.1 の場合は、
deepseek-v3.1-maas
を使用します。 - DeepSeek R1(0528)の場合は、
deepseek-r1-0528-maas
を使用します。
始める前に
Vertex AI で DeepSeek モデルを使用するには、次の操作を行う必要があります。Vertex AI を使用するには、Vertex AI API(aiplatform.googleapis.com
)を有効にする必要があります。既存のプロジェクトで Vertex AI API が有効になっている場合は、新しいプロジェクトを作成する代わりに、そのプロジェクトを使用できます。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. - 次のいずれかの Model Garden モデルカードに移動し、[有効にする] をクリックします。
- LOCATION: DeepSeek モデルをサポートするリージョン。
- MODEL: 使用するモデル名。
- ROLE: メッセージに関連付けられたロール。
user
またはassistant
を指定できます。最初のメッセージでは、user
ロールを使用する必要があります。Claude モデルはuser
とassistant
のターンを交互に操作します。最後のメッセージがassistant
ロールを使用する場合、そのメッセージのコンテンツの直後にレスポンス コンテンツが続きます。これを使用して、モデルのレスポンスの一部を制限できます。 - CONTENT:
user
またはassistant
のメッセージの内容(テキストなど)。 - MAX_OUTPUT_TOKENS: レスポンスで生成できるトークンの最大数。1 トークンは約 4 文字です。100 トークンは約 60~80 語に相当します。
レスポンスを短くしたい場合は小さい値を、長くしたい場合は大きい値を指定します。
- STREAM: レスポンスがストリーミングされるかどうかを指定するブール値。レスポンスのストリーミングを行うことで、エンドユーザーが認識するレイテンシを短縮できます。レスポンスをストリーミングする場合は
true
、すべてのレスポンスを一度に戻すにはfalse
に設定します。 - LOCATION: DeepSeek モデルをサポートするリージョン。
- MODEL: 使用するモデル名。
- ROLE: メッセージに関連付けられたロール。
user
またはassistant
を指定できます。最初のメッセージでは、user
ロールを使用する必要があります。Claude モデルはuser
とassistant
のターンを交互に操作します。最後のメッセージがassistant
ロールを使用する場合、そのメッセージのコンテンツの直後にレスポンス コンテンツが続きます。これを使用して、モデルのレスポンスの一部を制限できます。 - CONTENT:
user
またはassistant
のメッセージの内容(テキストなど)。 - MAX_OUTPUT_TOKENS: レスポンスで生成できるトークンの最大数。1 トークンは約 4 文字です。100 トークンは約 60~80 語に相当します。
レスポンスを短くしたい場合は小さい値を、長くしたい場合は大きい値を指定します。
- STREAM: レスポンスがストリーミングされるかどうかを指定するブール値。レスポンスのストリーミングを行うことで、エンドユーザーが認識するレイテンシを短縮できます。レスポンスをストリーミングする場合は
true
、すべてのレスポンスを一度に戻すにはfalse
に設定します。 - QPM: 1000
DeepSeek モデルにストリーミング呼び出しを行う
次のサンプルでは、DeepSeek モデルに対してストリーミング呼び出しを行います。
REST
環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
リクエストの本文(JSON):
{ "model": "deepseek-ai/MODEL", "messages": [ { "role": "ROLE", "content": "CONTENT" } ], "max_tokens": MAX_OUTPUT_TOKENS, "stream": true }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
DeepSeek モデルに非ストリーミング呼び出しを行う
次のサンプルでは、DeepSeek モデルに対して非ストリーミング呼び出しを行います。
REST
環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
リクエストの本文(JSON):
{ "model": "deepseek-ai/MODEL", "messages": [ { "role": "ROLE", "content": "CONTENT" } ], "max_tokens": MAX_OUTPUT_TOKENS, "stream": false }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
DeepSeek モデルで利用可能なリージョンと割り当て
DeepSeek モデルの場合、モデルが使用可能なリージョンごとに割り当てが適用されます。割り当ては、1 分あたりのクエリ数(QPM)で指定されます。
モデル | リージョン | 割り当て | コンテキストの長さ |
---|---|---|---|
DeepSeek-V3.1 | |||
us-west2 |
|
163,840 | |
DeepSeek R1(0528) | |||
us-central1 |
|
163,840 |
Vertex AI の生成 AI の割り当てを引き上げる場合は、 Google Cloud コンソールで割り当ての引き上げをリクエストできます。割り当ての詳細については、割り当てを操作するをご覧ください。