AI21 Labs モデル

Vertex AI の AI21 Labs モデルは、API としてフルマネージド モデルとサーバーレス モデルを提供します。Vertex AI で AI21 Labs モデルを使用するには、Vertex AI API エンドポイントにリクエストを直接送信します。AI21 Labs モデルはマネージド API を使用します。インフラストラクチャをプロビジョニングしたり、管理する必要はありません。

レスポンスをストリーミングして、エンドユーザーのレイテンシを軽減できます。ストリーミング レスポンスでは、サーバー送信イベント(SSE)を使用してレスポンスを段階的にストリーミングします。

AI21 Labs モデルは従量課金制です。従量課金制の料金については、Vertex AI の料金ページで AI21 Labs モデルの料金をご覧ください。

利用可能な AI21 Labs モデル

Vertex AI で使用できる AI21 Labs のモデルは次のとおりです。AI21 Labs モデルにアクセスするには、Model Garden のモデルカードに移動します。

Jamba 1.5 Mini

AI21 Labs の Jamba 1.5 Mini は、Mamba アーキテクチャと Transformer アーキテクチャを活用するハイブリッド アーキテクチャから構築された小型の基礎モデルで、競争力のある価格で優れた品質を実現します。

Jamba 1.5 Mini は、SSM-Transformer ハイブリッド アーキテクチャと 256,000 のコンテキスト ウィンドウにより、企業におけるさまざまなテキスト生成とテキスト理解のユースケースを効率的に解決します。

Jamba 1.5 Mini は、データ量の多いタスクを処理するエンタープライズ ワークフローや、大量の情報を処理して正確で詳細な回答を生成できるモデルを必要とするタスク(長いドキュメントの要約や、組織のナレッジベースでの質問への回答など)に最適です。Jamba 1.5 Mini は、品質、スループット、低コストのバランスが取れています。

Jamba 1.5 Mini モデルカードに移動

Jamba 1.5 Large

AI21 Labs の Jamba 1.5 Large は、Mamba アーキテクチャと Transformer アーキテクチャを活用するハイブリッド アーキテクチャから構築された基盤モデルで、競争力のある価格で優れた品質を実現します。

SSM-Transformer ハイブリッド アーキテクチャと 256,000 のコンテキスト ウィンドウを備えた Jamba 1.5 Large は、企業におけるさまざまなテキスト生成とテキスト理解のユースケースを効率的に解決します。Jamba 1.5 Large には 940 億個のアクティブ パラメータと 3,980 億個の合計パラメータがあり、高精度のレスポンスを提供します。

Jamba 1.5 Large は、データ量の多いタスクを処理するエンタープライズ ワークフローや、大量の情報を処理して正確で詳細な回答を生成できるモデルを必要とするタスク(長いドキュメントの要約や、組織のナレッジベースでの質問への回答など)に最適です。Jamba 1.5 Large は、同サイズクラスの他のモデルと比べて優れた品質のレスポンスと高いスループット、競争力のある価格を実現するように設計されています。

Jamba 1.5 Large モデルカードに移動

AI21 Labs モデルを使用する

AI21 Labs のモデルを使用するリクエストを送信する場合は、次のモデル名を使用します。

  • Jamba 1.5 Mini の場合は jamba-1.5-mini@001 を使用します。
  • Jamba 1.5 Large の場合は、jamba-1.5-large@001 を使用します。

モデル バージョンの違いが考えられるため、@ 記号で始まる接尾辞を含むモデル バージョンを使用することをおすすめします。モデルのバージョンを指定しないと、常に最新バージョンが使用されます。モデルのバージョンが変更されたときに、ワークフローに影響が及ぶ可能性があります。

始める前に

Vertex AI で AI21 Labs モデルを使用するには、次の操作を行う必要があります。Vertex AI を使用するには、Vertex AI API(aiplatform.googleapis.com)を有効にする必要があります。既存のプロジェクトで Vertex AI API が有効になっている場合は、新しいプロジェクトを作成する代わりに、そのプロジェクトを使用できます。

パートナー モデルを有効にして使用するために必要な権限があることを確認します。詳細については、必要な権限を付与するをご覧ください。

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI API.

    Enable the API

  8. 次のいずれかの Model Garden モデルカードに移動し、[有効にする] をクリックします。

AI21 Labs モデルにストリーミング呼び出しを行う

次のサンプルでは、AI21 Labs モデルに対してストリーミング呼び出しを行います。

REST

