Class Tool


public abstract class Tool extends JsonSerializable
Tool details of a tool that the model may use to generate a response.
  • Constructor Details

    • Tool

      public Tool()
  • Method Details

    • functionDeclarations

      public abstract Optional<List<FunctionDeclaration>> functionDeclarations()
      List of function declarations that the tool supports.
    • retrieval

      public abstract Optional<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.
    • googleSearch

      public abstract Optional<GoogleSearch> googleSearch()
      Optional. Google Search tool type. Specialized retrieval tool that is powered by Google Search.
    • googleSearchRetrieval

      public abstract Optional<GoogleSearchRetrieval> googleSearchRetrieval()
      Optional. GoogleSearchRetrieval tool type. Specialized retrieval tool that is powered by Google search.
    • codeExecution

      public abstract Optional<ToolCodeExecution> codeExecution()
      Optional. CodeExecution tool type. Enables the model to execute code as part of generation. This field is only used by the Gemini Developer API services.
    • builder

      public static Tool.Builder builder()
      Instantiates a builder for Tool.
    • toBuilder

      public abstract Tool.Builder toBuilder()
      Creates a builder with the same values as this instance.
    • fromJson

      public static Tool fromJson(String jsonString)
      Deserializes a JSON string to a Tool object.