Reasoning Engine API は、生成 AI アプリケーションのカスタマイズされたエージェント ワークフローにマネージド ランタイムを提供します。LangChain などのオーケストレーション フレームワークを使用してアプリケーションを作成し、Reasoning Engine でデプロイできます。このサービスには、Vertex AI インテグレーションのセキュリティ、プライバシー、オブザーバビリティ、拡張性のメリットがすべて備わっています。
Reasoning Engine の概念については、アプリケーションをデプロイするをご覧ください。
制限事項
- Reasoning Engine API は、Python オーケストレーション フレームワークのみをサポートしています。
- Reasoning Engine API は
us-central1
リージョンでのみサポートされています。
構文の例
Reasoning Engine リソースを作成して登録するための構文。
Python
class SimpleAdditionApp: def query() -> str: """ ... """ return ... reasoning_engine = reasoning_engines.ReasoningEngine.create( SimpleAdditionApp(), display_name="", description="", requirements=[...], extra_packages=[...], )
パラメータ リスト
パラメータ | |
---|---|
display_name |
必須:
|
description |
省略可:
|
spec |
必須:
|
package_spec |
必須: ユーザーが指定したパッケージ仕様(pickle 化オブジェクトやパッケージ要件など)。 |
class_methods |
省略可: オブジェクト クラス メソッドの宣言。 |
PackageSpec
PackageSpec には、OpenAPI YAML ファイルを格納する Cloud Storage URI への参照が含まれています。
パラメータ | |
---|---|
pickle_object_gcs_uri |
省略可: pickle 化 Python オブジェクトの Cloud Storage URI。 |
dependency_files_gcs_uri |
省略可:
|
requirements_gcs_uri |
省略可:
|
python_version |
省略可: Python のバージョン。サポートされているバージョンには、Python |
QueryReasoningEngine
パラメータ | |
---|---|
input |
|
例
基本的なアプリ構成をデプロイする
次の例では、2 つの整数を加算するアプリケーションと、Reasoning Engine を搭載したリモートアプリを使用します。
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
高度なアプリ構成をデプロイする
これは、LangChain のチェーン、プロンプト テンプレート、Gemini API を使用する高度な例です。
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
Reasoning Engine にクエリを実行する
Reasoning Engine にクエリを実行します。
この例では、基本的なアプリ構成の例をデプロイするの SimpleAdditionApp
クラスを使用します。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際のプロジェクト ID。
- LOCATION: リクエストを処理するリージョン。必ず
us-central1
を指定します。 - REASONING_ENGINE_ID: Reasoning Engine の ID。
- INPUT:
protobuf.struct:
input
内の引数は、基本的なアプリ構成をデプロイするで定義されたdef query(self, question: str)
メソッド内の引数と一致している必要があります。
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID:query
リクエストの本文(JSON):
{ "input": { INPUT } }
リクエストを送信するには、次のいずれかのオプションを選択します。
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/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID:query"
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/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID:query" | Select-Object -Expand Content
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
Reasoning Engine を一覧表示する
プロジェクト内の Reasoning Engine を一覧表示します。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際のプロジェクト ID。
- PROJECT_ID: 実際のプロジェクト ID。
- LOCATION: リクエストを処理するリージョン。必ず
us-central1
を指定します。
HTTP メソッドと URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
次のコマンドを実行します。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines"
PowerShell
次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines" | Select-Object -Expand Content
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
Reasoning Engine を取得する
Reasoning Engine の詳細を取得します。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際のプロジェクト ID。
- PROJECT_ID: 実際のプロジェクト ID。
- LOCATION: リクエストを処理するリージョン。必ず
us-central1
を指定します。 - REASONING_ENGINE_ID: Reasoning Engine の ID。
HTTP メソッドと URL:
GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
次のコマンドを実行します。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID"
PowerShell
次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID" | Select-Object -Expand Content
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
Reasoning Engine を削除する
Reasoning Engine を削除します。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際のプロジェクト ID。
- LOCATION: リクエストを処理するリージョン。必ず
us-central1
を指定します。 - REASONING_ENGINE_ID: Reasoning Engine の ID。
HTTP メソッドと URL:
DELETE https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
次のコマンドを実行します。
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID"
PowerShell
次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/REASONING_ENGINE_ID" | Select-Object -Expand Content
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
次のステップ
- Vertex AI クライアント ライブラリの使用方法について学習する。