Class Assistant.Builder
-
- All Implemented Interfaces:
public final class Assistant.Builder
A builder for Assistant.
-
-
Method Summary
Modifier and Type Method Description final Assistant.Builder
id(String id)
The identifier, which can be referenced in API endpoints. final Assistant.Builder
id(JsonField<String> id)
The identifier, which can be referenced in API endpoints. final Assistant.Builder
createdAt(Long createdAt)
The Unix timestamp (in seconds) for when the assistant was created. final Assistant.Builder
createdAt(JsonField<Long> createdAt)
The Unix timestamp (in seconds) for when the assistant was created. final Assistant.Builder
description(String description)
The description of the assistant. final Assistant.Builder
description(Optional<String> description)
The description of the assistant. final Assistant.Builder
description(JsonField<String> description)
The description of the assistant. final Assistant.Builder
instructions(String instructions)
The system instructions that the assistant uses. final Assistant.Builder
instructions(Optional<String> instructions)
The system instructions that the assistant uses. final Assistant.Builder
instructions(JsonField<String> instructions)
The system instructions that the assistant uses. final Assistant.Builder
metadata(Metadata metadata)
Set of 16 key-value pairs that can be attached to an object. final Assistant.Builder
metadata(Optional<Metadata> metadata)
Set of 16 key-value pairs that can be attached to an object. final Assistant.Builder
metadata(JsonField<Metadata> metadata)
Set of 16 key-value pairs that can be attached to an object. final Assistant.Builder
model(String model)
ID of the model to use. final Assistant.Builder
model(JsonField<String> model)
ID of the model to use. final Assistant.Builder
name(String name)
The name of the assistant. final Assistant.Builder
name(Optional<String> name)
The name of the assistant. final Assistant.Builder
name(JsonField<String> name)
The name of the assistant. final Assistant.Builder
object_(JsonValue object_)
The object type, which is always assistant
.final Assistant.Builder
tools(List<AssistantTool> tools)
A list of tool enabled on the assistant. final Assistant.Builder
tools(JsonField<List<AssistantTool>> tools)
A list of tool enabled on the assistant. final Assistant.Builder
addTool(AssistantTool tool)
A list of tool enabled on the assistant. final Assistant.Builder
addTool(CodeInterpreterTool codeInterpreter)
A list of tool enabled on the assistant. final Assistant.Builder
addTool(FileSearchTool fileSearch)
A list of tool enabled on the assistant. final Assistant.Builder
addTool(FunctionTool function)
A list of tool enabled on the assistant. final Assistant.Builder
addFunctionTool(FunctionDefinition function)
A list of tool enabled on the assistant. final Assistant.Builder
responseFormat(AssistantResponseFormatOption responseFormat)
Specifies the format that the model must output. final Assistant.Builder
responseFormat(Optional<AssistantResponseFormatOption> responseFormat)
Specifies the format that the model must output. final Assistant.Builder
responseFormat(JsonField<AssistantResponseFormatOption> responseFormat)
Specifies the format that the model must output. final Assistant.Builder
responseFormat(ResponseFormatText responseFormatText)
Specifies the format that the model must output. final Assistant.Builder
responseFormat(ResponseFormatJsonObject responseFormatJsonObject)
Specifies the format that the model must output. final Assistant.Builder
responseFormat(ResponseFormatJsonSchema responseFormatJsonSchema)
Specifies the format that the model must output. final Assistant.Builder
responseFormatAuto()
auto
is the default valuefinal Assistant.Builder
temperature(Double temperature)
What sampling temperature to use, between 0 and 2. final Assistant.Builder
temperature(Double temperature)
What sampling temperature to use, between 0 and 2. final Assistant.Builder
temperature(Optional<Double> temperature)
What sampling temperature to use, between 0 and 2. final Assistant.Builder
temperature(JsonField<Double> temperature)
What sampling temperature to use, between 0 and 2. final Assistant.Builder
toolResources(Assistant.ToolResources toolResources)
A set of resources that are used by the assistant's tools. final Assistant.Builder
toolResources(Optional<Assistant.ToolResources> toolResources)
A set of resources that are used by the assistant's tools. final Assistant.Builder
toolResources(JsonField<Assistant.ToolResources> toolResources)
A set of resources that are used by the assistant's tools. final Assistant.Builder
topP(Double topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. final Assistant.Builder
topP(Double topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. final Assistant.Builder
topP(Optional<Double> topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. final Assistant.Builder
topP(JsonField<Double> topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. final Assistant.Builder
additionalProperties(Map<String, JsonValue> additionalProperties)
final Assistant.Builder
putAdditionalProperty(String key, JsonValue value)
final Assistant.Builder
putAllAdditionalProperties(Map<String, JsonValue> additionalProperties)
final Assistant.Builder
removeAdditionalProperty(String key)
final Assistant.Builder
removeAllAdditionalProperties(Set<String> keys)
final Assistant
build()
-
-
Method Detail
-
id
final Assistant.Builder id(String id)
The identifier, which can be referenced in API endpoints.
-
id
final Assistant.Builder id(JsonField<String> id)
The identifier, which can be referenced in API endpoints.
-
createdAt
final Assistant.Builder createdAt(Long createdAt)
The Unix timestamp (in seconds) for when the assistant was created.
-
createdAt
final Assistant.Builder createdAt(JsonField<Long> createdAt)
The Unix timestamp (in seconds) for when the assistant was created.
-
description
final Assistant.Builder description(String description)
The description of the assistant. The maximum length is 512 characters.
-
description
final Assistant.Builder description(Optional<String> description)
The description of the assistant. The maximum length is 512 characters.
-
description
final Assistant.Builder description(JsonField<String> description)
The description of the assistant. The maximum length is 512 characters.
-
instructions
final Assistant.Builder instructions(String instructions)
The system instructions that the assistant uses. The maximum length is 256,000 characters.
-
instructions
final Assistant.Builder instructions(Optional<String> instructions)
The system instructions that the assistant uses. The maximum length is 256,000 characters.
-
instructions
final Assistant.Builder instructions(JsonField<String> instructions)
The system instructions that the assistant uses. The maximum length is 256,000 characters.
-
metadata
final Assistant.Builder metadata(Metadata metadata)
Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard.
Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.
-
metadata
final Assistant.Builder metadata(Optional<Metadata> metadata)
Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard.
Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.
-
metadata
final Assistant.Builder metadata(JsonField<Metadata> metadata)
Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard.
Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.
-
model
final Assistant.Builder model(String model)
ID of the model to use. You can use the List models API to see all of your available models, or see our Model overview for descriptions of them.
-
model
final Assistant.Builder model(JsonField<String> model)
ID of the model to use. You can use the List models API to see all of your available models, or see our Model overview for descriptions of them.
-
name
final Assistant.Builder name(String name)
The name of the assistant. The maximum length is 256 characters.
-
name
final Assistant.Builder name(Optional<String> name)
The name of the assistant. The maximum length is 256 characters.
-
name
final Assistant.Builder name(JsonField<String> name)
The name of the assistant. The maximum length is 256 characters.
-
object_
final Assistant.Builder object_(JsonValue object_)
The object type, which is always
assistant
.
-
tools
final Assistant.Builder tools(List<AssistantTool> tools)
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types
code_interpreter
,file_search
, orfunction
.
-
tools
final Assistant.Builder tools(JsonField<List<AssistantTool>> tools)
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types
code_interpreter
,file_search
, orfunction
.
-
addTool
final Assistant.Builder addTool(AssistantTool tool)
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types
code_interpreter
,file_search
, orfunction
.
-
addTool
final Assistant.Builder addTool(CodeInterpreterTool codeInterpreter)
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types
code_interpreter
,file_search
, orfunction
.
-
addTool
final Assistant.Builder addTool(FileSearchTool fileSearch)
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types
code_interpreter
,file_search
, orfunction
.
-
addTool
final Assistant.Builder addTool(FunctionTool function)
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types
code_interpreter
,file_search
, orfunction
.
-
addFunctionTool
final Assistant.Builder addFunctionTool(FunctionDefinition function)
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types
code_interpreter
,file_search
, orfunction
.
-
responseFormat
final Assistant.Builder responseFormat(AssistantResponseFormatOption responseFormat)
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 * Turbo, and all GPT-3.5 Turbo models since
gpt-3.5-turbo-1106
.Setting to
{ "type": "json_schema", "json_schema": {...} }
enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide.Setting to
{ "type": "json_object" }
enables JSON mode, which ensures the message the model generates is valid JSON.Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if
finish_reason="length"
, which indicates the generation exceededmax_tokens
or the conversation exceeded the max context length.
-
responseFormat
final Assistant.Builder responseFormat(Optional<AssistantResponseFormatOption> responseFormat)
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 * Turbo, and all GPT-3.5 Turbo models since
gpt-3.5-turbo-1106
.Setting to
{ "type": "json_schema", "json_schema": {...} }
enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide.Setting to
{ "type": "json_object" }
enables JSON mode, which ensures the message the model generates is valid JSON.Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if
finish_reason="length"
, which indicates the generation exceededmax_tokens
or the conversation exceeded the max context length.
-
responseFormat
final Assistant.Builder responseFormat(JsonField<AssistantResponseFormatOption> responseFormat)
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 * Turbo, and all GPT-3.5 Turbo models since
gpt-3.5-turbo-1106
.Setting to
{ "type": "json_schema", "json_schema": {...} }
enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide.Setting to
{ "type": "json_object" }
enables JSON mode, which ensures the message the model generates is valid JSON.Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if
finish_reason="length"
, which indicates the generation exceededmax_tokens
or the conversation exceeded the max context length.
-
responseFormat
final Assistant.Builder responseFormat(ResponseFormatText responseFormatText)
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 * Turbo, and all GPT-3.5 Turbo models since
gpt-3.5-turbo-1106
.Setting to
{ "type": "json_schema", "json_schema": {...} }
enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide.Setting to
{ "type": "json_object" }
enables JSON mode, which ensures the message the model generates is valid JSON.Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if
finish_reason="length"
, which indicates the generation exceededmax_tokens
or the conversation exceeded the max context length.
-
responseFormat
final Assistant.Builder responseFormat(ResponseFormatJsonObject responseFormatJsonObject)
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 * Turbo, and all GPT-3.5 Turbo models since
gpt-3.5-turbo-1106
.Setting to
{ "type": "json_schema", "json_schema": {...} }
enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide.Setting to
{ "type": "json_object" }
enables JSON mode, which ensures the message the model generates is valid JSON.Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if
finish_reason="length"
, which indicates the generation exceededmax_tokens
or the conversation exceeded the max context length.
-
responseFormat
final Assistant.Builder responseFormat(ResponseFormatJsonSchema responseFormatJsonSchema)
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 * Turbo, and all GPT-3.5 Turbo models since
gpt-3.5-turbo-1106
.Setting to
{ "type": "json_schema", "json_schema": {...} }
enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide.Setting to
{ "type": "json_object" }
enables JSON mode, which ensures the message the model generates is valid JSON.Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if
finish_reason="length"
, which indicates the generation exceededmax_tokens
or the conversation exceeded the max context length.
-
responseFormatAuto
final Assistant.Builder responseFormatAuto()
auto
is the default value
-
temperature
final Assistant.Builder temperature(Double temperature)
What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
-
temperature
final Assistant.Builder temperature(Double temperature)
What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
-
temperature
final Assistant.Builder temperature(Optional<Double> temperature)
What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
-
temperature
final Assistant.Builder temperature(JsonField<Double> temperature)
What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
-
toolResources
final Assistant.Builder toolResources(Assistant.ToolResources toolResources)
A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the
code_interpreter
tool requires a list of file IDs, while thefile_search
tool requires a list of vector store IDs.
-
toolResources
final Assistant.Builder toolResources(Optional<Assistant.ToolResources> toolResources)
A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the
code_interpreter
tool requires a list of file IDs, while thefile_search
tool requires a list of vector store IDs.
-
toolResources
final Assistant.Builder toolResources(JsonField<Assistant.ToolResources> toolResources)
A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the
code_interpreter
tool requires a list of file IDs, while thefile_search
tool requires a list of vector store IDs.
-
topP
final Assistant.Builder topP(Double topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
We generally recommend altering this or temperature but not both.
-
topP
final Assistant.Builder topP(Double topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
We generally recommend altering this or temperature but not both.
-
topP
final Assistant.Builder topP(Optional<Double> topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
We generally recommend altering this or temperature but not both.
-
topP
final Assistant.Builder topP(JsonField<Double> topP)
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
We generally recommend altering this or temperature but not both.
-
additionalProperties
final Assistant.Builder additionalProperties(Map<String, JsonValue> additionalProperties)
-
putAdditionalProperty
final Assistant.Builder putAdditionalProperty(String key, JsonValue value)
-
putAllAdditionalProperties
final Assistant.Builder putAllAdditionalProperties(Map<String, JsonValue> additionalProperties)
-
removeAdditionalProperty
final Assistant.Builder removeAdditionalProperty(String key)
-
removeAllAdditionalProperties
final Assistant.Builder removeAllAdditionalProperties(Set<String> keys)
-
-
-
-