Tool class final

Tool details that the model may use to generate response.

A Tool is a piece of code that enables the system to interact with external systems to perform an action, or set of actions, outside of knowledge and scope of the model. A Tool object should contain exactly one type of Tool (e.g FunctionDeclaration, Retrieval or GoogleSearchRetrieval).

Inheritance

Constructors

Tool({List<FunctionDeclaration> functionDeclarations = const [], Retrieval? retrieval, Tool_GoogleSearch? googleSearch, GoogleSearchRetrieval? googleSearchRetrieval, GoogleMaps? googleMaps, EnterpriseWebSearch? enterpriseWebSearch, Tool_CodeExecution? codeExecution, UrlContext? urlContext, Tool_ComputerUse? computerUse})
Tool.fromJson(Object? j)
factory

Properties

codeExecution Tool_CodeExecution?
Optional. CodeExecution tool type. Enables the model to execute code as part of generation.
final
computerUse Tool_ComputerUse?
Optional. Tool to support the model interacting directly with the computer. If enabled, it automatically populates computer-use specific Function Declarations.
final
enterpriseWebSearch EnterpriseWebSearch?
Optional. Tool to support searching public web data, powered by Vertex AI Search and Sec4 compliance.
final
functionDeclarations List<FunctionDeclaration>
Optional. Function tool type. One or more function declarations to be passed to the model along with the current user query. Model may decide to call a subset of these functions by populating FunctionCall in the response. User should provide a FunctionResponse for each function call in the next turn. Based on the function responses, Model will generate the final response back to the user. Maximum 128 function declarations can be provided.
final
googleMaps GoogleMaps?
Optional. GoogleMaps tool type. Tool to support Google Maps in Model.
final
googleSearch Tool_GoogleSearch?
Optional. GoogleSearch tool type. Tool to support Google Search in Model. Powered by Google.
final
googleSearchRetrieval GoogleSearchRetrieval?
Optional. GoogleSearchRetrieval tool type. Specialized retrieval tool that is powered by Google search.
final
hashCode int
The hash code for this object.
no setterinherited
qualifiedName String
The fully qualified name of this message, i.e., google.protobuf.Duration or google.rpc.ErrorInfo.
finalinherited
retrieval Retrieval?
Optional. Retrieval tool type. System will always execute the provided retrieval tool(s) to get external knowledge to answer the prompt. Retrieval results are presented to the model for generation.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
urlContext UrlContext?
Optional. Tool to support URL context retrieval.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() Object
override
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited

Constants

fullyQualifiedName → const String