Reasoning Engine API 为生成式 AI 应用中的自定义代理工作流提供托管式运行时。您可以使用 LangChain 等编排框架创建应用,并使用 Reasoning Engine 进行部署。此服务具有 Vertex AI 集成的所有安全性、隐私性、可观测性和可伸缩性优势。
如需详细了解 Reasoning Engine 的概念性信息,请参阅部署应用。
局限性
- Reasoning Engine API 仅支持 Python 编排框架。
- 仅
us-central1
区域支持 Reasoning Engine API。
示例语法
用于创建和注册推理引擎资源的语法。
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 |
必需: 用户提供的软件包规范,例如序列化的对象和软件包要求。 |
class_methods |
可选: 对象类方法的声明。 |
PackageSpec
PackageSpec 包含对存储 OpenAPI YAML 文件的 Cloud Storage URI 的引用。
参数 | |
---|---|
pickle_object_gcs_uri |
可选: 序列化的 Python 对象的 Cloud Storage URI。 |
dependency_files_gcs_uri |
可选: 扩展名为 |
requirements_gcs_uri |
可选:
|
python_version |
可选: Python 版本。支持的版本包括 Python |
QueryReasoningEngine
参数 | |
---|---|
input |
|
示例
部署基本应用配置
以下示例使用了一个将两个整数相加的应用和一个带有 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
查询推理引擎。
此示例使用的是部署基本应用配置示例中的 SimpleAdditionApp
类。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的项目 ID。
- LOCATION:处理请求的区域。必须为
us-central1
。 - REASONING_ENGINE_ID:推理引擎的 ID。
- INPUT:
protobuf.struct:
input
中的参数应与部署基本应用配置期间定义的def query(self, question: str)
方法内的参数相匹配。
HTTP 方法和网址:
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
列出项目中的推理引擎。
REST
在使用任何请求数据之前,请先进行以下替换:
HTTP 方法和网址:
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
获取推理引擎的详细信息。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的项目 ID。
- PROJECT_ID:您的项目 ID。
- LOCATION:处理请求的区域。必须为
us-central1
。 - REASONING_ENGINE_ID:推理引擎的 ID。
HTTP 方法和网址:
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
删除推理引擎。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的项目 ID。
- LOCATION:处理请求的区域。必须为
us-central1
。 - REASONING_ENGINE_ID:推理引擎的 ID。
HTTP 方法和网址:
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 客户端库。