環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • LOCATION: AI21 Labs モデルをサポートするリージョン。
  • MODEL: 使用するモデル名。リクエスト本文で、@ モデルのバージョン番号を除外します。
  • ROLE: メッセージに関連付けられたロール。user または assistant を指定できます。最初のメッセージでは、user ロールを使用する必要があります。Claude モデルは userassistant のターンを交互に操作します。最後のメッセージが assistant ロールを使用する場合、そのメッセージのコンテンツの直後にレスポンス コンテンツが続きます。これを使用して、モデルのレスポンスの一部を制限できます。
  • STREAM: レスポンスがストリーミングされるかどうかを指定するブール値。レスポンスのストリーミングを行うことで、エンドユーザーが認識するレイテンシを短縮できます。レスポンスをストリーミングする場合は true、すべてのレスポンスを一度に戻すには false に設定します。
  • CONTENT: user または assistant のメッセージの内容(テキストなど)。
  • MAX_OUTPUT_TOKENS: レスポンスで生成できるトークンの最大数。トークンは約 3.5 文字です。100 トークンは約 60~80 語に相当します。

    レスポンスを短くしたい場合は小さい値を、長くしたい場合は大きい値を指定します。

HTTP メソッドと URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/ai21/models/MODEL:streamRawPredict

リクエストの本文(JSON):

{
  "model": MODEL,
  "messages": [
   {
    "role": "ROLE",
    "content": "CONTENT"
   }],
  "max_tokens": MAX_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/publishers/ai21/models/MODEL:streamRawPredict"

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/publishers/ai21/models/MODEL:streamRawPredict" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

AI21 Labs モデルに非ストリーミング呼び出しを行う

次のサンプルでは、AI21 Labs モデルへの非ストリーミング呼び出しを行います。

REST

環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • LOCATION: AI21 Labs モデルをサポートするリージョン。
  • MODEL: 使用するモデル名。リクエスト本文で、@ モデルのバージョン番号を除外します。
  • ROLE: メッセージに関連付けられたロール。user または assistant を指定できます。最初のメッセージでは、user ロールを使用する必要があります。Claude モデルは userassistant のターンを交互に操作します。最後のメッセージが assistant ロールを使用する場合、そのメッセージのコンテンツの直後にレスポンス コンテンツが続きます。これを使用して、モデルのレスポンスの一部を制限できます。
  • STREAM: レスポンスがストリーミングされるかどうかを指定するブール値。レスポンスのストリーミングを行うことで、エンドユーザーが認識するレイテンシを短縮できます。レスポンスをストリーミングする場合は true、すべてのレスポンスを一度に戻すには false に設定します。
  • CONTENT: user または assistant のメッセージの内容(テキストなど)。
  • MAX_OUTPUT_TOKENS: レスポンスで生成できるトークンの最大数。トークンは約 3.5 文字です。100 トークンは約 60~80 語に相当します。

    レスポンスを短くしたい場合は小さい値を、長くしたい場合は大きい値を指定します。

HTTP メソッドと URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/mistralai/models/MODEL:rawPredict

リクエストの本文(JSON):

{
  "model": MODEL,
  "messages": [
   {
    "role": "ROLE",
    "content": "CONTENT"
   }],
  "max_tokens": MAX_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/publishers/mistralai/models/MODEL:rawPredict"

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/publishers/mistralai/models/MODEL:rawPredict" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

AI21 Labs モデルで利用可能なリージョンと割り当て

AI21 Labs モデルの場合、モデルが使用可能なリージョンごとに割り当てが適用されます。割り当ては、1 分あたりのクエリ数(QPM)と 1 分あたりのトークン数(TPM)で指定されます。TPM には、入力トークンと出力トークンの両方が含まれます。

次の表に、各 AI21 Labs モデルのサポートされているリージョン、デフォルトの割り当て、最大コンテキスト長を示します。

Jamba 1.5 Mini

リージョン 割り当てシステム サポートされているコンテキストの長さ
us-central1 50 QPM、60,000 TPM 256,000 トークン
europe-west4 50 QPM、60,000 TPM 256,000 トークン

Jamba 1.5 Large

リージョン 割り当てシステム サポートされているコンテキストの長さ
us-central1 20 QPM、20,000 TPM 256,000 トークン

Vertex AI の生成 AI の割り当てを引き上げる場合は、Google Cloud コンソールから割り当ての増加をリクエストできます。割り当ての詳細については、割り当てを操作するをご覧ください。