Google Cloud モデル ツリーからMongoDBモデルのVoyage AIを検索して配置できます
モデル ガーデンは、MongoDBモデルごとに Voyage AIのライセンスを管理し、オンデマンドハードウェアまたは既存のCompute Engineの予約を使用した配置オプションを提供します。
Voyage AI by MongoDB modelsは自己配置型の提携するモデルであるため、モデルの使用量と Vertex AIインフラストラクチャの消費量の両方を支払うことを意味します。Vertex AI が配置を処理し、エンドポイント マネジメント機能を提供します。
利用可能なモデル
配置できるモデルを確認するには、Google Cloud モデル 結果で「Voyage」を検索します。
Voyage AIモデルの詳細については、「 モデルの概要 」を参照してください。
価格
Google Cloud モデル ツリーのMongoDBモデルによるVoyage AIの価格には、次のものが含まれます。
モデル使用料金: 時間単位で請求される、Voyage AIモデルコンテナの使用コスト。使用料金は、特定のモデルと配置用に選択したハードウェア構成によって異なります。詳細な料金情報については、Google Cloud Marketplace のモデルのリスト ページの「価格」セクションを参照してください。
Google Cloud 基礎のインスタンス in your region: 基礎の Google Cloud GPUインスタンスのコスト(リージョン固有の Nvidia L4、A100、H100 など)は毎月請求され、月額料金は請求されます。 vCPU。詳しくは、「 Google Cloud コンピュート エンジンの料金 」を参照してください。
すべての請求料金は、Google Cloud の請求書の Vertex AIの使用として表示されます。
特定のVoyage AIモデルの価格を表示するには:
モデル フィールドにGo。
Quotas
Voyage AIモデルを配置すると、割り当ての対象となる Vertex AIリソースが消費されます。Google Cloud コンソールの IAM ページの [Quotas] セクションで割り当てを表示および管理できます。詳しくは、「プロジェクトの割り当てを表示する」を参照してください。同じページで、現在の割り当てを右クリックし、[Edit quota] をクリックして、必要に応じて割り当てを増やすためのリクエストを提出できます。
前提条件
Google Cloud Vertex AIを通じてMongoDBモデルのVoyage AIの使用を開始するには、次の手順を実行する必要があります。
Google Cloudプロジェクトと開発環境を設定します。詳しくは、プロジェクトと開発環境を設定するを参照してください。
Vertex AI API を有効にします。手順については、設定を参照してください。
ハードウェア構成
モデル ラグの各モデルには、推奨ハードウェア構成が示されています。各 Voyage モデルの推奨ハードウェア仕様については、Vertex AI 用の Google Cloud Model Garden を参照してください。
例、voyage-4モデルでは、Vertex AIモデル グループが配置について提案する次の推奨インスタンスを使用します。これらの推奨事項は変更される可能性があるため、特定の Voyage AIモデルの公式 Google Cloud Platform ページを参照して、推奨ハードウェア を確認することをお勧めします。
A2 インスタンス、A
a2-highgpu-1gやa2-ultragpu-1gなどの A100 CPU がデフォルトの選択になります。より高いパフォーマンスのニーズには、H100 GPU を搭載した
a3-highgpu-1gなどの A3 インスタンスをお勧めします。
サポートされているリージョン
モデル データベースには、各Voyage AIモデルでサポートされているリージョンが一覧表示されます。モデルの別のリージョンでサポートが必要な場合は、MongoDBサポートにお問い合わせください。
ベストプラクティスと制限事項
エンドポイントとなる接続されたデバイス タイプ: すべてのVoyage AIモデルには専用のパブリック エンドポイント タイプが必要です。詳しくは、エンドポイントとなる接続されたデバイスの種類を選択する を参照してください。
input_type: クエリとドキュメントの理解:
input_typeパラメーターは、検索タスクの埋め込みを最適化します。検索クエリには"query"を使用し、検索されるコンテンツには"document"を使用します。この最適化により、検索の精度が向上します。input_typeパラメータの詳細については、埋め込みと再ランク付けAPI の概要 を参照してください。異なる出力サイズを使用する: Voyage 4 モデルは、複数の出力ディメンション をサポートしています。256、512、1024(デフォルト)、2048単位が小さい場合、ストレージとコンピューティングのコストが削減されますが、単位が大きいと精度が向上する可能性があります。精度要件とリソース制約の最もバランスが取れたディメンションを選択します。
Voyage AIモデルの特定
モデル ガーデンでMongoDBのVoyage AIモデルを見つけるには:
Voyage モデルを検索します。
Search Modelsフィールドに「Voyage」と入力すると、 MongoDBモデル別のVoyage AIのリストが表示されます。
注意
Google Cloud Marketplace には、マーケットプレイス全体と Vertex AIモデル 照合サイト内に 1 つの検索ボックスがあります。MongoDBモデルによるVoyage AIを検索するには、 Vertex AIモデル 場 サイトの 検索ボックスを使用します。
または、Model Garden > Model Collections > Partner Models を通じて Voyage AIモデルに移動し、ここにリストされている任意の Voyage AI モデルを選択することもできます。
また、Task-specific solutions まで下にスクロールすると、そのまま使用したり、ニーズに合わせてカスタマイズしたりできる Voyage AIモデルを見つけることができます。
Vertex AIでのVoyage AIモデルを配置する
MongoDBモデルのVoyage AIを使用して予測するには、オンライン推論用のプライベートエンドポイントにそれを配置する必要があります。配置は、低レイテンシと高スループットのオンライン予測のモデルに物理リソースを関連付けます。1 つのエンドポイントとなる接続されたデバイスに複数のモデルを配置することも、同じモデルを複数のエンドポイントとなる接続されたデバイスに配置することもできます。
モデルを配置するときは、次のオプションを考慮してください。
エンドポイントとなる接続されたデバイスのロケーション
モデルコンテナ
モデルの実行に必要な計算リソース
モデルを配置すると、これらの設定を変更することはできません。配置構成を変更する必要がある場合は、モデルの配置を解除し、新しい設定で再配置する必要があります。
Voyage AIモデルには専用のパブリック エンドポイントとなる接続されたデバイスが必要です。詳しくは、Google Cloud Vertex AIドキュメントの「 パブリックエンドポイントの作成 」を参照してください。
コンソールを使用して、Google Cloud Vertex AIにモデルを配置するには次のようにします。
モデルを見つけます。
Model Garden コンソールにGoし、Search Modelsフィールドで「Voyage」を検索すると、MongoDBモデル別のVoyage AIのリストが表示されます。
モデルを有効にし、契約を受け入れます。
[Enable をクリックします。MongoDB Marketplace 終了ユーザー契約が開きます。契約を検討して受け入れて、モデルを有効にし、必要な商用使用ライセンスを取得します。
配置オプションを検討します。
契約に同意すると、モデルページには次のオプションが表示されます。
Deploy a model: モデルをモデル レジストリに保存し、Google Cloud のエンドポイントとなる接続されたデバイスに配置します。コンソールを使用して配置するには、次の手順に進みます。
Create an Open Notebook for Voyage Embedding Models Family: コラボレーション環境でモデルを微調整してカスタマイズし、最適なコストとパフォーマンスを実現するようにモデルを組み合わせて使用できます。Vertex AI Notebook Samples for Voyage AIのVertex AIノートブックのサンプルを参照してください。
View Code: 配置してモデルを使用するためのコード サンプルを表示します。コードを使用してプログラムによって配置するには、コードを使用した配置を参照してください。
配置フォームに入力します。
配置オプションを検討および編集できるフォームが開きます。Vertex AI は、モデルに最適化されたデフォルト設定を提供しますが、必要に応じてカスタマイズすることもできます。例、マシンタイプ、CPU タイプ、およびレプリカの数を選択できます。次の例は、 v提供-4モデルのデフォルト設定を示していますが、これらは変更される可能性があるため、配置する前に設定を慎重に確認してください。
フィールド | 説明 |
|---|---|
Resource ID | ドロップダウン メニューから [] を選択します(事前選択されています)。 |
Model Name | ドロップダウン メニューから [] を選択します(事前選択されています)。 |
Region | 目的のリージョンを選択します( |
Endpoint name | エンドポイントとなる接続されたデバイスの名前を指定します( |
Serving spec | マシンタイプを選択します( |
Accelerator type | CPU タイプ( |
Accelerator count | CPU の数を指定します(例: |
Replica count | レプリカの最小数と最大数を指定します( |
Reservation type | 予約タイプを選択します( |
VM provisioning model | プロビジョニングモデルを選択します( |
Endpoint access | Public (Dedicated endpoint) を選択します。 |
コードを使用した配置
モデルの詳細ページから View Code を選択した場合は、Vertex AI SDK を使用してプログラムによってモデルを配置できます。このアプローチでは、コードを通じて配置構成を完全に制御できます。
For more information about the Google Cloud Vertex AI SDK, see the Python用の Vertex AI SDK ドキュメントを参照してください。
注意
このセクションのコード例は voyage-4 モデルに該当し、変更される可能性があります。最新のコード例については、モデル ツリー内のモデルの ページにある [View Code]タブを参照してください。他の Voyage AIモデルの場合、コードは同様ですが、モデル固有の詳細については、モデル ツリーのそのモデルのページを確認してください。
コードを使用してモデルを配置するには、次の手順に従います。
エンドポイントとなる接続されたデバイスに配置します。
新しいモデルを配置するか、既存のエンドポイントを使用するかを選択します。
# Choose whether to deploy a new model or use an existing endpoint: deployment_option = "deploy_new" # ["deploy_new", "use_existing"] # If using existing endpoint, provide the endpoint ID: ENDPOINT_ID = "" # {type:"string"} if deployment_option == "deploy_new": print("Deploying new model...") endpoint = model.deploy( machine_type="a3-highgpu-1g", accelerator_type="NVIDIA_H100_80GB", accelerator_count=1, accept_eula=True, use_dedicated_endpoint=True, ) print(f"Endpoint deployed: {endpoint.display_name}") print(f"Endpoint resource name: {endpoint.resource_name}") else: if not ENDPOINT_ID: raise ValueError("Please provide an ENDPOINT_ID when using existing endpoint") from google.cloud import aiplatform print(f"Connecting to existing endpoint: {ENDPOINT_ID}") endpoint = aiplatform.Endpoint( endpoint_name=f"projects/{PROJECT_ID}/locations/{LOCATION}/endpoints/{ENDPOINT_ID}" ) print(f"Using endpoint: {endpoint.display_name}") print(f"Endpoint resource name: {endpoint.resource_name}")
重要
Voyage AIモデルには専用のパブリック エンドポイントが必要なため、use_dedicated_endpoint を True に設定します。
Vertex AI は管理対象のエンドポイントにモデルを配置します。このエンドポイントにアクセスすると、Google Cloud コンソールまたは Vertex AI APIを通じてオンライン推論またはバッチする推論を行うことができます。
詳細については、Google Cloud Vertex AIドキュメントの「エンドポイントにモデルをデプロイする」を参照してください。
予測を行います。
配置後は、Vertex AIエンドポイントを使用して予測を行うことができます。
すべてのエンドポイントパラメーターと予測オプションについては、埋め込みと再ランク付けAPI の概要 を参照してください。
import json # Multiple texts to embed texts = [ "Machine learning enables computers to learn from data.", "Natural language processing helps computers understand human language.", "Computer vision allows machines to interpret visual information.", "Deep learning uses neural networks with multiple layers." ] # Prepare the batch request and make invoke call body = { "input": texts, "output_dimension": 1024, "input_type": "document" } response = endpoint.invoke( request_path="/embeddings", body=json.dumps(body).encode("utf-8"), headers={"Content-Type": "application/json"} ) # Extract embeddings result = response.json() embeddings = [item["embedding"] for item in result["data"]] print(f"Number of texts embedded: {len(embeddings)}") print(f"Embedding dimension: {len(embeddings[0])}") print(f"\nFirst embedding (first 5 values): {embeddings[0][:5]}") print(f"Second embedding (first 5 values): {embeddings[1][:5]}")
モデルの配置を解除し、エンドポイントとなる接続されたデバイスを削除する
配置されたモデルとそのエンドポイントを削除するには:
エンドポイントとなる接続されたデバイスからモデルを配置解除します。
必要に応じて、エンドポイントとなる接続されたデバイス自体を削除します。
詳細な手順については、Google Cloud Vertex AIドキュメントのモデルの配置を解除し、エンドポイントを削除するを参照してください。
重要
エンドポイントを削除できるのは、すべてのモデルがエンドポイントから解除された後にのみです。モデルの配置を解除し、エンドポイントを削除すると、そのエンドポイントのすべての推論サービスと請求が停止されます。