Class: OpenAI::Models::Beta::Assistant Deprecated

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/openai/models/beta/assistant.rb

Overview

Deprecated.

Defined Under Namespace

Classes: ToolResources

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:, created_at:, description:, instructions:, metadata:, model:, name:, tools:, response_format: nil, temperature: nil, tool_resources: nil, top_p: nil, object: :assistant) ⇒ Object

Some parameter documentations has been truncated, see OpenAI::Models::Beta::Assistant for more details.

Represents an assistant that can call the model and use tools.

Parameters:

  • The identifier, which can be referenced in API endpoints.

  • The Unix timestamp (in seconds) for when the assistant was created.

  • The description of the assistant. The maximum length is 512 characters.

  • The system instructions that the assistant uses. The maximum length is 256,000 c

  • Set of 16 key-value pairs that can be attached to an object. This can be

  • ID of the model to use. You can use the [List models](platform.openai.co

  • The name of the assistant. The maximum length is 256 characters.

  • A list of tool enabled on the assistant. There can be a maximum of 128 tools per

  • (defaults to: nil)

    Specifies the format that the model must output. Compatible with [GPT-4o](https:

  • (defaults to: nil)

    What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m

  • (defaults to: nil)

    A set of resources that are used by the assistant’s tools. The resources are spe

  • (defaults to: nil)

    An alternative to sampling with temperature, called nucleus sampling, where the

  • (defaults to: :assistant)

    The object type, which is always assistant.



# File 'lib/openai/models/beta/assistant.rb', line 128


Instance Attribute Details

#created_atInteger

The Unix timestamp (in seconds) for when the assistant was created.

Returns:



20
# File 'lib/openai/models/beta/assistant.rb', line 20

required :created_at, Integer

#descriptionString?

The description of the assistant. The maximum length is 512 characters.

Returns:



26
# File 'lib/openai/models/beta/assistant.rb', line 26

required :description, String, nil?: true

#idString

The identifier, which can be referenced in API endpoints.

Returns:



14
# File 'lib/openai/models/beta/assistant.rb', line 14

required :id, String

#instructionsString?

The system instructions that the assistant uses. The maximum length is 256,000 characters.

Returns:



33
# File 'lib/openai/models/beta/assistant.rb', line 33

required :instructions, String, nil?: true

#metadataHash{Symbol=>String}?

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.

Returns:



44
# File 'lib/openai/models/beta/assistant.rb', line 44

required :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true

#modelString

ID of the model to use. You can use the [List models](platform.openai.com/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](platform.openai.com/docs/models) for descriptions of them.

Returns:



54
# File 'lib/openai/models/beta/assistant.rb', line 54

required :model, String

#nameString?

The name of the assistant. The maximum length is 256 characters.

Returns:



60
# File 'lib/openai/models/beta/assistant.rb', line 60

required :name, String, nil?: true

#objectSymbol, :assistant

The object type, which is always assistant.

Returns:



66
# File 'lib/openai/models/beta/assistant.rb', line 66

required :object, const: :assistant

#response_formatSymbol, ...

Specifies the format that the model must output. Compatible with [GPT-4o](platform.openai.com/docs/models#gpt-4o), [GPT-4 Turbo](platform.openai.com/docs/models#gpt-4-turbo-and-gpt-4), 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](platform.openai.com/docs/guides/structured-outputs).

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 exceeded max_tokens or the conversation exceeded the max context length.

Returns:



99
# File 'lib/openai/models/beta/assistant.rb', line 99

optional :response_format, union: -> { OpenAI::Beta::AssistantResponseFormatOption }, nil?: true

#temperatureFloat?

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.

Returns:



107
# File 'lib/openai/models/beta/assistant.rb', line 107

optional :temperature, Float, nil?: true

#tool_resourcesOpenAI::Models::Beta::Assistant::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 the file_search tool requires a list of vector store IDs.

Returns:



116
# File 'lib/openai/models/beta/assistant.rb', line 116

optional :tool_resources, -> { OpenAI::Beta::Assistant::ToolResources }, nil?: true

#toolsArray<OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::FileSearchTool, OpenAI::Models::Beta::FunctionTool>

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, or function.

Returns:



74
# File 'lib/openai/models/beta/assistant.rb', line 74

required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool] }

#top_pFloat?

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.

Returns:



126
# File 'lib/openai/models/beta/assistant.rb', line 126

optional :top_p, Float, nil?: true