Class: OpenAI::Resources::Beta::Threads Deprecated

Inherits:
Object
  • Object
show all
Defined in:
lib/openai/resources/beta/threads.rb,
lib/openai/resources/beta/threads/runs.rb,
lib/openai/resources/beta/threads/messages.rb,
lib/openai/resources/beta/threads/runs/steps.rb

Overview

Deprecated.

The Assistants API is deprecated in favor of the Responses API

Defined Under Namespace

Classes: Messages, Runs

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Threads

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Threads.

Parameters:



253
254
255
256
257
# File 'lib/openai/resources/beta/threads.rb', line 253

def initialize(client:)
  @client = client
  @runs = OpenAI::Resources::Beta::Threads::Runs.new(client: client)
  @messages = OpenAI::Resources::Beta::Threads::Messages.new(client: client)
end

Instance Attribute Details

#messagesOpenAI::Resources::Beta::Threads::Messages (readonly)



12
13
14
# File 'lib/openai/resources/beta/threads.rb', line 12

def messages
  @messages
end

#runsOpenAI::Resources::Beta::Threads::Runs (readonly)



9
10
11
# File 'lib/openai/resources/beta/threads.rb', line 9

def runs
  @runs
end

Instance Method Details

#create(messages: nil, metadata: nil, tool_resources: nil, request_options: {}) ⇒ OpenAI::Models::Beta::Thread

Deprecated.

The Assistants API is deprecated in favor of the Responses API

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

Create a thread.

Parameters:

Returns:

See Also:



34
35
36
37
38
39
40
41
42
43
# File 'lib/openai/resources/beta/threads.rb', line 34

def create(params = {})
  parsed, options = OpenAI::Beta::ThreadCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "threads",
    body: parsed,
    model: OpenAI::Beta::Thread,
    options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options}
  )
end

#create_and_run(assistant_id: , instructions: nil, max_completion_tokens: nil, max_prompt_tokens: nil, metadata: nil, model: nil, parallel_tool_calls: nil, response_format: nil, temperature: nil, thread: nil, tool_choice: nil, tool_resources: nil, tools: nil, top_p: nil, truncation_strategy: nil, request_options: {}) ⇒ OpenAI::Models::Beta::Threads::Run

Deprecated.

The Assistants API is deprecated in favor of the Responses API

See #stream_raw for streaming counterpart.

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

Create a thread and run it in one request.

Parameters:

Returns:

See Also:



166
167
168
169
170
171
172
173
174
175
176
177
178
179
# File 'lib/openai/resources/beta/threads.rb', line 166

def create_and_run(params)
  parsed, options = OpenAI::Beta::ThreadCreateAndRunParams.dump_request(params)
  if parsed[:stream]
    message = "Please use `#stream_raw` for the streaming use case."
    raise ArgumentError.new(message)
  end
  @client.request(
    method: :post,
    path: "threads/runs",
    body: parsed,
    model: OpenAI::Beta::Threads::Run,
    options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options}
  )
end

#delete(thread_id, request_options: {}) ⇒ OpenAI::Models::Beta::ThreadDeleted

Deprecated.

The Assistants API is deprecated in favor of the Responses API

Delete a thread.

Parameters:

  • thread_id (String)

    The ID of the thread to delete.

  • request_options (OpenAI::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



111
112
113
114
115
116
117
118
# File 'lib/openai/resources/beta/threads.rb', line 111

def delete(thread_id, params = {})
  @client.request(
    method: :delete,
    path: ["threads/%1$s", thread_id],
    model: OpenAI::Beta::ThreadDeleted,
    options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h}
  )
end

#retrieve(thread_id, request_options: {}) ⇒ OpenAI::Models::Beta::Thread

Deprecated.

The Assistants API is deprecated in favor of the Responses API

Retrieves a thread.

Parameters:

  • thread_id (String)

    The ID of the thread to retrieve.

  • request_options (OpenAI::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



58
59
60
61
62
63
64
65
# File 'lib/openai/resources/beta/threads.rb', line 58

def retrieve(thread_id, params = {})
  @client.request(
    method: :get,
    path: ["threads/%1$s", thread_id],
    model: OpenAI::Beta::Thread,
    options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h}
  )
end

#streamObject

Raises:

  • (NotImplementedError)


181
182
183
# File 'lib/openai/resources/beta/threads.rb', line 181

def stream
  raise NotImplementedError.new("higher level helpers are coming soon!")
end

#stream_raw(assistant_id: , instructions: nil, max_completion_tokens: nil, max_prompt_tokens: nil, metadata: nil, model: nil, parallel_tool_calls: nil, response_format: nil, temperature: nil, thread: nil, tool_choice: nil, tool_resources: nil, tools: nil, top_p: nil, truncation_strategy: nil, request_options: {}) ⇒ OpenAI::Internal::Stream<OpenAI::Models::Beta::AssistantStreamEvent::ThreadCreated, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCreated, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunQueued, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunInProgress, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunRequiresAction, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCompleted, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunIncomplete, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunFailed, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelling, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelled, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunExpired, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCreated, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepInProgress, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepDelta, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCompleted, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepFailed, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCancelled, OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepExpired, OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCreated, OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageInProgress, OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageDelta, OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCompleted, OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageIncomplete, OpenAI::Models::Beta::AssistantStreamEvent::ErrorEvent>

Deprecated.

The Assistants API is deprecated in favor of the Responses API

See #create_and_run for non-streaming counterpart.

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

Create a thread and run it in one request.

Parameters:

Returns:

See Also:



232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
# File 'lib/openai/resources/beta/threads.rb', line 232

def stream_raw(params)
  parsed, options = OpenAI::Beta::ThreadCreateAndRunParams.dump_request(params)
  unless parsed.fetch(:stream, true)
    message = "Please use `#create_and_run` for the non-streaming use case."
    raise ArgumentError.new(message)
  end
  parsed.store(:stream, true)
  @client.request(
    method: :post,
    path: "threads/runs",
    headers: {"accept" => "text/event-stream"},
    body: parsed,
    stream: OpenAI::Internal::Stream,
    model: OpenAI::Beta::AssistantStreamEvent,
    options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options}
  )
end

#update(thread_id, metadata: nil, tool_resources: nil, request_options: {}) ⇒ OpenAI::Models::Beta::Thread

Deprecated.

The Assistants API is deprecated in favor of the Responses API

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

Modifies a thread.

Parameters:

  • thread_id (String)

    The ID of the thread to modify. Only the ‘metadata` can be modified.

  • metadata (Hash{Symbol=>String}, nil)

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

  • tool_resources (OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil)

    A set of resources that are made available to the assistant’s tools in this thre

  • request_options (OpenAI::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



87
88
89
90
91
92
93
94
95
96
# File 'lib/openai/resources/beta/threads.rb', line 87

def update(thread_id, params = {})
  parsed, options = OpenAI::Beta::ThreadUpdateParams.dump_request(params)
  @client.request(
    method: :post,
    path: ["threads/%1$s", thread_id],
    body: parsed,
    model: OpenAI::Beta::Thread,
    options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options}
  )
end