Class FunctionDeclaration.Builder

java.lang.Object
com.google.genai.types.FunctionDeclaration.Builder
Enclosing class:
FunctionDeclaration

public abstract static class FunctionDeclaration.Builder extends Object
Builder for FunctionDeclaration.
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • behavior

      public abstract FunctionDeclaration.Builder behavior(Behavior behavior)
      Setter for behavior.

      behavior: Defines the function behavior.

    • behavior

      @CanIgnoreReturnValue public FunctionDeclaration.Builder behavior(Behavior.Known knownType)
      Setter for behavior given a known enum.

      behavior: Defines the function behavior.

    • behavior

      @CanIgnoreReturnValue public FunctionDeclaration.Builder behavior(String behavior)
      Setter for behavior given a string.

      behavior: Defines the function behavior.

    • description

      public abstract FunctionDeclaration.Builder description(String description)
      Setter for description.

      description: Optional. Description and purpose of the function. Model uses it to decide how and whether to call the function.

    • name

      public abstract FunctionDeclaration.Builder name(String name)
      Setter for name.

      name: Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots and dashes, with a maximum length of 64.

    • parameters

      public abstract FunctionDeclaration.Builder parameters(Schema parameters)
      Setter for parameters.

      parameters: Optional. Describes the parameters to this function in JSON Schema Object format. Reflects the Open API 3.03 Parameter Object. string Key: the name of the parameter. Parameter names are case sensitive. Schema Value: the Schema defining the type used for the parameter. For function with no parameters, this can be left unset. Parameter names must start with a letter or an underscore and must only contain chars a-z, A-Z, 0-9, or underscores with a maximum length of 64. Example with 1 required and 1 optional parameter: type: OBJECT properties: param1: type: STRING param2: type: INTEGER required: - param1

    • parameters

      public FunctionDeclaration.Builder parameters(Schema.Builder parametersBuilder)
      Setter for parameters builder.

      parameters: Optional. Describes the parameters to this function in JSON Schema Object format. Reflects the Open API 3.03 Parameter Object. string Key: the name of the parameter. Parameter names are case sensitive. Schema Value: the Schema defining the type used for the parameter. For function with no parameters, this can be left unset. Parameter names must start with a letter or an underscore and must only contain chars a-z, A-Z, 0-9, or underscores with a maximum length of 64. Example with 1 required and 1 optional parameter: type: OBJECT properties: param1: type: STRING param2: type: INTEGER required: - param1

    • parametersJsonSchema

      public abstract FunctionDeclaration.Builder parametersJsonSchema(Object parametersJsonSchema)
      Setter for parametersJsonSchema.

      parametersJsonSchema: Optional. Describes the parameters to the function in JSON Schema format. The schema must describe an object where the properties are the parameters to the function. For example: ``` { "type": "object", "properties": { "name": { "type": "string" }, "age": { "type": "integer" } }, "additionalProperties": false, "required": ["name", "age"], "propertyOrdering": ["name", "age"] } ``` This field is mutually exclusive with `parameters`.

    • response

      public abstract FunctionDeclaration.Builder response(Schema response)
      Setter for response.

      response: Optional. Describes the output from this function in JSON Schema format. Reflects the Open API 3.03 Response Object. The Schema defines the type used for the response value of the function.

    • response

      public FunctionDeclaration.Builder response(Schema.Builder responseBuilder)
      Setter for response builder.

      response: Optional. Describes the output from this function in JSON Schema format. Reflects the Open API 3.03 Response Object. The Schema defines the type used for the response value of the function.

    • responseJsonSchema

      public abstract FunctionDeclaration.Builder responseJsonSchema(Object responseJsonSchema)
      Setter for responseJsonSchema.

      responseJsonSchema: Optional. Describes the output from this function in JSON Schema format. The value specified by the schema is the response value of the function. This field is mutually exclusive with `response`.

    • build

      public abstract FunctionDeclaration build()