Class FunctionTool
-
- All Implemented Interfaces:
public final class FunctionTool
Defines a function in your own code the model can choose to call. Learn more about function calling.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public final class
FunctionTool.Builder
A builder for FunctionTool.
public final class
FunctionTool.Parameters
A JSON schema object describing the parameters of the function.
-
Method Summary
Modifier and Type Method Description final String
name()
The name of the function to call. final FunctionTool.Parameters
parameters()
A JSON schema object describing the parameters of the function. final Boolean
strict()
Whether to enforce strict parameter validation. final JsonValue
_type()
The type of the function tool. final Optional<String>
description()
A description of the function. final JsonField<String>
_name()
Returns the raw JSON value of name. final JsonField<FunctionTool.Parameters>
_parameters()
Returns the raw JSON value of parameters. final JsonField<Boolean>
_strict()
Returns the raw JSON value of strict. final JsonField<String>
_description()
Returns the raw JSON value of description. final Map<String, JsonValue>
_additionalProperties()
final FunctionTool.Builder
toBuilder()
final FunctionTool
validate()
final Boolean
isValid()
Boolean
equals(Object other)
Integer
hashCode()
String
toString()
final static FunctionTool.Builder
builder()
Returns a mutable builder for constructing an instance of FunctionTool. -
-
Method Detail
-
parameters
final FunctionTool.Parameters parameters()
A JSON schema object describing the parameters of the function.
-
_type
final JsonValue _type()
The type of the function tool. Always
function
.Expected to always return the following:
JsonValue.from("function")
However, this method can be useful for debugging and logging (e.g. if the server responded with an unexpected value).
-
description
final Optional<String> description()
A description of the function. Used by the model to determine whether or not to call the function.
-
_name
final JsonField<String> _name()
Returns the raw JSON value of name.
Unlike name, this method doesn't throw if the JSON field has an unexpected type.
-
_parameters
final JsonField<FunctionTool.Parameters> _parameters()
Returns the raw JSON value of parameters.
Unlike parameters, this method doesn't throw if the JSON field has an unexpected type.
-
_strict
final JsonField<Boolean> _strict()
Returns the raw JSON value of strict.
Unlike strict, this method doesn't throw if the JSON field has an unexpected type.
-
_description
final JsonField<String> _description()
Returns the raw JSON value of description.
Unlike description, this method doesn't throw if the JSON field has an unexpected type.
-
_additionalProperties
final Map<String, JsonValue> _additionalProperties()
-
toBuilder
final FunctionTool.Builder toBuilder()
-
validate
final FunctionTool validate()
-
builder
final static FunctionTool.Builder builder()
Returns a mutable builder for constructing an instance of FunctionTool.
The following fields are required:
.name() .parameters() .strict()
-
-
-
-