VertexAiSearchTool
A built-in tool using Vertex AI Search.
This tool can be configured with either a dataStoreId (the Vertex AI search data store resource ID) or a searchEngineId (the Vertex AI search engine resource ID).
Properties
When true, allows this built-in tool to be used alongside other tools: it is exposed as a function tool (see VertexAiSearchAgentTool) since built-in tools cannot otherwise be combined with other tools in a single request.
The custom metadata of the tool.
The Vertex AI search data store resource ID in the format of projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}.
Specifications that define the specific DataStores to be searched. It should only be set if engine is used.
The description of the tool.
Whether the tool's final result will be delivered out-of-band. When true, the framework marks the call as long-running and uses the tool's return value as the function-response payload. Returning Unit means "no response yet": the FR event is suppressed so the function-call event (which carries the call id in longRunningToolIds and is thus the turn's final response) ends the turn without re-invoking the model. A non-Unit return -- including an explicit empty Map -- is treated as a real response and emitted. (Unit suppression aligns with Python; Java instead always emits {}.) The longRunningToolIds id also drives the resumable-mode pause gate so the invocation can be resumed later via a user-injected function-response.
The maximum number of results to return.
The Vertex AI search engine resource ID in the format of projects/{project}/locations/{location}/collections/{collection}/engines/{engine}.
Functions
Returns the underlying function declaration.
Processes the LLM request before it is sent.